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

QuickBooksからデータを取り込む

備考

ベータ版

この機能はベータ版です。使用するには、ワークスペース管理者は プレビュー ページから QuickBooks向けLakeflow Connect を有効にする必要があります。Databricksプレビューの管理を参照してください。

このページでは、Lakeflow Connect を使用して管理対象の QuickBooks インジェストパイプラインを作成する方法について説明します。

要件​

  • 取り込み パイプラインを作成するには、まず次の要件を満たす必要があります。

    • ワークスペースでUnity Catalogが有効になっている必要があります。

    • Serverless コンピュートをワークスペースで有効にする必要があります。Serverless コンピュートの要件を参照してください。

    • 新しい接続を作成するには、メタストアに対する CREATE CONNECTION 特権が必要です。Unity Catalog での特権の管理を参照してください。

      コネクタが UI ベースのパイプライン オーサリングをサポートしている場合、管理者はこのページのステップを完了することで、接続とパイプラインを同時に作成できます。 ただし、パイプラインを作成するユーザーが API ベースのパイプライン オーサリングを使用している場合、または管理者以外のユーザーである場合、管理者はまずカタログ エクスプローラーで接続を作成する必要があります。 「管理対象取り込みソースへの接続」を参照してください。

    • 既存の接続を使用するには、接続オブジェクトに対して USE CONNECTION 権限または ALL PRIVILEGES 権限が必要です。

    • ターゲットカタログに対する USE CATALOG 権限が必要です。

    • 既存のスキーマに対する USE SCHEMA および CREATE TABLE 特権、またはターゲットカタログに対する CREATE SCHEMA 特権が必要です。

  • QuickBooks から取り込むには、まず Databricks からの認証を構成し、接続を作成する必要があります。「QuickBooks への認証の構成」および「QuickBooks 接続の作成」を参照してください。

コネクターオプション​

source_configurations でパイプラインスコープのオプションを設定します。使用例については、例をご覧ください。

オプション

スコープ

必須

適用対象

説明

start_datetime

パイプライン

No

すべてのインクリメンタルテーブル

データの取り込みを開始する最も早い日時。yyyy-MM-ddTHH:mm:ssXXX形式(例:2024-01-01T00:00:00Z)で指定します。各テーブルの最初の同期にのみ適用されます。以降の同期は、保存されたカーソルから再開されます。defaultについては、コネクターオプションを参照してください。

オプション

スコープ

必須

適用対象

説明

start_datetime

パイプライン

No

すべてのインクリメンタルテーブル

データの取り込みを開始する最も早い日時。yyyy-MM-ddTHH:mm:ssXXX形式(例:2024-01-01T00:00:00Z)で指定します。各テーブルの最初の同期にのみ適用されます。以降の同期は、保存されたカーソルから再開されます。defaultについては、コネクターオプションを参照してください。

取り込みパイプラインを作成する​

サポートされているソーステーブルのリストについては、サポートされているソーステーブルを参照してください。

  1. Databricksワークスペースのサイドバーで、 データ取り込み をクリックします。
  2. データの追加 ページの Databricks コネクタ で、 QuickBooks をクリックします。
  3. インジェクションウィザードの 接続 ページで、QuickBooks資格情報が格納されている接続を選択します。メタストアに対する CREATE CONNECTION 特権を持っている場合は、 プラスアイコン。 接続の作成 をクリックして、QuickBooksへの認証の設定の資格情報を使用して接続を作成します。
  4. 次へ をクリックします。
  5. インジェストのセットアップ ページで、パイプラインの名前を入力します。
  6. イベント Logs の書き込み先となるカタログとスキーマを選択します。カタログに USE CATALOG および CREATE SCHEMA の権限がある場合は、ドロップダウンメニューの プラスアイコン。 スキーマの作成 をクリックしてスキーマを作成します。
  7. パイプラインの作成および続行 をクリックします。
  8. ソース ページで、取り込むテーブルを選択します。
  9. 保存して続行 をクリックします。
  10. 宛先 ページで、データを読み込むカタログとスキーマを選択します。カタログに対する USE CATALOG および CREATE SCHEMA 特権がある場合は、ドロップダウンメニューの プラスアイコン。 スキーマの作成 をクリックしてスキーマを作成します。
  11. 保存して続行 をクリックします。
  12. (オプション) スケジュールと通知 ページで、 プラスアイコン。 スケジュールの作成 をクリックします。宛先テーブルを更新する頻度を設定します。
  13. (オプション) プラスアイコン。 通知を追加 をクリックしてパイプライン操作の成功または失敗のEメール通知を設定し、 保存してパイプラインをラン をクリックします。

例​

QuickBooks コネクタは、default ソーススキーマで 37 のソーステーブルを利用可能にします。取り込むテーブルを指定します。

特定のテーブルを取り込む​

テーブルの特定のサブセットを取り込む場合や、テーブルごとに宛先の命名をカスタマイズする場合に、このオプションを使用します。

次のパイプライン定義ファイルは、個別のQuickBooksテーブルを読み込みます。

YAML
resources:
pipelines:
quickbooks_pipeline:
name: quickbooks_pipeline
catalog: 'main'
target: 'quickbooks_data'
ingestion_definition:
connection_name: quickbooks_connection
objects:
- table:
source_schema: 'default'
source_table: 'invoice'
destination_catalog: 'main'
destination_schema: 'quickbooks_data'
destination_table: 'invoice'
- table:
source_schema: 'default'
source_table: 'customer'
destination_catalog: 'main'
destination_schema: 'quickbooks_data'
destination_table: 'customer'
- table:
source_schema: 'default'
source_table: 'payment'
destination_catalog: 'main'
destination_schema: 'quickbooks_data'
destination_table: 'payment'

特定の起動日から取り込む​

start_datetime オプションを使用して、増分テーブルが最初の同期でどの程度過去まで読み取るかを制御します。

次のパイプライン定義ファイルは、特定の開始日からQuickBooksテーブルを取り込みます。

YAML
resources:
pipelines:
quickbooks_pipeline:
name: quickbooks_pipeline
catalog: 'main'
target: 'quickbooks_data'
ingestion_definition:
connection_name: quickbooks_connection
source_configurations:
- api_source_connector_config:
configs:
start_datetime: '<start-datetime>'
objects:
- table:
source_schema: 'default'
source_table: 'invoice'
destination_catalog: 'main'
destination_schema: 'quickbooks_data'
destination_table: 'invoice'
- table:
source_schema: 'default'
source_table: 'customer'
destination_catalog: 'main'
destination_schema: 'quickbooks_data'
destination_table: 'customer'
- table:
source_schema: 'default'
source_table: 'payment'
destination_catalog: 'main'
destination_schema: 'quickbooks_data'
destination_table: 'payment'

宣言型オートメーションバンドルのジョブ定義ファイル​

以下は、宣言型自動化バンドルで使用するジョブ定義ファイルの例です。そのジョブは毎日ランします。

YAML
resources:
jobs:
quickbooks_job:
name: quickbooks_job
schedule:
quartz_cron_expression: '0 0 0 * * ?'
timezone_id: 'UTC'
tasks:
- task_key: quickbooks_ingestion
pipeline_task:
pipeline_id: ${resources.pipelines.quickbooks_pipeline.id}

一般的なパターン​

高度なパイプライン構成については、マネージド インジェスト パイプラインの一般的なパターンを参照してください。

次のステップ​

パイプラインの起動、スケジュール設定、アラートの設定を行います。一般的なパイプラインのメンテナンス タスクを参照してください。

その他のリソース​