BigQueryがJSONにネイティブ対応。SQLでJSONに対するクエリが可能に

2022年1月12日

Google Cloudは、大規模データ分析サービスのBigQueryにおいてJSON型データへのネイティブ対応機能をパブリックプレビューとして公開しました

これまでもBigQueryにおいてJSON型データを文字列として格納し、その文字列を解析しつつ利用することは可能でした。

今回のJSONネイティブ対応で、そうした手間をかけることなく、より自然な形でBigQueryのデータ型としてJSON型を扱うことができるようになりました。

スキーマを決めることなく柔軟なデータ構造でデータを扱えるJSON

JSONとは、もともとJavaScriptのオブジェクト表記法をベースにDouglas Crockford氏が2001年頃に発見し、命名した軽量のデータ記述フォーマットです。

現在では業界標準の仕様が策定されています。

参考:事実上最後のJSON仕様「RFC 8259」と「ECMA-404 2nd Editon」公開。UTF-8エンコード必須に

JSONではキーとバリューのセットを複数組み合わせることができ、配列やデータの入れ子構造なども表現できるなど、非常に柔軟にデータを記述できるのが特徴です。

BigQueryのJSON対応で、このJSON形式で記述されたデータをJSON型の列にそのまま格納できるようになりました。

JSONにより柔軟な構造を持つデータをそのままデータベースに保存できるため、あらかじめデータスキーマを決めることなく多様なデータを保存、検索できます。

例えば、既存のテーブルにJSON型の列を追加することができます。

ALTER TABLE `existingDataset.existingTable`
  ADD COLUMN newJSONField JSON

JSON型の列に格納されたJSON形式のデータに対して、SELECT文で検索、集計できます。下記は「Authentication Failure」という文字列がJSONデータの「labels.property」フィールドに含まれている件数を検索します。このようにJSON型でドット表記が可能です。

SELECT COUNT(*)
  FROM `json_example.streaming_events`
  WHERE
    JSON_VALUE(labels.property) = "Authentication Failure"

BigQueryのJSON対応は、申し込み画面から申し込むことで利用可能になるとのこと。

このエントリーをはてなブックマークに追加
follow us in feedly




カテゴリ

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


最新記事10本