2017-06-27 7 views
1

とBigQueryの私はスパークでのBigQueryを使用し、私は特別なパーティションTables.likeに、このワン:パーティション表に保存するスパーク

configureBigQueryOutput(hadoopConf, 
      "test", "shade2$20170626", 
      "[{'name': 'word', 'type': 'STRING'}, {'name': 'word_count', 'type': 'INTEGER'}]"); 

をしかし、私はプログラムを実行すると、エラーが発生します。

スレッド "main"の例外java.lang.IllegalArgumentException:無効 datasetAndTableString 'test.shade2 $ 20170626';正規表現 '[a-zA-Z0-9 _] +。[a-zA-Z0-9 _] +'と一致する必要があります。 でcom.google.common.base.Preconditions.checkArgument(Preconditions.java:145) com.google.cloud.hadoop.io.bigquery.BigQueryStrings.parseTableReference(BigQueryStrings.java:55) コムで で。 com.vsoontechでgoogle.cloud.hadoop.io.bigquery.BigQueryConfiguration.configureBigQueryOutput(BigQueryConfiguration.java:238) でcom.vsoontech.bi.bq.spark.BqSparkDemo2.configureBigQueryOutput(BqSparkDemo2.java:44) 。 com.vsoontech.bi.bq.spark.Main.mainでbi.bq.spark.BqSparkDemo2.execute(BqSparkDemo2.java:66) (Main.java:10)

テーブルの日付部分を特別にしたいのなら、それを解決する何かがありますか?考える。

答えて

0

これは、最新のバージョンのbigdata-interopライブラリで修正されているようです。

参照: https://github.com/GoogleCloudPlatform/bigdata-interop/blob/master/bigquery/src/main/java/com/google/cloud/hadoop/io/bigquery/BigQueryStrings.java

「$」(パーティションの区切り文字は)テーブル参照で有効な文字として追加されました。

+0

考えてください!これは私の問題を解決します。この行為は古いバージョンの0.7.2-hadoop2をGoogleのコネクタに使用しています。私が0.8.0-hadoop2に変更すると(BigQueryStringsに "$"が含まれていることを確認してください)。できます。 –

関連する問題