- Print
- PDF
データストアの連携・認証 - カスタムデータベース連携
- Print
- PDF
COMETAでは、データベース系サービスにも連携できます。
データベース内の階層構造を記述したCSVファイルをAmazon S3バケットに格納することで、COMETA上にデータストアを追加できます。
対応するデータベース
- MySQL
- PostgreSQL
- Amazon Redshift
- Amazon Athena
- Databricks
- Oracle Database
- Microsoft SQL Server
- Treasure Data
上記以外のデータベースからデータストアを追加したい場合は、その他のサービスを選択してください。
制約
カスタムデータベース連携を利用して連携したデータストアは、一部COMETA上の機能を利用できません。
詳しくは、COMETA対応機能一覧を参照ください。
事前準備
CSVファイルの用意
データベース系サービスのデータストアを作成するためには、あらかじめデータベース・スキーマ・テーブルの3層構造と、各テーブルのカラムに関する情報を、CSVファイル形式で記述する必要があります。
以下の形式で記述してください。
本項で紹介するフォーマットに適合するデータを生成するためのクエリサンプルを、対応データベースごと紹介しています。
カスタムデータベース連携用クエリサンプルを参照ください。
テーブル用ファイルのフォーマット
必須項目はNullまたは空文字とした場合にエラーとなります。
header名 | 必須 | 説明 | 制約 |
---|---|---|---|
table_catalog | ✓ | データベース名を入力します。 COMETA上で第1階層のアセットとして扱われます。 | 最大255文字 |
table_schema | ✓ | スキーマ名を入力します。 COMETA上で第2階層のアセットとして扱われます。 | 最大255文字 |
table_name | ✓ | テーブル名を入力します。 COMETA上で第3階層のアセット(テーブル)として扱われます。 | 最大255文字 |
table_type | ✓ | テーブルタイプを入力します。BASE TABLE やVIEW などの値を入力してください。 | 最大255文字 |
comment | - | コメントを入力できます。 この列に記述されたテキストは、該当テーブルのメタデータとして登録され、アセット検索における検索対象文字列となります。 | 最大65,535byte |
カラム用ファイルのフォーマット
必須項目はNullまたは空文字とした場合にエラーとなります。
header名 | 必須 | 説明 | 制約 |
---|---|---|---|
table_catalog | ✓ | データベース名を入力します。 テーブル用ファイルの table_catalog と値を一致させてください。 | 最大255文字 |
table_schema | ✓ | スキーマ名を入力します。 テーブル用ファイルの table_schema と値を一致させてください。 | 最大255文字 |
table_name | ✓ | テーブル名を入力します。 テーブル用ファイルの table_name と値を一致させてください。 | 最大255文字 |
column_name | ✓ | カラム名を入力します。 COMETA上でアセット(カラム)として扱われます。 | 最大255文字 |
ordinal_position | ✓ | カラムの順序を整数値で入力します。 同一テーブル内でユニークな値となるように入力してください。 | 整数値 |
column_default | - | カラムのデフォルト値を入力できます。 | 最大255文字 |
is_nullable | ✓ | カラムの値としてNullを許容するかどうかを入力します。YES やNO といった値を入力してください。 | 最大255文字 |
data_type | ✓ | カラムのデータ型を入力します。bigint やchar などの値を入力してください。 | 最大255文字 |
comment | - | コメントを入力できます。 この列に記述されたテキストは、該当テーブルのメタデータとして登録され、アセット検索における検索対象文字列となります。 | 最大65,535byte |
CSVファイルに関する制約
UTF-8を推奨しています。
UTF-8以外の文字コードの場合、一部文字が読み取れないことがあります。
CSVファイルの格納
Amazon S3バケットを用意し、作成したCSVファイルを格納してください。
なお、格納したS3バケットのパスはメモしてください。
IAMロールの作成
COMETAは、S3バケットに接続する際のAWS認証方式として、IAMロールを利用します。
なお、データ転送時に一時的な認証情報を取得するため、お客様が管理するAWSのIAMロールにて、
COMETAのAWSアカウントを信頼されたエンティティタイプとして登録いただく必要があります。
以下の手順に従い、IAMロールを作成してください。
- AWSのIAM Management Console画面より、ロール>ロールを作成をクリックします。
- 信頼されたエンティティを選択にて、以下の通り設定します。
- 信頼されたエンティティタイプ:
- AWSアカウントを選択します。
- AWSアカウント:
- 別のAWSアカウントを選択し、アカウント IDにはカスタムデータベース連携画面に表示されているCOMETAのAWSアカウントIDを入力します。
- 外部 ID を要求するを有効にし、外部IDには任意の文字列を入力します。入力した文字列はメモしてください。
- 信頼されたエンティティタイプ:
- 許可を追加にて、任意に設定します。
- 名前、確認、および作成にて、任意に設定します。
- 作成したIAMロールの詳細画面にて、ARNをコピーします。
権限の付与
作成したIAMロールに対して権限を付与してください。
付与が必要な権限は、以下のとおりです。
s3:GetObject
COMETA側の設定
項目名 | 必須 | 内容 |
---|---|---|
ロールARN | ✓ | 作成したIAMロールのARNを入力します。 ARNはAWSコンソール上の該当のIAMロールの詳細ページよりコピーできます。 |
COMETAのAWSアカウントID | - | IAMロールを作成する際に必要となります。 詳しくは、IAMロールの作成を参照ください。 |
外部ID | ✓ | IAMロールの作成時に入力した外部IDを入力します。 |
バケット | ✓ | CSVファイルが格納されているS3バケットを入力します。 |
テーブル用ファイルのパスプレフィックス | ✓ | テーブル用のCSVファイルが格納されているS3バケットのパスを入力します。 なお、末尾には / を入力しないでください。 |
カラム用ファイルのパスプレフィックス | ✓ | カラム用のCSVファイルが格納されているS3バケットのパスを入力します。 なお、末尾には / を入力しないでください。 |
COMETA側の設定が完了すると、CSVファイルの内容が読み込まれ、データストアが追加されます。
追加されたデータストアは、データストア連携管理の一覧画面、およびアセット情報画面にて確認できます。
なお初回の読み込み以降、S3上のCSVファイルの読み込みとそれに伴うデータストアの更新は、日次で実行されます。
補足事項
アセットの削除
COMETA上のデータストア内に格納されるアセットは、常にCSVファイルの記述内容と対応します。
そのため、不要なアセットがある場合は、CSVファイルから該当アセットの行を削除してください。
CSVファイルに記述されていないアセットは、次回データストアの更新後にCOMETA上から削除されます。