メインコンテンツまでスキップ

Databricks

Squid は Databricks SQL warehouse に接続し、Squid application の data source として使用できます。​

Databricks connector を使用すると、Squid Client SDK を通じて Databricks catalog の table に query し、native SQL query を実行し、AI agent が lakehouse data を使用して question に回答できるようにします。

注記

Databricks connector は read-only です。native SQL および AI query を含む query はサポートされますが、insert、update、delete はサポートされません。

Databricks 側の前提条件​

  • 実行中の SQL warehouse。warehouse の Connection details にある HTTP path が必要です。形式は /sql/1.0/warehouses/<warehouse-id> です。
  • authentication 用の personal access token。
  • token の user には、公開する table に対する SELECT と、Squid が schema discovery に使用する system.information_schema view(tables、columns、table_constraints、constraint_column_usage)への read access が必要です。

Databricks Connector を追加する​

  1. Squid Console を開き、Databricks と使用する application を選択します。
  2. Connectors tab をクリックしてから、Available connectors をクリックします。
  3. Databricks connector を選択します。
  4. 以下の configuration information を入力します。
  • Connector ID - 簡潔で connector の識別に役立つ ID を選択します。
  • Database Host - workspace host。例: dbc-yourId.cloud.databricks.com。
  • Database Access Token - personal access token。private に保つには、Squid Secrets に保存します。
  • Warehouse Path - SQL warehouse の HTTP path。例: /sql/1.0/warehouses/warehouse-id-here。
  • Catalog - 接続する catalog。
  • Catalog Schemas - catalog 内で公開する schema の comma-separated list。
  • Tables to Process - Optional。schema discovery に含める table の comma-separated list。regex pattern を指定するには forward slash を使用します(例: /^temp_.*/)。すべての table を含めるには空欄にします。

Data の Query​

collection は schema.table という name になります。connector ID を渡して、他の Squid collection と同じ方法で Client SDK から query します。

Client code
const orders = await squid
.collection<Order>('sales.orders', 'YOUR_DATABRICKS_CONNECTOR_ID')
.query()
.gte('total', 1000)
.snapshot();

native SQL query も実行できます。

Client code
const result = await squid.executeNativeRelationalQuery(
'YOUR_DATABRICKS_CONNECTOR_ID',
'SELECT region, SUM(total) AS revenue FROM sales.orders GROUP BY region',
);

native query と AI-generated query は、実行前に read-only であることが validate されます。

Database の保護​

default では security rule が必要であり、production environment では security rule なしで connector への access を許可しないことが不可欠です。database data の保護について詳しくは、security rules documentationを参照してください。

Squid で data を操作する方法については、Client SDK documentationを参照してください。