問題タブ [parquet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3252 参照

hadoop - Spark SQL が多数のシャードを含む Parquet データの書き込みを完了できない

Apache Spark SQL を使用して、S3 の json ログ データを S3 上の Parquet ファイルに etl しようとしています。私のコードは基本的に次のとおりです。

このコードは、最大 2000 個のパーティションがある場合に機能し、データの量に関係なく、5000 個以上で失敗します。通常はパーティションを合体させて許容できる数にすることができますが、これは非常に大きなデータセットであり、2000 個のパーティションでこの質問で説明されている問題に遭遇しました

これを、ec2 の R3.xlarge の spark-1.1.0 で実行しています。上記のコードを実行するために、spark-shell コンソールを使用しています。その後、SchemaRDD オブジェクトに対して重要なクエリを実行できるようにdataなったため、リソースの問題ではないようです。結果の Parquet ファイルを読み取ってクエリを実行することもできますが、サマリー ファイルがないため非常に時間がかかります。

0 投票する
0 に答える
888 参照

apache-spark - 再分割された SchemaRDD を Spark SQL で Parquet に書き込む際のエラー

セーブ Spark SQL テーブルを Parquet ファイルに書き込もうとしています。他の 問題のため、書き込む前にパーティションの数を減らす必要があります。私のコードは

これはスローします

合体ステップを実行し、使用するコードを変更するshuffle=truerepartition、同じエラーをスローすると、コードは正常に機能します。私はspark-1.1.0を使用しています。

0 投票する
1 に答える
2272 参照

amazon-s3 - S3 で >>25T SchemaRDD を Parquet 形式で保存する

非常に大きな SchemaRDD を S3 の Parquet 形式で保存しようとすると、多くの問題が発生しました。これらの問題については、すでに具体的な質問を投稿しましたが、これが本当に必要なことです。コードは次のようになります

約 2000 を超えるパーティションがある場合、または 5G を超えるパーティションがある場合、問題が発生します。これにより、この方法で処理できる SchemaRDD の最大サイズに上限が設定されます。パーティションのサイズは大きく異なり、プロセスが失敗するために必要な 5G パーティションは 1 つだけであるため、実際の制限は 1T に近くなります。

私が遭遇した特定の問題を扱う質問は、

この質問は、上記の問題のいずれかを直接解決することを必ずしも必要としない、主な目標に対する解決策があるかどうかを確認することです。


物事を蒸留するには2つの問題があります

  • 5G を超える単一のシャードを S3 に書き込むと失敗します。s3n://私の知る限り、これはバケットの組み込み制限です。バケットでは可能ですs3://が、Spark からは機能しないようでhadoop distcp、ローカル HDFS からも機能しません。

  • 数千のシャードがあると、サマリー ファイルの書き込みが失敗する傾向があります。これには複数の問題があるようです。S3 に直接書き込むと、上記のリンクされた質問でエラーが発生します。ローカル HDFS に直接書き込むと、r3.8xlarge (244G RAM) でさえ、約 5000 個のシャードがある場合に OOM エラーが発生します。これは、実際のデータ量とは無関係のようです。サマリー ファイルは、効率的なクエリに不可欠なようです。

これらの問題をまとめると、S3 の Parquet テーブルは 25T に制限されます。実際には、RDD 内でシャードのサイズが大きく異なる可能性があり、5G 制限が最大のシャードに適用されるため、実際には大幅に少なくなります。

>>25T RDD を Parquet として S3 に書き込むにはどうすればよいですか?

Spark-1.1.0 を使用しています。

0 投票する
1 に答える
7866 参照

parquet - parquet ファイルの作成時に .crc ファイルの作成を回避する方法

寄木細工のフレームワークを使用して、寄木細工のファイルを作成しています。このコンストラクターで寄木細工ライターを作成します--

parquet ファイルが作成されるたびに、それに対応する .crc ファイルもディスク上に作成されます。その .crc ファイルの作成を回避するにはどうすればよいですか? 私が設定しなければならないフラグまたは何かがありますか?

ありがとう

0 投票する
1 に答える
102 参照

parquet - 列レベルの圧縮仕様

parquet-mr では現在、デフォルトですべての列に適用される圧縮を指定できます。将来、個々の列に固有の圧縮を指定するサポートがサポートされる場合、「デフォルトの圧縮」の現在のサポートは引き続きサポートされますか、それとも廃止されますか?

ありがとう、ラビC

0 投票する
1 に答える
2008 参照

mapreduce - Parquet Fileformat を使用してスキーマ データ用の Hive (0.10) テーブルを作成する

サーバーからハイブにデータをエクスポートしたい。Java クラスの形式で 3 レベルのネストされたデータがあります。Avro Tools ReflectData を使用して avro スキーマを作成し、ReflectDatumWriter を使用して avro ファイルにデータを書き出すことができました。Hive では、テーブルを作成し、

同じデータを寄木細工の形式でエクスポートする方法があることがわかります http://blog.cloudera.com/blog/2014/05/how-to-convert-existing-data-into-parquet/

それが完了し、寄木細工のファイルに同じデータがあるとしましょう..このエクスポート寄木細工のデータを Hive で照会するにはどうすればよいですか? しかし、ハイブのスキーマを指定するにはどうすればよいですか? ネストされたスキーマ全体を使用して、ハイブに巨大なテーブル作成ステートメントを記述したくありません。スキーマの一部のメンバーに null 値を指定するにはどうすればよいですか? avro スキーマのような寄木細工のスキーマを直接作成し、create table ステートメントを使用して Hive に渡す方法はありますか?

0 投票する
2 に答える
1038 参照

hadoop - ParquetStorer を使用して整数データを格納できない

私は非常に奇妙な問題に直面しています。Pig を使用して複数列のデータ処理を行っています。Pig は、HCatalogLoader を使用して Pig スクリプトにデータをロードします。列には、複数の整数データ、文字列データ、および倍精度データが含まれます。整数型の列の 1 つ (C1 など) は、ParquetStorer を使用して保存できません。他の整数列は問題ありません。C1 列のストレージのみが失敗します。

以下はエラーです:

ParquetStorer を使用してデータを格納するエイリアスについて説明しました。列 C1 は int 型です。それでも、ParquetStorer はデータが文字列型であると不平を言い、Number への型キャストに失敗します。

どんな助けでも感謝します。