問題タブ [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.
hadoop - 列のデータ型が「STRING」の寄木細工のハイブ テーブルを作成できません
hive-0.12 を使用しています。以下のクエリを使用して寄木細工のテーブルを正常に作成しました。
しかし、列のデータ型として「STRING」を使用すると失敗します。
Pls はここで間違っている可能性があることを提案します。
ありがとうございました。
amazon-web-services - Parquet ファイルの読み取り時にパーティションの数を制御するものは何ですか?
私のセットアップ:
2 つの Spark クラスター。EC2 に 1 つ、Amazon EMR に 1 つ。どちらも Spark 1.3.1 です。
EMR クラスターはemr-bootstrap-actionsでインストールされました。EC2 クラスターは、Spark のデフォルトの EC2 スクリプトと共にインストールされました。
コード:
12 個の Parquet ファイルを含むフォルダーを読み取り、パーティションの数を数えます
所見:
- EC2 では、このコードは 12 個のパーティションを提供します (ファイルごとに 1 つ、理にかなっています)。
- EMR では、このコードで 138 (!) 個のパーティションが得られます。
質問:
Parquet ファイルの読み取り時にパーティションの数を制御するものは何ですか?
まったく同じSparkリリースで、S3のまったく同じフォルダーを読みました。これにより、パーティショニングの発生方法を制御する構成設定がいくつかあると思われます。誰かがこれについてもっと情報を持っていますか?
洞察をいただければ幸いです。
ありがとう。
アップデート:
EMR の S3 ファイル システムの実装によって、多数のパーティションが作成されているようです ( com.amazon.ws.emr.hadoop.fs.EmrFileSystem
)。
取り外し時
(これによりcore-site.xml
、Hadoop の S3 ファイルシステムに戻ります) から、12 個のパーティションになります。
で実行するとEmrFileSystem
、次のようにパーティションの数を制御できるようです。
使用時にパーティションの数を制御するよりクリーンな方法はありEmrFileSystem
ますか?
hadoop - スキーマ ファイルを使用して、Parquet でサポートされている Hive テーブルを作成する
Clouderaのドキュメントには、「 Avro スキーマ ファイルを使用して、Avro でサポートされた Hive テーブルを作成する」簡単な方法が示されています。これはうまくいきます。Parquet でサポートされている Hive テーブルに対して同じことを行いたいのですが、この場合の関連ドキュメントには、スキーマから読み取るのではなく、すべての列タイプがリストされています。Avro データと同じように、Parquet 列をスキーマから読み取ることはできますか?
amazon-s3 - S3 の Parquet テーブルにデータを段階的に追加する
アドホック分析のために、ログ データのコピーを S3 の Parquet に保存したいと考えています。SQLContext.parquetFile()
私は主にSparkを介してParquetを使用していますが、これは and を介してテーブル全体を読み書きする操作のみを提供しているようSQLContext.saveAsParquetFile()
です。
特に S3 に保存されている場合に、まったく新しいコピーを書き込まずに既存の Parquet テーブルにデータを追加する方法はありますか?
更新用に個別のテーブルを作成できることはわかっていますが、Spark ではクエリ時に対応する DataFrame の結合を形成できますが、そのスケーラビリティについて疑問があります。
必要に応じて、Spark 以外のものを使用できます。
scala - 独自のディレクトリ内の個々の寄木細工ファイルに RDD パーティションを書き込む
各 RDD パーティションを独自のディレクトリを持つ個別の寄木細工のファイルに書き込みたいステップに苦労しています。例は次のとおりです。
この形式の利点は、これを SparkSQL で列として直接使用でき、実際のファイルでこのデータを繰り返す必要がないことです。これは、個別のパーティショニング メタデータを別の場所に保存することなく、特定のパーティションに到達するための良い方法です。
前のステップとして、多数の gzip ファイルからすべてのデータをロードし、上記のキーに基づいてパーティション分割しました。
考えられる方法は、各パーティションを個別のRDDとして取得してから書き込むことですが、良い方法は見つかりませんでした。
どんな助けでも大歓迎です。ところで、私はこのスタックに不慣れです。
sql - Scala:Spark sqlContext クエリ
ファイルには 3 つのイベント (3 列目) 01、02、03 しかありません。
スキーマは unixTimestamp|id|eventType|date1|date2|date3 です
sqlContext で、ID でデータをマージするにはどうすればよいですか? 私はID 1001にこれを期待しています:
調整が必要なクエリは次のとおりです。
r - R で Parquet を読み取り、R DataFrame に変換するにはどうすればよいですか?
R プログラミング言語でApache Parquetファイル (私の場合は Spark で生成)を処理したいと考えています。
Rリーダーは利用できますか? それとも、作業は 1 つに行われていますか?
そうでない場合、そこに到達するための最も便利な方法は何ですか? 注: Java および C++ バインディングがあります: https://github.com/apache/parquet-mr
apache-spark - Spark で同時にいくつかの寄木細工のファイルを読み取る
* (スター) を使用して、いくつかの json ファイルを同時に読み取ることができます。
寄木細工で同じことを行う方法はありますか? スターが機能しません。
json - さまざまなフィールドを持つjsonファイルでのJsonからAvroへの変換
JSON
ファイルをに変換する前に問題がありますavro format
。ただし、この場合、JSON
データには次のようなさまざまなフィールド値があります。
各エントリのフィールドが同じままであるファイルを変換する作業コードがあります。しかしavro
、スキーマ定義言語であるため、上記のデータ (さまざまなフィールドを持つ) をサポートすることはできません。
そのような場合にスキーマを使用して avro 形式に変換することさえ可能かどうか、基本的な質問がありますか? または、このタスクを達成するために使用できる他のツールはありますか?
apache-pig - Parquetloader: pig を使用して複数の parquet ファイルを読み込めません
次のエラーが表示されます: 解析中にエラーが発生しました。反復制約はより制限的です: タイプ必須のバイナリ MyTime をオプションのバイナリ MyTime にマージすることはできません。ファイルの 1 つが破損している可能性がありますが、スキップする方法がわかりません。
ありがとう