O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送

BigQuery で手持ちのデータを分析したい、でもこのデータはどうやって取り込んだらいいの?という疑問を解消します。数々のデータソースから BigQuery へデータをインポートする方法を一気にご紹介します。

  • Entre para ver os comentários

[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送

  1. 1. Cloud Onr Cloud OnAir Cloud OnAir BigQuery へデータを読み込む 2019 年 3 月 14 日 放送
  2. 2. Cloud OnAir 本日は、 BigQuery へ「データを読み込む」という言葉で統一してご説明します 言葉の整理 Data 読み込む
  3. 3. Cloud OnAir 1. BigQuery とは? 2. データ読み込みの基本 3. GCP からの読み込み 4. Google サービスからの読み込み 5. BigQuery へ読み込まない選択肢 6. サードパーティ ツールとの連携 Agenda
  4. 4. Cloud OnAir Cloud OnAir BigQuery とは?
  5. 5. Cloud OnAir サーバレスで自動的にスケールするデータウェアハウス (DWH) BigQuery とは? フルマネージドでサーバレス 暗号化、高耐久性、高可用性 ペタバイトスケールで便利で高速な SQL 分析のためのエンタープライズ向け DWH
  6. 6. Cloud OnAir 例えば…… ● Web サイト、ソーシャルメディアの行動データ ● Web 広告の実績レポート ● IoT / センサー データ ● 売上データ / POS データ ● サーバログ / インフラ モニタログ ● ゲームやモバイルアプリの操作ログ ……など BigQuery で扱われるデータ
  7. 7. Cloud OnAir BigQuery にデータを集める理由 Data なぜ?
  8. 8. Cloud OnAir BigQuery にデータを集める理由 Data 集めたあとに 利用しやすいから
  9. 9. Cloud OnAir BigQuery エコシステム 可視化 分析 ● BigQuery ● Google スプレッドシート ● JDBC / ODBC コネクター ● Google データポータル ● Tableau ● Qlik ● looker … etc
  10. 10. Cloud OnAir Google Cloud エコシステム 再処理 機械学習 Cloud Dataproc Cloud Dataflow Cloud ML Engine Cloud Datalab
  11. 11. Cloud OnAir Cloud OnAir データ読み込みの基本
  12. 12. Cloud OnAir データ読み込みの単位 ● バッチロード ● ストリーミングインサート データ読み込みの経路 ● ローカルファイルから ● Google Cloud Storage から ● その他サービスから ファイルフォーマット ● CSV, JSON, Avro, Parquet, ORC 基本的な分類
  13. 13. Cloud OnAir バッチロード (ストリーミングインサート以外のもの ) 特徴 料金 制限 ストリーミングインサート 特徴 料金 制限 データ読み込みの単位 ● ジョブを実行してデータを読み込む方法 ● DML ステートメント (いわゆる INSERT 文など) もこちら 無料 1 日あたり 1,000 ジョブ / テーブル and 50,000 ジョブ / プロジェクト ● 1 度に 1 行ずつ読み込む方法 ● データが読み込まれてから数秒以内でリアルタイムに分析が可能 読み込みに成功した行あたりで若干の料金がかかる 行とリクエストのサイズ、 1 秒あたりの行数とバイト数、リクエストあたりの行数に制限 DMLの場合 50,000 ジョブ / プロジェクトの制限はなし
  14. 14. Cloud OnAir データ読み込みの経路 Cloud Storage 上の ファイルから ● バケットを BigQuery の データセットと同じ リージョンに配置すること ローカルファイルから ● ウェブ UI の場合は ファイルサイズなどに 注意すること その他サービスから ?
  15. 15. Cloud OnAir CSV JSON 読み込みに対応しているファイルフォーマット Avro Parquet ORC プレーンテキスト 行指向 列指向 編集が容易 読み込みが高速 読み込みが高速
  16. 16. Cloud OnAir ● エンコード UTF-8 (推奨) ● DATE 列 YYYY-MM-DD ● TIMESTAMP 列 YYYY-MM-DD hh:mm:ss ● 改行区切り ● マップや辞書は使えない CSV と JSON の両方 JSON のみ CSV or JSON を読み込む場合の注意点 https://cloud.google.com/bigquery/docs/loading-data-cloud-storage?hl=ja#limitations
  17. 17. Cloud OnAir CSV か JSON を読み込む際の機能 (外部テーブルとして読み込む場合も) ● 最大 100 行をサンプルとして 各フィールドを検証 ● スキーマの他にも自動検出 ○ 圧縮 / 非圧縮 ○ 日付 ○ タイムスタンプ ○ 区切り文字 (CSV の場合) ○ 引用付き改行 (CSV の場合) スキーマの自動検出機能 https://cloud.google.com/bigquery/docs/schema-detect?hl=ja
  18. 18. Cloud OnAir Cloud OnAir GCP からの読み込み
  19. 19. Cloud OnAir ● Cloud Storage ○ データファイル ○ Cloud Datastore ○ Cloud Firestore ○ Firebase Realtime Database ● Cloud Dataflow ● Stackdriver Logging ● アプリケーションなどから直接読み込む ● ウェブ UI GCP サービスを通す
  20. 20. Cloud OnAir ● 各種データファイル ● Cloud Datastore エクスポート ● Cloud Firestore エクスポート ● (Firebase Realtime Database エクスポート) ● Data Transfer Service による 定期読み込みが可能(ベータ) Cloud Storage を通す Cloud Storage
  21. 21. Cloud OnAir ● Dataflow がデータを加工し BigQuery にデータを読み込む Cloud Dataflow を通す Cloud Dataflow
  22. 22. Cloud OnAir ● あらゆる所から集まる Stackdriver Logging のログを、 BigQuery に読み込む ● エクスポート機能を利用すれば 直接 BigQuery に読み込むことも Cloud Storage に出力してから 読み込むことも可能 Stackdriver Logging を通す Stackdriver Logging https://cloud.google.com/logging/docs/export/configure_export_v2?hl=ja
  23. 23. Cloud OnAir GCP 内外のサーバで稼働している アプリケーションから直接データを読み込む ● API ● bq コマンド ● クライアント ライブラリ ● (サードパーティツール) アプリケーションなどから直接読み込む ● API ● bq コマンド ● クライアントライブラリ ● サードパーティツール
  24. 24. Cloud OnAir Cloud Console を使って読み込む ● 「テーブルを作成」 から 新規読み込みと 追加読み込みができる ● Cloud Storage や 外部データソースも データ元として選択できる ● ファイルサイズ < 10 MB 行数 < 16,000 ウェブ UI を通す
  25. 25. Cloud OnAir Cloud OnAir Google サービスからの読み込み
  26. 26. Cloud OnAir ● BigQuery Data Transfer Service ○ キャンペーン マネージャー ○ Google アド マネージャー ○ Google 広告 ○ Google Play (ベータ) ○ YouTube チャンネル レポート ○ YouTube コンテンツ所有者レポート ○ Cloud Storage (定期実行) ● Google アナリティクス 360 ● Firebase BigQuery へデータを読み込める Google のサービス
  27. 27. Cloud OnAir BigQuery Data Transfer Service のラインナップ キャンペーン マネージャー Google アド マネージャー Google Play (ベータ) Youtube チャンネル レポート Google 広告 Youtube コンテンツ所有者 レポート + Cloud Storage
  28. 28. Cloud OnAir BigQuery Data Transfer Service を利用すると 一貫したウェブ UI, コマンド, API を通じて 右のような操作を実行できます BigQuery Data Transfer Service の特徴 ● 転送構成に関する情報の取得 ● 転送構成の一覧表示 ● 転送の実行履歴の表示 ● ログメッセージなどの転送実行の詳細の表示 ● 転送の更新 ● バックフィルの設定 ● 認証情報の更新 ● 転送の無効化 ● 転送の削除 ● 実行通知 (アルファ)
  29. 29. Cloud OnAir サービスごとの基本的な動作 サービス スケジュール リフレッシュウィンドウ 最大バックフィル期間 キャンペーンマネージャー 設定の作成時刻に基づき8 時間ごと 設定変更不可 過去 2 日間 設定変更不可 過去 60 日間 Google アド マネージャー 設定の作成時刻に基づき8 時間ごと 設定変更不可 過去 2 日間 設定変更不可 過去 60 日間 Google 広告 毎日、設定を作成した時刻 設定変更可能 過去 7 日間 設定変更可能(最大 30 日) 制限なし 1 回のリクエスト上限180 日間 Google Play (ベータ) 毎日、設定を作成した時刻 設定変更可能 過去 7 日間 設定変更不可 制限なし 1 回のリクエスト上限180 日間 YouTube チャンネルレポート 毎日、14:10 頃 (UTC) 設定変更可能 過去 1 日 設定変更不可 過去 180 日間 YouTube コンテンツ所有者レポート 毎日、14:45 頃 (UTC) 設定変更可能 過去 1 日 設定変更不可 過去 180 日間
  30. 30. Cloud OnAir Cloud Storage (ベータ) ● Cloud Storage から BigQuery への繰り返しのデータ読み込みを自動化できます ● Cloud Storage のパスと宛先テーブルはパラメータ化が可能 ○ 特定の日付に一致するファイルを取得する ■ 例: gs://bucket/events-{run_time|"%Y%m%d"}/*.csv   → gs://bucket/events-20190314/*.csv  ○ 宛先テーブルをどのように分割するかを指定する ■ 例: mytable_{run_time|"%Y%m%d"} → mytable_20190314  注意点 ● ファイルのスキーマは宛先テーブルで定義されているものと同じである必要があります ● 作成後 1 時間以上経過しているファイルが転送の対象となります BigQuery Data Transfer Service for Cloud Storage https://cloud.google.com/bigquery/docs/cloud-storage-transfer-overview?hl=ja
  31. 31. Cloud OnAir Data Transfer Service を設定するために必要な条件 ● 該当のサービスに対するアカウントを持っていること ● それぞれのサービス側と BigQuery 側で適切な権限を持っていること サポート窓口 ● サポート利用のための窓口が分かれています ○ レポートやアクセス許可に関する内容はデータ元のサポートチームへ ○ 請求またはデータ取得に関する内容は Google Cloud サポートチームへ ● 公式サイトのトラブルシューティングのページ やよくある質問のページ が 充実しているのでご活用ください BigQuery Data Transfer Service の注意事項
  32. 32. Cloud OnAir 特徴 ● データ読み込みのタイミングをバッチ処理とストリーミング処理の 2 パターンから選べる 注意点 ● BigQuery Data Transfer Service の枠組みではないので転送通知などの機能を利用できない ○ アナリティクス 360 側の BigQuery Export という機能を利用している ● ストリーミング処理の場合、 BigQuery 側でストリーミングインサートの料金が発生する Google アナリティクス 360 サービス スケジュール リフレッシュウィンドウ 最大バックフィル期間 Google アナリティクス360 バッチ:毎日、8 時間毎 ストリーミング:約15 分毎 バッチ: 前日のデータ1 ファイルと、 その日のデータ3 ファイル 13 か月分または100 億件の ヒットのいずれか少ない方
  33. 33. Cloud OnAir BigQuery へ読み込めるデータ ● Firebase 向け Google アナリティクス ● Crashlytics ● Cloud Messaging ● Predictions 注意点 ● アナリティクスは有料プランのみ ● バックフィルはサポートしていません Firebase サービス スケジュール リフレッシュウィンドウ 最大バックフィル期間 Firebase ストリーミング:20 分以内 - なし
  34. 34. Cloud OnAir Cloud OnAir BigQuery へ読み込まない選択肢
  35. 35. Cloud OnAir これらの機能を利用すると「 BigQuery へデータを読み込む」という手順をスキップして、 直接データにクエリを発行することができます ● 公開データセット ● 外部データソース (フェデレーション データソース) 読み込まない
  36. 36. Cloud OnAir 特徴 ● Google やサードパーティでホストされているパブリックなデータセット ○ 有償の商用データセットもあります ● 自分のデータセットの共有設定を変更して、公開データセットとしてパブリックに共有すること もできます 注意点 ● 一般公開データセットは US マルチリージョン ロケーションに格納されています 公開データセット https://cloud.google.com/bigquery/public-data/?hl=ja
  37. 37. Cloud OnAir データが BigQuery に格納されていない場合でも直接クエリを発行できるデータソース データの読み込む代わりに、外部データソースを参照するテーブルを作成します 対象となるデータソース ● Google Cloud Bigtable(ベータ) ● Google Cloud Storage ○ CSV, JSON, Avro, Cloud Datastore エクスポート, Cloud Firestore エクスポート ● Google ドライブ ○ CSV, JSON, Avro, Google スプレッドシート(最初のタブのみ) 注意点 ● 外部データソースに対するクエリのパフォーマンスは BigQuery 内のデータに対するクエリよりも低くなる 可能性があります 外部データソース(フェデレーション データソース) https://cloud.google.com/bigquery/external-data-sources?hl=ja
  38. 38. Cloud OnAir Cloud OnAir サードパーティツールとの連携
  39. 39. Cloud OnAir データの抽出、変換、読み込みを効率化したり、データ処理のワークフローを管理したりするのに 役立つツールやソリューションがパートナー各社から提供されています。 その他サードパーティツールとの連携 alooma BLEND Simba Fivetran Lutics Informatica Keen IO snapLogic SAP MATILLION striim SKYVIA talend Segment fluentd Pluto7 Stitch TREASURE DATA xplenty SWITCHBOARDSOFTWARE etc
  40. 40. Cloud OnAir Cloud OnAir まとめ
  41. 41. Cloud OnAir BigQuery へデータを読み込む方法は豊富! BigQuery Compute Engine Stackdriver Logging Cloud Storage Cloud Firestore Cloud Datastore BigQuery Data Transfer Services サードパーティ ツール Cloud Bigtable Firebase RTDB

×