Google BigQueryの新機能と改善点
Googleが提供するデータ分析サービスであるBigQueryは、2014年3月31日に行われたCloud Platform Liveで発表された一連の新機能と改善を受け、さらに強力で使いやすいツールに進化しました。この記事では、その内容について詳しく解説します。
ストリーミング機能の大幅な向上
昨年9月、BigQueryではデータを瞬時に分析するためのストリーミング機能を発表しましたが、その際の取り込み制限は1秒あたり100行でした。しかし、この度の更新では、各テーブルに対して1秒あたり**100,000行**までストリーミングが可能となり、これまでの**1,000倍**の容量を実現しています。この機能により、開発者はリアルタイムで大量のデータを分析することができるようになりました。
テーブルワイルドカード関数の導入
データのライフサイクル管理や最適化のために、ユーザーは通常、大規模なテーブルをより小さな単位に分割します。この際、たとえば年別のテーブルを月別や日別に分割することがあります。しかし、複数のテーブルにアクセスする際には、クエリの作成が煩雑になることが多いです。新しく追加されたテーブルワイルドカード関数により、特定の条件に一致するテーブルを簡単にクエリすることが可能となりました。
- TABLE_DATE_RANGE():指定した期間に重複するテーブルをクエリします。
- TABLE_QUERY():正規表現を使用して分析対象のテーブルを選択できます。
SQLサポートとテーブルビュー機能の向上
BigQueryでは、データ分析に使われる言語としてSQLを採用しています。これまでSQL-92に対して制約がありましたが、今回の更新で複数の結合やCROSS JOINがサポートされ、さらなる柔軟性が生まれました。また、クエリをビューとして保存することができ、これを基により複雑なクエリを構築することができます。
ユーザー定義メタデータの追加
データセット、テーブル、フィールドに対して説明をアノテーションする機能が追加されました。これにより、データセットを共有する際に、他のユーザーが簡単にその内容を理解できるようになります。
JSONパース機能の導入
BigQueryは、構造化データを効率的に処理するために最適化されていますが、柔軟なJSONスキーマを扱うのは容易ではありません。この更新により、JSONエンコードされたオブジェクトを文字列フィールドとして保存でき、後でJSONPathに似た表現を使ってデータをパースすることが可能になりました。
- 例:SELECT json_extract_scalar(“{‘book’: { ‘category’:’fiction’, ‘title’:’Harry Potter’}}”, “$.book.category”);
高速な並列エクスポート機能
BigQueryはデータをストレージとして使用し、SQLクエリを通じて即座に分析するための素晴らしい選択肢ですが、外部ツールでの分析を行いたい場合もあります。そこで新しく導入されたのが、高速な並列エクスポート機能です。この機能を使用すると、データを複数のファイルにエクスポートし、効率的にデータを分析することができます。
大幅な料金削減
Cloud Platform Liveでは、ストレージコストが**68%**削減され、1GBあたり8セントから**2.6セント**へと大幅に引き下げられました。また、クエリコストも**85%**削減され、3.5セントから**0.5セント**に改善されています。さらに、ストリーミングコストも**90%**削減されています。これにより、ユーザーはよりアクセスしやすくなったBigQueryを利用できるようになります。
まとめ
Google BigQueryは、今回の更新を通じて大きく進化し、ストリーミング機能の向上やSQLサポートの拡充、新しいデータ管理機能が追加されました。これにより、開発者やデータサイエンティストは、より強力で効率的にデータ分析を行えるようになるでしょう。今後もこのサービスの進化から目が離せません。