Use the same default page size across different language bindings
- Dominant language
- Java
- Stars
- 3.1k
- Forks
- 1.6k
- Avg merge
- 3d 12h
- Merged PRs (30d)
- 33
Description
Currently there are many different page size recommandations/defaults in use:
- [parquet-format](https://github.com/apache/parquet-format#configurations) recommends 8 KB.
- [parquet-mr](https://github.com/apache/parquet-mr/blob/master/parquet-column/src/main/java/org/apache/parquet/column/ParquetProperties.java#L46) uses 1 MB.
- [Impala](https://github.com/apache/impala/blob/daff8eb0ca19aa612c9fc7cc2ddd647735b31266/be/src/exec/hdfs-parquet-table-writer.h#L83) uses 64 KB.
These values (and other language bindings not listed above) should be consistent.
To pick a sensible new value, we may need to do some measurements. Because of this, we shall wait for column indexes to be implemented before picking a new value.
The new default page size does not necessarily have to be a single value any more, we have several options:
- A single default page size, as before.
- Different page size defaults depending on the type.
- Using a specified number of values instead of data size (e.g., every page contains 10000 values).
**Reporter**: [Zoltan Ivanfi](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=zi) / @zivanfi
**Note**: *This issue was originally created as [PARQUET-1190](https://issues.apache.org/jira/browse/PARQUET-1190). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*
Contributor guide
No contributing guide indexed for this repository
Research direction
Review the current defaults in parquet-format and parquet-mr, including parquet-column/src/main/java/org/apache/parquet/column/ParquetProperties.java, and compare them with the Impala writer value cited in the issue. Work should wait for column indexes and measurements; done means choosing and implementing an agreed default strategy consistently across bindings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- data-engineering
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100