このチュートリアルでは、Google BigQuery から Fabric ミラー化データベースを構成します。
注
この例は BigQuery に固有のものですが、Azure SQL Database や Azure Cosmos DB などの他のデータ ソースのミラーリングを構成する詳細な手順を確認できます。 詳細については、「Fabric のミラーリングとは」を参照してください。
[前提条件]
- 新しい BigQuery ウェアハウスを作成するか、既存のものを使用します。 Microsoft Azure を含め、任意のクラウド内の任意のバージョンの BigQuery インスタンスに接続できます。
- 既存の Fabric 容量が必要です。 そうでない場合は、Fabric 試用版を開始します。
権限の要件
次のアクセス許可を含む BigQuery データベースのユーザーアクセス許可が必要です。
bigquery.datasets.createbigquery.tables.listbigquery.tables.createbigquery.tables.exportbigquery.tables.getbigquery.tables.getDatabigquery.tables.updateDatabigquery.routines.getbigquery.routines.listbigquery.jobs.createstorage.buckets.createstorage.buckets.liststorage.objects.createstorage.objects.deletestorage.objects.listiam.serviceAccounts.signBlob
テーブル メタデータの取得と変更履歴の構成 (必須)
BigQueryAdmin ロールと StorageAdmin ロールには、これらのアクセス許可が含まれている必要があります。 変更履歴が有効かどうかを判断し、主キーまたは複合キー情報を取得するには、次のアクセス許可が必要です。
ユーザーには、BigQuery インスタンスへのアクセスを許可するロールが少なくとも 1 つ割り当てられている必要があります。 BigQuery データ ソースにアクセスするためのネットワーク要件を確認します。 Google BigQuery for On-Premises Data Gateway (OPDG) のミラーリングを使用している場合、ミラーリングを成功させるには OPDG バージョン 3000.286.6 以上が必要です。
必要なアクセス許可
バケットを手動で作成して storage.buckets.create 権限の付与を省略するには、次のコマンドを使用できます。
bigquery.tables.getbigquery.tables.listbigquery.routines.getbigquery.routines.list
- Google コンソール内で Cloud Storage に移動し、[ バケット] を選択します。
- [ 作成] を選択し、次の形式でバケットに名前を付けます (大文字と小文字が区別されます)。
<projectid>_fabric_staging_bucket - バケットの場所/リージョンが、ミラーリングを計画している GCP プロジェクトと同じであることを確認します。
- を選択してを作成します。 ミラーリング システムはバケットを自動的に検出します。
ユース ケースによっては、さらに多くのアクセス許可が必要になる場合があります。 最低限必要なアクセス許可は、変更履歴を操作し、さまざまなサイズのテーブル (10 GB を超えるテーブル) を処理するために必要です。 10 GB を超えるテーブルを操作していない場合でも、これらの最小限のアクセス許可をすべて有効にして、ミラーリングの使用を成功させます。
変更履歴とテーブル データの取得 (必須)
アクセス許可の詳細については、ストリーミング データに必要な権限、変更履歴アクセスに必要なアクセス許可、クエリ結果を書き込むための必要なアクセス許可に関する Google BigQuery ドキュメントを参照してください。
変更履歴とテーブル データを読み取るために、次のアクセス許可が必要です。
Important
ソース BigQuery ウェアハウスで確立された詳細なセキュリティは、Microsoft Fabric のミラー化されたデータベースで再構成する必要があります。 詳細については、 Microsoft Fabric での SQL の詳細なアクセス許可に関するセクションを参照してください。
必要なアクセス許可
bigquery.tables.getDatabigquery.jobs.createbigquery.jobs.getbigquery.jobs.listbigquery.readsessions.createbigquery.readsessions.getData
変更履歴機能の有効化 (必須)
次 のいずれかの オプションを使用して、ソース BigQuery テーブルで変更履歴を有効にする必要があります。
オプション 1: アクセス許可を有効にする
bigquery.tables.update
テーブルの変更履歴を有効にします。
オプション 2: GCP でテーブル オプションを有効にする
次の表のオプションが TRUEに設定されていることを確認します。
enable_change_history
ステージング用に Google Cloud Storage にデータをエクスポートし、OneLake にコピーする (必須)
ステージングのために BigQuery データを Google Cloud Storage にエクスポートし、OneLake にコピーするには、次のアクセス許可が必要です。
必要なアクセス許可
bigquery.tables.exportstorage.objects.createstorage.objects.liststorage.buckets.getiam.serviceAccounts.signBlob
ステージング用の Google Cloud Storage バケット (必須)
ステージング用に BigQuery テーブル データをエクスポートするには、Google Cloud Storage バケットが必要です。
バケット作成オプション
次の方法のいずれかを使用します。
オプション 1: バケットの自動作成を許可する
次のアクセス許可を付与します。
storage.buckets.create
オプション 2: ステージング バケットを手動で作成する
次の名前付け規則を使用してバケットを作成します。 <your_project_id_in_lowercase>_fabric_staging_bucket
バケットに必要な条件
- バケットは 、BigQuery データセットと同じ場所/リージョンに存在する必要があります。
- ミラーリング システムは、バケットが存在すると自動的に検出されます。
データセットの一覧表示 (必須)
必要なアクセス許可
bigquery.datasets.get
プロジェクトの一覧表示 (必須)
必要なアクセス許可
resourcemanager.projects.get
ロールとアクセスの要件
BigQuery 管理者ロールとストレージ管理者ロールには、通常、上記のアクセス許可が含まれます。
ユーザーには、ターゲット BigQuery プロジェクトとデータセットへのアクセスを許可するロールを少なくとも 1 つ割り当てる必要があります。
ネットワークとゲートウェイの要件
BigQuery データ ソースにアクセスするためのネットワーク要件を確認します。
オンプレミス データ ゲートウェイ (OPDG) で Google BigQuery のミラーリングを使用している場合は、次を使用する必要があります。
- OPDG バージョン 3000.286.6 以降
追加メモ
ユース ケースによっては、さらに多くのアクセス許可が必要になる場合があります。 上記のアクセス許可は、次に 必要な最小限 のアクセス許可を表します。
- 変更履歴の操作
- 10 GB を超えるテーブルなど、さまざまなサイズのテーブルの処理
現在、10 GB を超えるテーブルを使用していない場合でも、ミラーリングを正常に実行するには、すべての最小アクセス許可を有効にすることをお勧めします。
詳細については、以下を参照してください:
Important
ソース BigQuery ウェアハウスで定義されている詳細なセキュリティは、Microsoft Fabric のミラー化されたデータベースで再構成する必要があります。 詳細については、 Microsoft Fabric での SQL の詳細なアクセス許可に関するセクションを参照してください。
ミラー化されたデータベースを作成する
このセクションでは、ミラー化された BigQuery データ ソースから新しいミラー化されたデータベースを作成します。
(マイ ワークスペースではなく) 既存のワークスペースを使用することも、新しいワークスペースを作成することもできます。
- ワークスペースから、 作成 ハブに移動します。
- 使用するワークスペースを選択したら、[ 作成] を選択します。
- ミラー化された Google BigQuery カードを選択します。
- 新しいデータベースの名前を入力します。
- を選択してを作成します。
任意のクラウド内の BigQuery インスタンスに接続する
注
ミラーリングが BigQuery インスタンスに接続できるように、クラウド ファイアウォールを変更することが必要になる場合があります。 Google BigQuery for OPDG バージョン 3000.286.6 以降のミラーリングをサポートしています。 VNET もサポートしています。
[新しい接続] で [BigQuery] を選択するか、既存の接続を選択します。
[新しい接続] を選択した場合は、BigQuery データベースへの接続の詳細を入力します。
接続設定 Description サービス アカウントの電子メール 既存のサービス アカウントがある場合: Google BigQuery コンソールでサービス アカウントに移動して、サービス アカウント のメールアドレスと既存のキーを見つけることができます。 既存のサービス アカウントがない場合: Google BigQuery コンソールで [サービス アカウント] に移動し、[ サービス アカウントの作成] を選択します。 サービス アカウント名 (入力したサービス アカウント名に基づいてサービス アカウント ID が自動的に生成されます) とサービス アカウントの説明を入力します。 完了を選択します。 サービス アカウントの電子メールをコピーし、Fabric の指定された接続資格情報セクションに貼り付けます。 サービス アカウントの JSON キー ファイルの内容 [サービス アカウント] ダッシュボードで、新しく作成したサービス アカウントの アクション を選択します。 [ キーの管理] を選択します。 サービス アカウントごとにキーが既にある場合は、その JSON キー ファイルの内容をダウンロードします。
サービス アカウントごとにキーがまだない場合は、[ キーの追加] と [ 新しいキーの作成] を選択します。 次に、[JSON] を選択 します。 JSON キー ファイルが自動的にダウンロードされます。 JSON キーをコピーし、Fabric ポータルの指定された接続資格情報セクションに貼り付けます。接続 新しい接続を作成します。 接続名 自動的に入力されるはずです。希望する使用名に変更してください。 ドロップダウン リストからデータベースを選択します。
ミラーリング プロセスの開始
[ミラーの構成] 画面では、データベース内のすべてのデータをデフォルトでミラーできます。
すべてのデータをミラー化すると、ミラーリングの開始後に作成された新規テーブルがミラー化されます。
必要に応じて、ミラーリングする特定のオブジェクトのみを選択します。 [すべてのデータをミラー化] オプションを無効にし、データベースから個々のテーブルを選択します。
この例では、[ すべてのデータをミラー化 ] オプションを使用します。
[ミラー データベース] を選択します。 ミラーリングが開始されます。
2 分から 5 分間待機します。 次に、[レプリケーションの監視] を選択して、状態を確認します。
数分後に、状態が [実行中] に変わります。これは、テーブルの同期が進行中であることを示します。
テーブルとそれに対応するレプリケーションの状態が見つからない場合は、数秒待ってからパネルを更新します。
テーブルの初期コピーが完了すると、[最終更新] 列に日付が表示されます。
これでデータが稼働し、Fabric 全体でさまざまな分析シナリオが利用できるようになりました。
Important
- Google BigQuery のミラーリングでは、変更リフレクションに最大 15 分の遅延があります。 これは、Google BigQuery の変更履歴機能の制限です。
- ソース データベースで確立された詳細なセキュリティはすべて、Microsoft Fabric のミラー化データベースで再構成する必要があります。
ファブリック ミラーリングの監視
ミラーを構成すると、[ミラーリングの状態] ページに移動します。 ここでは、レプリケーションの現在の状態を監視できます。
レプリケーションの状態に関する詳細については、「ファブリック ミラーリング データベース レプリケーションの監視」を参照してください。
Important
BigQuery データベース内のソース テーブルに更新がない場合、レプリケーター エンジン (BigQuery ミラーリングの変更データを実行するエンジン) は速度が低下し、1 時間ごとにテーブルのみがレプリケートされます。 最初の読み込み後にデータが予想以上に長くかかる場合は、特にソース テーブルに新しい更新プログラムがない場合は、驚かないでください。 スナップショットの後、ミラー エンジンは変更をフェッチする前に最大 15 分間待機します。これは、Google BigQuery の制限により、新しい変更を反映するのに 10 分の遅延が適用されます。 BigQuery の変更リフレクション遅延の詳細