wgtmac commented on code in PR #250:
URL: https://github.com/apache/parquet-format/pull/250#discussion_r1621008508
##########
src/main/thrift/parquet.thrift:
##########
@@ -1115,6 +1189,34 @@ union EncryptionAlgorithm {
2: AesGcmCtrV1 AES_GCM_CTR_V1
}
+/**
+ * Embedded metadata page.
+ *
+ * A metadata page is a data page used to store metadata about
+ * the data stored in the file. This is a key feature of PAR3
+ * footers which allow for deferred decoding of metadata.
+ *
+ * For common use cases the current recommendation is to use a
+ * an encoding that supported random access but implementations may choose
+ * other configuration parameters if necessary. Implementations
+ * SHOULD consider allowing configurability per page to allow for end-users
+ * to optimize size vs compute trade-offs that make sense for their use-case.
+ *
+ * Statistics for Metadata pages SHOULD NOT be written.
+ *
+ * Structs of this type should never be written in PAR1.
+ */
+struct MetadataPage {
+ // A serialized page including metadata thrift header and data.
+ 1: required binary page
+ // Optional compression applied to the page.
+ 2: optional CompressionCodec compression
+ // Number of elements stored. This is duplicated here to help in
+ // use-cases where knowing the total number of elements up front for
+ // computation would be useful.
+ 3: num_values
Review Comment:
Is it possible to add a `list<i32>` with `num_values + 1` size to indicate
the offsets to each element before compression to support random access? Or is
it supposed to use fixed-length element at all times?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]