0

私は数日前からこれを行っていましたが、例がうまくいかないか、環境問題があるようです誰かが助けることができます。クラウドストレージファイルをBigQueryテーブル/データセットに変換して後で照会する

  • 私はMac上でEclipseのネオンを持っている:

    は、ここに私が試したし、作品てきたものです。読み取ることができ https://cloud.google.com/dataflow/docs/quickstarts/quickstart-java-eclipse

だから私は、Eclipseのデータフロープロジェクトを持っている:

  • としてここにも 以下のガイドから入手できるすべてのGoogle APIのSDKをインストール: https://developers.google.com/eclipse/docs/install-eclipse-4.6
  • 私は正常にこのクイックスタートに続きますCloudStorageに書き込みます。すごいもの。

    GOAL/ISSUE

    私は今、BigQueryのデータセットに変換し、GCSからデータを取りたいです。各ファイルについて、新しいデータセットを作成したいと思います。これらの詳細は本当に重要な問題ではありませんが、Eclipse上のBigQueryやCLIツールを使用した単純なHello Worldの例が残っているため、上にすばらしいチェリーになります。実用的な例があれば分かるでしょうし、実用的なサンプルを持っている既存のドキュメンテーションへの簡単な説明もあります。私はEclipseやMavenを使ってコンパイルしていますが、Google APIベースのプロジェクトを読み込む方法はありません。

    ECLIPSE

    Eclipseで私は単にのBigQuery APIをテストするために、物事の束を試してみました:google-cloud-java-masterリポジトリをロードすることによって、新しいJavaプロジェクトをロード

    1. https://github.com/GoogleCloudPlatform/google-cloud-java

    を見つけましたEclipse Screenshot

    1. "google-cloud-examples"ディレクトリからサンプルを読み込もうとしました。これは、私がCreateTableAndLoadDataクラスを右クリックして実行することを選択すると、「選択にメインタイプが含まれていません」というエラーが表示されるため、問題が発生しているようです。主な機能があるので、私は愚かな気分になります。 java-doc-samples

      から

    GOOGLEの例は、私はその後https://github.com/GoogleCloudPlatform/java-docs-samples/blob/master/bigquery/cloud-client/src/main/java/com/example/bigquery/SimpleApp.java

    Googleドキュメントのjava-docの-サンプルと呼ばれる別のレポで実際にGoogleの独自の例を試すに移っ:https://cloud.google.com/bigquery/create-simple-app-api#bigquery-simple-app-query-java

    私はこれらをEclipseにロードしましたが、コンパイル時に大量のエラーが発生しました。 メインエラー:

    com.google.cloudは解決できませんでした。またはパッケージcom.google.cloud.examples.bigquery.snippetsが解決しませんでした。私はそれをコンパイルすることができませんでした。クラス名はちょっと違っていたので、Eclipseの自動提案でそれらを変更しようとしましたが、最後にBigQueryOptions.getDefaultInstance()が未定義のメソッドになってしまいました。 CLIで

    CLI gcloud

    私はgoogle-cloud-exmaples/...CreateTableAndLoadData.java

    mvn -X compile exec:java 
    -Dexec.mainClass=com.google.cloud.examples.bigquery.snippets.CreateTableAndLoadData  
    -Dexec.args="--project=myuniqueproject \ 
    --stagingLocation=gs://myuniquebucket/staging/ \ 
    --runner=BlockingDataflowPipelineRunner" 
    

    をコンパイルし、実行しているMVNを試してみましたが、私はこれらのエラーを取得:

    [ERROR]が上の目標を実行に失敗しましたプロジェクトgoogle-cloud-examples: はプロジェクト comの依存関係を解決できません.google.cloud:google-cloud-examples:jar:0.8.2-alpha-SNAPSHOT: 次の成果物を解決できませんでした: com.google.cloud:google-cloud:jar:0.8.2-alpha-SNAPSHOT 、 com.google.cloud:google-cloud-nio:jar:0.8.2-alpha-SNAPSHOT:できませんでした 案件を探すcom.google.cloud:google-cloud:jar:0.8.2-alpha-SNAPSHOT - > [ヘルプ1]

  • 答えて

    0

    私は今、GCSからのデータを取るBigQueryのデータセットに変換したい

    私は「あなたが意味を前提とするつもりです "であり、" データセット "ではありません。データセットはBigQueryテーブルのコレクションです。

    多くの作業を省くことができ、フェデレーションソースを使用してGCSから直接BigQueryにファイルを読み込むことができます。

    詳細情報 - >https://cloud.google.com/bigquery/external-data-sources

    +0

    同じくらい私は私の目標を達成しようとしているとして、自分自身の仕事のトンを保存するために見ていません。私の質問は、BigQuery APIを使用してGCSファイルをテーブルに移動する方法と、実際にコンパイルする例がないことです。非常に大きなデータファイルの場合、GCSファイルの更新中にBQが読み込み中にデータ損失が発生する可能性はほとんどありません。 –

    +0

    1)元の質問でファイルが変更されているとは一度も言及していませんでした。 Googleのインフラストラクチャ上で実行されているので、それでも信じられないほど高速です - > https://shinesolutions.com/2016/03/30/creating-a-serverless-etl-nirvana-using-google-bigquery/ 3)ちょうど良いコンパイルを使用します。 –

    関連する問題