parquet-tools SimpleRecord does not display empty fields
- 主要言語
- Java
- スター
- 3.1k
- フォーク
- 1.6k
- 平均マージ
- 3日 12時間
- マージ済み PR(30日)
- 33
説明
When using parquet-tools on a parquet file with null records the null columns are omitted from the output.
Example:
```java
scala> case class Foo(a: Int, b: String)
defined class Foo
scala> org.apache.spark.sql.SparkSession.builder.getOrCreate.createDataset((0 to 1000).map(x => Foo(1,null))).write.parquet("/tmp/foobar/")
```
Actual:
```java
☁ parquet-tools [master] ⚡ java -jar target/parquet-tools-1.10.1-SNAPSHOT.jar cat -j /tmp/foobar/part-00000-436a4d37-d82a-4771-8e7e-e4d428464675-c000.snappy.parquet | head -n5
{"a":1}
{"a":1}
{"a":1}
{"a":1}
{"a":1}
```
Expected:
```java
☁ parquet-tools [master] ⚡ java -jar target/parquet-tools-1.10.1-SNAPSHOT.jar cat -j /tmp/foobar/part-00000-436a4d37-d82a-4771-8e7e-e4d428464675-c000.snappy.parquet | head -n5
{"a":1,"b":null}
{"a":1,"b":null}
{"a":1,"b":null}
{"a":1,"b":null}
{"a":1,"b":null}
```
**Reporter**: [Nicholas Rushton](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=Nick+Rushton)
#### PRs and other links:
- [GitHub Pull Request #518](https://github.com/apache/parquet-mr/pull/518)
**Note**: *This issue was originally created as [PARQUET-1408](https://issues.apache.org/jira/browse/PARQUET-1408). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
parquet-tools の `cat -j` コマンドとその `SimpleRecord` 出力パスから始め、提供されている null フィールドの例を再現ケースとして使用します。完了の条件は、null の列を持つレコードが、それらのフィールドを存在させたまま null に設定して出力され、期待される JSON 出力と一致することです。既存の作業については Pull Request #518 を確認してください。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java
- 領域
- cli, data
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 25/100