1

自分のコードはこれとまったく同じです。変更された変数とテーブル名のみがここにあります。入力中の構文エラーは無視してください。元のコードは正常にコンパイルされます。Spark Dataset:作成したビューとまったく同じではないテーブルデータ

------ ------ CODE

Dataset<Row> test = sqlContext.sql("select * from test_table"); 

test.createOrReplaceTempView("temp_view_test"); 

sqlContext.sql("drop table if exist new_table"); 
sqlContext.sql("create table new_table as select * from temp_view_test"); 

//Code to print counts 

//count if dataset 
System.out.println("test count:"+test.count()); 

//count of temp view 
Dataset<Row> tempViewTestData = sqlContext.sql("select * from temp_view_test"); 
System.out.println("temp view count: "+tempViewTestData.count()); 

//count of newly created table 
Dataset<Row> newTableData = sqlContext.sql("select * from new_table"); 
System.out.println("New Table count: "+newTableData .count()); 

----- OUTPUT ----

テスト回数:9422720 一時ビュー回数:9422720 新表数:9520364

----- ----- QUESTION

新しいテーブルのカウントは一時ビューの数は異なって、なぜ私の質問です。両方のカウントを同じにするにはどうすればよいですか。

答えて

0

最後に私は解決策を得ました。それはデータセットに日本語の文字があるためでした。同様の問題が発生した場合、これを考慮する可能性があります。

関連する問題