Hadoop 決定版ガイド (第 4 版) には、137 ページに段落があります。
列指向の形式は、単一の行ではなく分割された行をメモリにバッファリングする必要があるため、読み取りと書き込みに多くのメモリが必要です。また、(フラッシュ操作または同期操作を介して) 書き込みが発生するタイミングを制御することは通常不可能であるため、書き込みプロセスが失敗した場合に現在のファイルを回復できないため、列指向の形式はストリーミング書き込みには適していません。一方、シーケンス ファイルや Avro データファイルなどの行指向の形式は、ライターの障害後、最後の同期ポイントまで読み取ることができます。Flume (第 14 章を参照) が行指向のフォーマットを使用するのはこのためです。
障害が発生した場合に現在のブロックを回復できない理由がわかりません。誰かがこのステートメントに関する技術的な問題を説明できますか:
いつ書き込みが発生するかを制御することはできません (フラッシュまたは同期操作を介して)