
始める前に
- ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
- ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
- 画面左上の [ラボを開始] をクリックして開始します
Create the connection resource
/ 20
Set up access to a Cloud Storage data lake
/ 30
Create the BigLake table
/ 20
Create the external table
/ 10
Update external table to Biglake table
/ 20
BigLake は、データ ウェアハウスとデータレイクのデータアクセスを簡素化する統合ストレージ エンジンです。マルチクラウド ストレージとオープン フォーマット全体に対し、一貫した詳細なアクセス制御を行えます。
BigLake により、BigQuery の行レベル、および列レベルのきめ細かいセキュリティが、データが所在するオブジェクト ストア(Amazon S3、Azure Data Lake Storage Gen2、Google Cloud Storage など)のテーブルにも適用されます。アクセス権の委任を介して、テーブルへのアクセスが基盤となるクラウド ストレージ データから切り離されます。この機能を利用することで、組織内のユーザーやパイプラインに対して、テーブル全体へのアクセス権を与えるのではなく、行および列レベルのアクセス権を安全に付与できます。
BigLake テーブルを作成し終えたら、そのテーブルに対して他の BigQuery テーブルと同じようにクエリを実行できます。BigQuery では行および列レベルでのアクセス制御が適用されており、各ユーザーは自身にアクセス権があるデータのみを見ることができるようになっています。BigQuery API を介したデータアクセスのすべてにガバナンス ポリシーが適用されます。たとえば、BigQuery Storage API を使用すると、Apache Spark のようなオープンソースのクエリエンジンを使って、自身にアクセス権があるデータにアクセスできます。以下に図解します。
このラボでは、次の作業を行います。
こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。
このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるダイアログでお支払い方法を選択してください。 左側の [ラボの詳細] ペインには、以下が表示されます。
[Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。
ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
[ラボの詳細] ペインでもユーザー名を確認できます。
[次へ] をクリックします。
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
[ラボの詳細] ペインでもパスワードを確認できます。
[次へ] をクリックします。
その後次のように進みます。
その後、このタブで Google Cloud コンソールが開きます。
Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。
Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン をクリックします。
ウィンドウで次の操作を行います。
接続した時点で認証が完了しており、プロジェクトに各自の Project_ID、
gcloud
は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。
出力:
出力:
gcloud
ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。
BigLake テーブルは接続リソースを使って Google Cloud Storage にアクセスします。接続リソースはプロジェクト内の 1 つの特定のテーブル、または任意の複数のテーブルに関連付けることができます。
ナビゲーション メニューから、[BigQuery] > [BigQuery Studio] にアクセスします。[完了] をクリックします。
接続を作成するには、[+ 追加]、[外部データソースへの接続] の順にクリックします。
[接続 ID] に「my-connection
」と入力します。
[ロケーション タイプ] で [マルチリージョン] を選択し、プルダウンから [US(米国の複数のリージョン)] を選択します。
[接続を作成] をクリックします。
作成した接続の情報を確認するには、ナビゲーション メニューでその接続を選択します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このセクションでは、新しい接続リソースに Cloud Storage データレイクへの読み取り専用アクセス権を付与します。これにより、BigQuery がユーザーに代わって Cloud Storage ファイルにアクセスできるようになります。接続リソース サービス アカウントに Storage オブジェクト閲覧者の IAM ロールを付与することをおすすめします。これにより、サービス アカウントが Cloud Storage バケットにアクセスできるようになります。
ナビゲーション メニューから、[IAM と管理] > [IAM] にアクセスします。
[+ アクセス権を付与] をクリックします。
[新しいプリンシパル] フィールドに、前の手順でコピーしたサービス アカウント ID を入力します。
[ロールを選択] フィールドで、[Cloud Storage]、[Storage オブジェクト閲覧者] の順に選択します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
以下の例では CSV ファイル形式を使用していますが、制限事項に記載されているとおり、BigLake でサポートされているものであればどの形式でも使用可能です。BigQuery でのテーブルの作成に慣れている方であれば、ここでのプロセスも同様に行えます。唯一の違いとして、ここでは関連するクラウド リソースの接続を指定します。
前のステップでスキーマを指定しておらず、サービス アカウントにバケットへのアクセス権を付与していなかった場合、このステップは失敗してアクセス拒否のメッセージが通知されます。
再び [BigQuery] > [BigQuery Studio] にアクセスします。
プロジェクト名の隣にある 3 つの点をクリックし、[データセットを作成] を選択します。
[データセット ID] には「demo_dataset
」と入力します。
[ロケーション タイプ] で [マルチリージョン] を選択し、プルダウンから [US(米国の複数のリージョン)] を選択します。
その他の項目はデフォルトのままにし、[データセットを作成] をクリックします。
データセットの作成を終えたら、既存のデータセットを Cloud Storage から BigQuery にコピーできるようになります。
[参照] をクリックしてデータセットを選択します。[customer.csv
ファイルを BigQuery にインポートするために選択して [選択] をクリックします。
[送信先] で、正しいラボ プロジェクトを選択していて、demo_dataset を使用していることを確認します。
テーブル名には「biglake_table
」を使用します。
[テーブルタイプ] を [外部テーブル] に変更します。
[Cloud リソース接続を使用して BigLake テーブルを作成する] チェックボックスをオンにします。
接続 ID として [us.my-connection] が選択されていることを確認します。構成は次のようになります。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
BigLake テーブルを作成し終えたら、任意の BigQuery クライアントを使ってクエリを送信できるようになります。
biglake_table のプレビュー ツールバーから、[クエリ] > [新しいタブ] をクリックします。
次のコマンドを実行し、BigQuery エディタを介して BigLake テーブルにクエリを実行します。
[実行] をクリックします。
結果のテーブルにすべての列とデータが表示されていることを確認します。
作成した BigLake テーブルは、BigQuery テーブルと同様の方法で管理できます。BigLake テーブルのアクセス制御ポリシーを作成するには、まず BigQuery でポリシータグの分類体系を設定します。次に、そのポリシータグを機密性の高い行または列に適用します。このセクションでは、列レベルのポリシーを作成します。行レベルのセキュリティの設定方法については、行レベルのセキュリティ ガイドをご覧ください。
これらの目的のために、
ここでは、作成したポリシータグを使用して、BigQuery テーブル内の特定の列へのアクセスを制限します。この例では、住所、郵便番号、電話番号といった機密情報へのアクセスを制限します。
ナビゲーション メニューから、[BigQuery] > [BigQuery Studio] にアクセスします。
[demo-dataset] > [biglake_table] に移動し、テーブルをクリックしてテーブルのスキーマページを開きます。
[スキーマを編集] をクリックします。
[address]、[postal_code]、[phone] の隣にあるチェックボックスをオンにします。
[ポリシータグを追加] をクリックします。
[
[選択] をクリックします。
列にポリシータグが付いたはずです。
[保存] をクリックします。
テーブル スキーマが以下のようになっていることを確認します。
biglake_table のクエリエディタを開きます。
次のコマンドを実行し、BigQuery エディタを介して BigLake テーブルにクエリを実行します。
[実行] をクリックします。
アクセス拒否のエラーが通知されるはずです。
今回のクエリは問題なく実行され、アクセス権のある列が返されるはずです。この例は、BigQuery を介して適用される列レベルのセキュリティを、BigLake テーブルにも適用できることを示しています。
既存のテーブルをクラウド リソース接続に関連付けることによって、既存のテーブルを BigLake テーブルにアップグレードできます。フラグと引数の全一覧については、bq update
と bq mkdef
をご覧ください。
[demo_dataset] の隣にある 3 つの点をクリックし、[テーブルを作成] をクリックします。
[ソース] の [テーブルの作成元] で、[Google Cloud Storage] を選択します。
[参照] をクリックしてデータセットを選択します。[invoice.csv
ファイルを BigQuery にインポートするために選択して [選択] をクリックします。
[送信先] で、正しいラボ プロジェクトを選択していて、demo_dataset を使用していることを確認します。
テーブル名には「external_table
」を使用します。
[テーブルタイプ] を [外部テーブル] に変更します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
ナビゲーション メニューから、[BigQuery] > [BigQuery Studio] にアクセスします。
[demo-dataset] に移動して、[external_table] をダブルクリックします。
[詳細] タブを開きます。
[外部データ構成] で、テーブルが正しい接続 ID を使用していることを確認します。
これで、既存の外部テーブルをクラウド リソース接続に関連付けることにより、BigLake テーブルにアップグレードできました。
このラボでは、接続リソースを作成し、Cloud Storage データレイクへのアクセスを設定し、そこから BigLake テーブルを作成しました。続いて、BigQuery を介して BigLake テーブルにクエリを実行し、列レベルのアクセス制御ポリシーを設定しました。最後に、接続リソースを使用して既存の外部テーブルを BigLake テーブルに更新しました。
BigLake への理解をさらに深めるために、以下のドキュメントをぜひご覧ください。
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2024 年 1 月 16 日
ラボの最終テスト日: 2024 年 1 月 16 日
Copyright 2025 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
1 回に 1 つのラボ
既存のラボをすべて終了して、このラボを開始することを確認してください