問題タブ [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.
apache-spark - Spark でより効率的に Parquet ファイルを読み込む方法 (pySpark v1.2.0)
高次元の寄木細工のファイルを読み込んでいますが、数列しか必要ありません。私の現在のコードは次のようになります。
何が起こっているかについての私のメンタル モデルは、すべてのデータをロードしてから、不要な列を捨てているというものです。私は明らかに、それらのコラムを読まないことを望んでおり、寄木細工について理解していることから、それは可能であると思われます。
したがって、2 つの質問があります。
- 私のメンタルモデルは間違っていますか?または、spark コンパイラは、上記の例の列 a、b、および c のみを読み取るほどスマートですか?
sqc.parquetFile()
データをより効率的に読み込むにはどうすればよいですか?
csv - ベスト プラクティス: 「スキーマ」/「列」を変更してデータ レコードを処理する方法
これはベスト プラクティスの質問です。
私たちのセットアップは、hdfs に (ログ) データを保存する Hadoop クラスターです。毎日 1 ファイル、csv 形式でデータを取得します。ファイルの「スキーマ」、特に列数が変更されない限り、これらのファイルに対して Hadoop で MR ジョブを実行しても問題ありません。
ただし、列が追加または削除される可能性があるという意味で、分析したいログレコードが最終的に変化するという問題に直面しています。このような状況でのベスト プラクティスを喜んで共有してくださる方がいらっしゃるかと思いました。現時点で考えられる最善の方法は、データを csv ではなく json 形式で保存することです。ただし、これにより、必要なストレージ容量が (少なくとも 2 倍に) 増加します。私たちは Apache Avro と Apache Parquet にも出会い、これについて調べ始めました。
この問題に関するアイデアやコメントは大歓迎です。
apache-pig - 豚のスクリプトがnull可能な寄木細工のデータを読み込めません
parquet 形式のデータを持つ小さなファイルを圧縮するための Pig Script を作成しようとしています。以下の行は、小さなファイルをディレクトリにロードしてから保存しようとしています。ファイルには、null 可能な複雑なネストされた構造があり、多くの が含まれていますNULL
。
次のエラーが表示されます。
私の疑いは、入力ファイルの null 値が原因であるということです。誰か助けてくれませんか?
java - KiteSDK MapReduce:寄木細工のファイルの読み込み中の EOF 例外
KitSDK DatasetKeyInputFormatを使用する Hadoop map-reduce ジョブがあります。寄木細工のファイルを読み取るように構成されています。
ジョブを実行するたびに、次の例外が発生します。
エラー: java.io.DataInputStream.readFully(DataInputStream.java:197) で java.io.EOFException が java.io.DataInputStream.readFully(DataInputStream.java:169) で parquet.hadoop.ParquetInputSplit.readArray(ParquetInputSplit.java: 304) org.apache.hadoop.io.serializer.WritableSerialization$WritableDeserializer.deserialize(WritableSerialization.java:71) で org.apache.hadoop.io.serializer で parquet.hadoop.ParquetInputSplit.readFields(ParquetInputSplit.java:263) で.WritableSerialization$WritableDeserializer.deserialize(WritableSerialization.java:42) org.apache.hadoop.mapred.MapTask.getSplitDetails(MapTask.java:372) org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:754) ) org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) で org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) at org.apache.hadoop .security.UserGroupInformation.doAs(UserGroupInformation.java:1671) at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
Hive によって作成された map-reduce ジョブによって、同じファイルを正常に読み取ることができます。つまり、正常にクエリできます。
考えられる問題を特定するために、 mapreduce のKiteSDK の例に基づいて map-reduce ジョブを作成しました。しかし、私はまだ同じ例外を受け取ります。
注: AVRO および CSV 形式は適切に機能します。
hadoop - 列のデータ型が「STRING」の寄木細工のハイブ テーブルを作成できません
hive-0.12 を使用しています。以下のクエリを使用して寄木細工のテーブルを正常に作成しました。
しかし、列のデータ型として「STRING」を使用すると失敗します。
Pls はここで間違っている可能性があることを提案します。
ありがとうございました。