17.10 - 河川流量データのオブジェクト ストア設定 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - Native Object Store 入門ガイド

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1214-171K-JPN
Language
日本語 (日本)

多くの例で、河川流量データ セットのサンプルを使用しています。U.S. Geological Surveyのご厚意により、USGS Surface-Water Data Setが提供されています。

例を実行するには、Teradataが提供するパブリック バケットの河川流量データを使用できます。または、データ セット用に小さなオブジェクト ストアを設定できます。

次の手順では、独自の外部オブジェクト ストアで河川流量データを設定する方法について説明します。

外部オブジェクト ストアは、Advanced SQL Engineにアクセスを許可するように構成されている必要があります。

外部ストレージを構成する場合は、信頼証明を外部オブジェクト ストアに設定します。これらの信頼証明はSQLコマンドで使用されます。USERおよびPASSWORD (CREATE AUTHORIZATIONコマンドで使用)およびACCESS_IDとACCESS_KEY (READ_NOSおよびWRITE_NOSで使用)でサポートされる信頼証明は、次の表に示す値に対応しています。

システム/スキーマ USER PASSWORD
AWS アクセス キーID シークレット アクセス キー
Azure/共有キー ストレージ アカウント名 ストレージ アカウント キー
Azure共有アクセス署名(SAS) ストレージ アカウント名 アカウントSASトークン
Google Cloud(S3相互運用モード) アクセス キーID シークレット アクセス キー
Google Cloud(ネイティブ) クライアントの電子メール 秘密鍵
オンプレミス オブジェクト ストア アクセス キーID シークレット アクセス キー
パブリック アクセス オブジェクト ストア <空の文字列>

空の文字列を左右の区別がない一重引用符で囲む: USER ''

<空の文字列>

空の文字列を左右の区別がない一重引用符で囲む: PASSWORD ''

次に、外部オブジェクト ストアでの信頼証明の設定について詳しく説明します。
プラットフォーム 注意
Amazon S3 IAM IAMは、アクセスキーとパスワードを使用してS3バケットを保護する代わりに使用できます。IAMを使用するS3バケットへのAdvanced SQL Engineアクセスを許可するには、バケットへのアクセスを許可するロールに対して、S3バケット ポリシーを次のアクションで設定する必要があります。
  • S3:GetObject
  • S3:ListBucket
  • S3:GetBucketLocation

WRITE_NOSの場合:

  • S3:PutObject
S3:HeadBucket、S3:HeadObject、S3:ListBucketなどの他のアクションも許可されます。
Azure BLOBストレージとAzure Data Lake Storage Gen2 アクセス キー情報を持つユーザーは、アカウント全体を完全に制御できます。また、SASはコンテナに、またはコンテナ内のオブジェクトに定義できるため、より詳細な認証方法を提供します。NOSはどちらのタイプの認証も使用するため、どのタイプのシークレットが提供されているかを知る必要はありません。
アカウントSASトークンのみがサポートされます。サービスSASトークンはエラーを生成し、拒否されます。
Google Cloud Storage Advanced SQL Engineにアクセスを許可するには、次のアクセス権が必要です。
  • storage.objects.get
  • storage.objects.list

外部オブジェクト ストア アカウントの作成手順については、クラウド ベンダーのマニュアルを参照してください。

    次の手順では、パブリック クラウド管理者の支援が必要な場合があります。

  1. Teradataがサポートする外部オブジェクト ストレージ プラットフォーム上に外部オブジェクト ストアを作成します。外部オブジェクト ストアに固有の名前を付けます。Teradataが提供する例では、バケット/コンテナはtd-usgsという名前です。バケット/コンテナ名は一意である必要があるため、td-usgs以外の名前を選択します。
  2. Amazonでは、バケットのアクセスIDおよび一致するシークレット キーを生成するか、Identity and Access Management(IAM)ユーザー信頼証明を生成します。Azureでは、td-usgsコンテナのアカウントSASトークン(サービスSASトークンではない)を生成します。Google Cloud Storageで、バケットのアクセスIDと一致するシークレット キーを生成します。
  3. https://downloads.teradata.com/のサンプル データを(NOSダウンロード データを探す)クライアント/ラップトップにダウンロードします。ZIPファイルには、CSV、JSON、およびParquetデータ形式のサンプル河川流量データが含まれています。
  4. データ ディレクトリ構造を保持するように注意して、サンプル データをバケットまたはコンテナにコピーします。例えば、次のような場所を使用します。
    • Amazon S3: /S3/YOUR-BUCKET.s3.amazonaws.com/JSONDATA
    • Azure BlobストレージおよびAzure Data Lake Storage Gen2: /az/YOUR-STORAGE-ACCOUNT.blob.core.windows.net/td-usgs/CSVDATA/
    • Google Cloud Storage: /gs/storage.googleapis.com/YOUR-BUCKET/CSVDATA/
    Amazon S3またはAzure管理コンソール、またはAWS CLIなどのユーティリティを使用して、データを外部オブジェクト ストアにコピーできます。Google Cloud Storageの場合は、gsutilツールを使用してデータを外部オブジェクト ストアにコピーできます。
  5. サンプル コードで、td-usgs、YOUR-BUCKET、およびYOUR-STORAGE-ACCOUNTをオブジェクト ストアの場所に置き換えます。
  6. YOUR-ACCESS-KEY-IDYOUR-SECRET-ACCESS-KEYを外部オブジェクト ストアのアクセス値に置き換えます。