メインコンテンツまでスキップ
バージョン: 26.x

BigQuery カタログ

BigQuery CatalogはBigQuery ConnectorによってBigQueryTableにアクセスするため、Trino Connector互換性フレームワークを使用します。

注記

この機能は実験的なものであり、バージョン3.0.1以降でサポートされています。

適用シナリオ

シナリオ説明
データ統合BigQueryデータを読み取り、Doris内部Tableに書き込みます。
Data Writebackサポートされていません。

環境準備

BigQuery Connector Pluginのコンパイル

JDK 17が必要です。

$ git clone https://github.com/apache/doris-thirdparty.git
$ cd doris-thirdparty
$ git checkout trino-435
$ cd plugin/trino-bigquery
$ mvn clean install -DskipTest

コンパイル後、trino/plugin/trino-bigquery/target/ ディレクトリに trino-bigquery-435 フォルダが含まれます。

また、事前にコンパイルされた trino-bigquery-435-20240724.tar.gz を直接ダウンロードして展開することもできます。

BigQuery Connectorのデプロイ

すべてのFEおよびBEノードのデプロイメントパスの connectors/ ディレクトリに trino-bigquery-435/ ディレクトリを配置してください。(ディレクトリが存在しない場合は、手動で作成できます。)

├── bin
├── conf
├── connectors
│ ├── trino-bigquery-435
...

デプロイ後、Connectorが正しくロードされることを確実にするため、FEおよびBEノードを再起動することを推奨します。

Catalogの設定

構文

CREATE CATALOG [IF NOT EXISTS] catalog_name
PROPERTIES (
'type' = 'trino-connector', -- required
'trino.connector.name' = 'bigquery', -- required
{TrinoProperties},
{CommonProperties}
);
  • {TrinoProperties}

    TrinoPropertiesセクションは、Trino Connectorに渡されるプロパティを指定するために使用されます。これらのプロパティはtrino.プレフィックスを使用します。理論的には、Trinoでサポートされているすべてのプロパティがここでもサポートされます。BigQueryの詳細については、Trino ドキュメントを参照してください。

  • [CommonProperties]

    CommonPropertiesセクションは、一般的なプロパティを指定するために使用されます。「Common Properties」セクションのカタログ 概要を参照してください。

サポートされているBigQueryバージョン

BigQueryプロパティの詳細については、Trino ドキュメントを参照してください。

カラム型マッピング

BigQuery タイプTrino タイプDoris タイプ
booleanbooleanboolean
int64bigintbigint
float64doubledouble
numericdecimal(P, S)decimal(P, S)
bignumricdecimal(P, S)decimal(P, S)
stringvarcharstring
bytesvarbinarystring
datedatedate
datetimetimestamp(6)datetime(6)
timetime(6)string
timestamptimestamp with time zone(6)datetime(6)
geographyvarcharstring
arrayarrayarray
mapmapmap
structrowstruct

CREATE CATALOG bigquery_catalog PROPERTIES (
'type' = 'trino-connector',
'trino.connector.name' = 'bigquery',
'trino.bigquery.project-id' = 'your-bigquery-project-id',
'trino.bigquery.credentials-file' = '/path/to/application_default_credentials.json',
);

Query 運用

Catalogを設定した後、以下の方法を使用してCatalog内のTableデータをクエリできます:

-- 1. switch to catalog, use database and query
SWITCH bigquery_ctl;
USE bigquery_db;
SELECT * FROM bigquery_tbl LIMIT 10;

-- 2. use bigquery database directly
USE bigquery_ctl.bigquery_db;
SELECT * FROM bigquery_tbl LIMIT 10;

-- 3. use full qualified name to query
SELECT * FROM bigquery_ctl.bigquery_db.bigquery_tbl LIMIT 10;