Data Catalog の検索構文

このドキュメントでは、Data Catalog の検索クエリの構文について説明します。

簡単な述語

最も簡単な形式は、述語を 1 つだけ含む検索クエリです。たとえば、述語 foo は次の Data Catalog エンティティと一致します。

  • 説明 This is the foo script. を含むエンティティ。
  • 名前 foo.bar を含むエンティティ。

修飾された述語

述語の先頭にキーを付けて修飾すると、照合範囲を特定のメタデータ部分に限定できます。たとえば、name:foo を使用すると、名前が述語 foo と一致するエンティティが選択されます。

Data Catalog は、次の修飾子をサポートしています。

修飾子 説明
name:x x をデータアセット ID の部分文字列と照合します。
displayname:x x をデータアセットの表示名の部分文字列と照合します。
column:x x をデータアセットのスキーマの列名の部分文字列と照合します。
description:x x をデータアセットの説明のトークンと照合します。
labels:bar ラベル(ある値を持つ)を持つ BigQuery データアセットを照合します。ラベルキーには部分文字列として bar があります。
labels.bar:x x を BigQuery データアセットに添付されたラベル bar の値のトークンと照合します。
type=<type> 特定のオブジェクト タイプまたはサブタイプのデータアセットを照合します。サブタイプは形式 <type>.<sub-type>. に追加できます。
タイプとサブタイプには次が含まれます。
  • type=table はすべてのテーブルを照合します。
  • type=dataset はすべての BigQuery データセットを照合します。
  • type=table.view または type=view はすべてのビューを照合します。
  • type=tag_template はすべてのタグ テンプレートを照合します。
  • type=entry_group はすべてのエントリ グループを照合します。
  • type=data_stream はすべての Pub/Sub トピックを照合します。
projectid:bar bar と ID の部分文字列が一致する Cloud プロジェクト内のデータアセットを照合します。
orgid:bar bar と ID の部分文字列が一致するクラウド組織内のデータアセットを照合します。
system=<system> 指定されたシステムのすべてのデータアセットを照合します。
システムには次が含まれます。
  • system=bigquery は、BigQuery のすべてのデータアセットを照合します。
  • system=cloud_pubsub は、Pub/Sub のすべてのデータアセットを照合します。
  • system=data_catalog は、Data Catalog で作成されたすべてのデータアセットを照合します。
tag:x x が <tag_template_project_id>.<tag_template_id>.<tag_field_id> の任意の部分文字列と一致するデータアセットを照合します。
例:
  • tag:data_owner は、data_owner タグを持つデータアセットを照合します。
  • tag:data_gov_template は、data_gov_template タグ テンプレートでタグ付けされたデータアセットを照合します。
  • tag:mycloudproject.data_gov_template は、mycloudproject プロジェクトの data_gov_template テンプレートでタグ付けされたデータアセットを照合します。
tag:key:val key とタグフィールド ID、タグ テンプレート ID、またはタグ テンプレートの Cloud プロジェクト ID の部分文字列を照合します。タグフィールドのタイプが string の場合、val を、key のタグ値のトークンと照合します。タグフィールドの値のタイプが booleanenumdouble. のいずれかの場合、key のタグ値に val が正確に一致します。
次の演算子が許可されます。
  • string: ":"
  • booleanenum: "="
  • double: "="、"<"、">"、"<="、">="
  • timestamp: ":"、"="、"<"、">"、"<="、">="
例:
  • string: tag:data_owner:@mail.com は、@mail.com 値を持つデータアセットを照合します。
  • boolean: tag:data_gov_template.hasPII=true は、true である data_gov_templatehasPII boolean タグを照合します。
  • enum: tag:certification_level_1=HIGHEST
  • double: tag:datascore=9 は、値が 9 である datascore double タグを持つデータアセットを照合します。
  • timestamp: tag:expiredDate:2019-01-01 は、2019-01-01expiredDate タグがあるデータアセットを照合します。
  • timestamp: tag:expiredDate<2019-02 は、2019-02-01T00:00:00 より前に expiredDate タグがあるデータアセットを照合します。
createtime 指定した日時以前または以降に作成されたデータアセットを検索します。
例:
  • createtime:2019-01-01 は、2019-01-01 で作成されたデータアセットを照合します。
  • createtime<2019-02 は、2019-02-01T00:00:00 より前に作成されたデータアセットを照合します。
  • createtime>2019-02 は、2019-02-01T00:00:00 以降に作成されたデータアセットを照合します。
updatetime 指定した日時以前または以降に更新されたデータアセットを検索します。
例:
  • updatetime:2019-01-01 は、2019-01-01 で更新されたデータアセットを照合します。
  • updatetime<2019-02 は、2019-02-01T00:00:00 より前に更新されたデータアセットを照合します。
  • updatetime>2019-02 は、2019-02-01T00:00:00 以降に更新されたデータアセットを照合します。
policytag:x xポリシータグの表示名の部分文字列として照合します。
policytagid=x xポリシータグ ID の部分文字列として照合します。

論理演算子

クエリが複数の述語と論理演算子で構成されている場合があります。演算子を指定しないと、論理 AND が使用されます。たとえば、foo bar は、述語 foo と述語 bar の両方に一致するエンティティを返します。

論理 AND と論理 OR がサポートされています(たとえば、foo OR bar)。

述語の先頭に - または NOT を付けると、述語を否定できます。たとえば、-name:foo は、述語 foo と一致しない名前を持つすべてのエンティティを返します。