1

これがばかげた質問であることはわかっていますが、何時間もグーグルで検索しても答えが得られません。

区切り文字がどのように機能するかは、csv などのプレーン テキスト形式で簡単に理解できます。一方、ORC ではバイナリが HDFS に格納されているため、フィールドの区切り文字は何でしょうか? ORC には区切り文字がないと言われましたが、私はこのステートメントに非常に疑問を持っています。

行グループとして格納されている場合でも、各行グループの 1 つの列に対して、複数のデータ フィールドが存在する可能性があります。各フィールドは次のフィールドとどのように区別されますか? 各行は次の行からどのように区切られていますか? これを達成するための区切り文字はありますか?

コメントありがとうございます!

4

1 に答える 1

1

区切り文字なし。ストライド/ストライプを使用し、

ファイルの本体はストライプに分割されています。各ストライプは自己完結型であり、ファイルのフッターおよび Postscript と組み合わせた独自のバイトのみを使用して読み取ることができます。行がストライプの境界にまたがることがないように、各ストライプには行全体のみが含まれます。ストライプには、ストライプ内の行の一連のインデックス、データ自体、およびストライプ フッターの 3 つのセクションがあります。インデックスとデータ セクションの両方が列ごとに分割されているため、必要な列のデータのみを読み取る必要があります。

参照:ORC

于 2016-10-14T05:03:31.300 に答える