分12BigQueryBigQueryはビッグデータ解析SaaSです。立ち位置としてはAWSで言うところのRedshiftに相当するようなサービスですが,趣はずいぶん異なります。Redshiftは事前にデータ容量などを計画し適切なプランを選択することになりますが,BigQueryはそのような峻別は不要で,細かいことは気にせずとにかく使いはじめることができます。筆者の周囲ではGCPの中で一番最初に浸透して行ったサービスがBigQueryです。皆の課題を解決する魅力と力の溢れているサービスだからでしょう。Dataの中にあります。Dataの中にあるBigQueryの特徴BigQueryの技術的な特徴としてはカラム型DBMSです。Googleの持つ分散技術を背景に,データを超分散配置し並行操作することで大量のデータを扱うクエリでの短時間応答を実現しています。提供形態はSaaSで,よほど大量のデータをセミリアルタイムで取り扱いたいケースでない限り,事前のスケールに対する配慮は不要です。詳しくは後述の制限のあたりを確認してください。BigQueryではデータを取り扱うためにクエリを使います。クエリはSQLライクな文法なので,SQLが書けるのであれば学習コストはとても低いです。サンプルデータがあらかじめ用意されているのでいろいろ試せます。GitHubのリポジトリデータやWikipediaのリビジョンヒストリなどが用意されています。GitHubのリポジトリデータやWikipediaのリビジョンヒストリなどが用意されている今回は313,797,035行(35.7GB)のデータがあるwikipediaテーブルを使って動作を試してみます。試しにcontributor_usernameの先頭3文字の登録数TOP100を調査してみます。この場合は以下のクエリを実行します。100;すると313,797,035行(35.7GB)の中から2.49GBのデータを走査し結果が表示されます。この間わずか3.1秒です。Insertsでデータを随時投入し,ほぼリアルタイムのデータ解析する利用方法が盛んです。Insertsの実装方法はfluentdが多いようです。ログの吸い上げにfluentdを使いfluent-plugin-bigqueryプラグインでBigQueryにデータ投入するのが定番です。kaizenplatform/fluent-plugin-bigqueryサーバからほぼリアルタイムに収集したログを毎分集計し,ほぼリアルタイムに状況を把握するという利用方法も可能です。Premiumでは生データをBigQueryに溜めて自分で好きなように解析できるようです。学生時代に運用管理から業界入り。MSPベンチャーの立ち上げを手伝った後に,中堅SIerにて大手カード会社向けJavaプログラマーを経て現職。現在インフラエンジニアとして活動中。インフラエンジニア勉強会hbstudy主催。最近の興味は写真とPythonプログラミングとクラウドの活用。