ハイブパーティションとパーティションファイルは、実際の問題は、ファイル・エラー・ソリューションを読んスパークにつながる一致していません

最初の解釈の下では、歴史的な理由によるものにパーティションのハイブは、実際にそこでは、パーティションハイブの数をHDFSには、フォルダを参照してください比率と一致していない、そのようなHDFSフォルダはありません。

sparkSQLによってテーブルスパークハイブを読み込む、異常が存在することになります。

ソリューション:

ない場合1.属性外部表の属性を変更するために、表が外部表であるかどうかを確認してください。

ここでは、外部表として改正され、パーティションを削除する目的は、既存のデータを削除しないでください。必要に応じて、バックアッププロセスを作ります。

変更 テーブルのテーブル名セット tblproperties(' EXTERNAL ' = ' TRUE ');

2.異常なパーティションを削除します。

ここでは、表の途中でドロップテーブルを削除しようとしましたが、エラーを検出しました。

FAILED:実行エラー、リターンコード1  から org.apache.hadoop.hive.ql。EXEC .DDLTask。MetaException(メッセージ:無効なパーティションキー  、キー[ 年、月、日、時間、] [ 2018、]

そこでここでは、パーティションを削除するために使用しました。

変更 テーブルのテーブル名のドロップパーティション(pk_year = 2018)。

3.パーティションの修復を再作成するために、パーティションのコマンドを使用します

MSCK修復テーブルのテーブル名;

 

おすすめ

転載: www.cnblogs.com/30go/p/11414489.html