翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
データソースと出力でサポートされている接続
DataBrew レシピジョブでは、次のデータソースに接続できます。これには、DataBrew に直接アップロードするファイルではないデータソースが含まれます。使用しているデータソースは、データベース、データウェアハウス、またはその他のものと呼ばれる場合があります。すべてのデータプロバイダーをデータソースまたは接続と呼びます。
データソースとして次のいずれかを使用してデータセットを作成できます。
DataBrew レシピジョブの出力にはAWS Glue Data Catalog、Amazon RDS でサポートされている Amazon S3、または JDBC データベースを使用することもできます。Amazon AppFlow とAWS Data Exchangeは、DataBrew レシピジョブの出力でデータストアをサポートしていません。
-
Amazon S3
S3 を使用して、任意の量のデータを保存および保護できます。データセットを作成するには、DataBrew がデータファイルにアクセスできる S3 URL を指定します。次に例を示します。
s3://your-bucket-name/inventory-data.csvDataBrew は S3 フォルダ内のすべてのファイルを読み取ることもできます。つまり、複数のファイルにまたがるデータセットを作成できます。これを行うには、次の形式で S3 URL を指定します:
s3://your-bucket-name/your-folder-name/。DataBrew は次の Amazon S3 ストレージクラスのみをサポートします。Standard、Reduced Redundancy、Standard-IA、S3 One Zone-IA。DataBrew は、他のストレージクラスのファイルを無視します。DataBrew は空のファイル (0 バイトを含むファイル) も無視します。Amazon S3 ストレージクラスの詳細については、Amazon S3 コンソールユーザーガイド」の「Amazon S3 ストレージクラスの使用」を参照してください。 Amazon S3
-
AWS Glue Data Catalog
データカタログを使用して、AWSクラウドに保存されているデータへの参照を定義できます。データカタログを使用すると、次のサービスで個々のテーブルへの接続を構築できます。
-
データカタログ Amazon S3
-
データカタログ Amazon Redshift
データカタログ Amazon RDS
-
AWS Glue
DataBrew は Amazon S3 フォルダ内のすべてのファイルを読み取ることもできます。つまり、複数のファイルにまたがるデータセットを作成できます。これを行うには、次の形式で Amazon S3 URL を指定します。
s3://your-bucket-name/your-folder-name/DataBrew で使用するには、 で定義されている Amazon S3 テーブルにAWS Glue Data Catalog、データの形式を
classification、、csvjsonまたは として識別する というテーブルプロパティを追加する必要がありますparquettypeOfDatafile。テーブルの作成時にテーブルプロパティが追加されなかった場合は、AWS Glueコンソールを使用して追加できます。DataBrew は、Amazon S3 ストレージクラス Standard、Reduced Redundancy、Standard-IA、および S3 One Zone-IA のみをサポートしています。DataBrew は、他のストレージクラスのファイルを無視します。DataBrew は空のファイル (0 バイトを含むファイル) も無視します。Amazon S3 ストレージクラスの詳細については、Amazon S3 コンソールユーザーガイド」の「Amazon S3 ストレージクラスの使用」を参照してください。 Amazon S3
適切なリソースポリシーが作成されている場合、DataBrew は他のアカウントのAWS Glue Data Catalog S3 テーブルにアクセスすることもできます。コンソールのAWS GlueData Catalog の設定タブでポリシーを作成できます。以下は、単一の 専用のポリシーの例ですAWS リージョン。
警告
これは、 のデータカタログへの
*$ACCOUNT_TO*無制限のアクセスを許可する、非常に寛容なリソースポリシーです*$ACCOUNT_FROM*。ほとんどの場合、リソースポリシーを特定のカタログまたはテーブルにロックダウンすることをお勧めします。詳細については、「 AWS Glueデベロッパーガイド」のAWS Glue「アクセスコントロールのリソースポリシー」を参照してください。場合によっては、AWS Glue DataBrewにある S3の場所
*$ACCOUNT_FROM*を指すAWS Glue Data Catalog S3 テーブル*$ACCOUNT_TO*を使用して、 でプロジェクトを作成したり、ジョブを実行したりできます*$ACCOUNT_FROM*。 S3 このような場合、 でプロジェクトとジョブを作成するときに使用する IAM ロールには、 からその S3 ロケーションのオブジェクトを一覧表示して取得するアクセス許可*$ACCOUNT_TO*が必要です*$ACCOUNT_FROM*。詳細については、「 AWS Glueデベロッパーガイド」の「クロスアカウントアクセスの付与」を参照してください。 -
-
JDBC ドライバーを使用して接続されたデータ
データセットを作成するには、サポートされている JDBC ドライバーを使用してデータに接続します。詳細については、「でのドライバーの使用AWS Glue DataBrew」を参照してください。
DataBrew は、Java Database Connectivity (JDBC) を使用して以下のデータソースを正式にサポートしています。
-
Microsoft SQL Server
-
MySQL
Oracle
-
[PostgreSQL]
-
Amazon Redshift
-
Snowflake Connector for Spark
データソースは、DataBrew から接続できる任意の場所に配置できます。このリストには、テスト済みの JDBC 接続のみが含まれているため、サポートできます。
Amazon Redshift と Snowflake Connector for Spark データソースは、次のいずれかの方法で接続できます。
テーブル名。
複数のテーブルとオペレーションにまたがる SQL クエリ。
SQL クエリは、プロジェクトまたはジョブの実行を開始するときに実行されます。
リストにない JDBC ドライバーを必要とするデータに接続するには、ドライバーが JDK 8 と互換性があることを確認してください。ドライバーを使用するには、DataBrew の IAM ロールを使用してアクセスできるバケットの S3 にドライバーを保存します。次に、データセットをドライバーファイルにポイントします。詳細については、「でのドライバーの使用AWS Glue DataBrew」を参照してください。
SQL ベースのデータセットのクエリ例:
SELECT * FROM public.customer as c JOIN public.customer_address as ca on c.current_address=ca.current_address WHERE ca.address_id>0 AND ca.address_id<10001 ORDER BY ca.address_idカスタム SQL の制限
JDBC 接続を使用して DataBrew データセットのデータにアクセスする場合は、次の点に注意してください。
-
AWS Glue DataBrewは、データセットの作成の一部として指定したカスタム SQL を検証しません。SQL クエリは、プロジェクトまたはジョブの実行を開始するときに実行されます。DataBrew は、指定したクエリを受け取り、デフォルトまたは指定された JDBC ドライバーを使用してデータベースエンジンに渡します。
-
無効なクエリで作成されたデータセットは、プロジェクトまたはジョブで使用されると失敗します。データセットを作成する前にクエリを検証します。
-
SQL の検証機能は、Amazon Redshift ベースのデータソースでのみ使用できます。
-
プロジェクトでデータセットを使用する場合は、プロジェクトのロード中のタイムアウトを避けるため、SQL クエリランタイムを 3 分未満に制限します。プロジェクトを作成する前に、クエリランタイムを確認します。
-
-
Amazon AppFlow
Amazon AppFlow を使用すると、Salesforce、Zendesk、Slack、ServiceNow などのサードパーティーの Software-as-a-Service (SaaS) アプリケーションから Amazon S3 にデータを転送できます。その後、データを使用して DataBrew データセットを作成できます。
Amazon AppFlow では、サードパーティーアプリケーションと送信先アプリケーションの間でデータを転送するための接続とフローを作成します。DataBrew で Amazon AppFlow を使用する場合は、Amazon AppFlow 送信先アプリケーションが Amazon S3 であることを確認します。Amazon S3 以外の Amazon AppFlow 送信先アプリケーションは DataBrew コンソールに表示されません。 Amazon S3 サードパーティーアプリケーションからのデータ転送と Amazon AppFlow 接続とフローの作成の詳細については、Amazon AppFlow ドキュメントを参照してください。
DataBrew のデータセットタブで新しいデータセットに接続を選択し、Amazon AppFlow をクリックすると、Amazon S3 を送信先アプリケーションとして設定されている Amazon AppFlow 内のすべてのフローが表示されます。データセットにフローのデータを使用するには、そのフローを選択します。
DataBrew コンソールでフローの作成、フローの管理、Amazon AppFlow の詳細の表示を選択すると、Amazon AppFlow コンソールが開き、これらのタスクを実行できます。
Amazon AppFlow からデータセットを作成したら、フローを実行し、データセットの詳細またはジョブの詳細を表示するときに最新のフロー実行の詳細を表示できます。DataBrew でフローを実行すると、データセットは S3 で更新され、DataBrew で使用できるようになります。
DataBrew コンソールで Amazon AppFlow フローを選択してデータセットを作成すると、次の状況が発生する可能性があります。
データが集約されていない - フロートリガーがオンデマンドで実行されるか、フルデータ転送でスケジュールどおりに実行される場合は、DataBrew データセットの作成に使用する前に、フローのデータを集約してください。フローを集約すると、フロー内のすべてのレコードが 1 つのファイルにまとめられます。トリガータイプが Run on schedule with incremental data transfer または Run on event のフローは集約を必要としません。Amazon AppFlow でデータを集約するには、フロー設定の編集 > 送信先の詳細 > 追加設定 > データ転送設定を選択します。
フローが実行されていない - フローの実行ステータスが空の場合、次のいずれかを意味します。
フローを実行するトリガーがオンデマンドで実行の場合、フローはまだ実行されていません。
フローを実行するトリガーが Run on イベントである場合、トリガーイベントはまだ発生していません。
フローを実行するトリガーがスケジュールどおりに実行される場合、スケジュールされた実行はまだ発生していません。
フローを使用してデータセットを作成する前に、そのフローの実行フローを選択します。
詳細については、「Amazon AppFlow ユーザーガイド」の「Amazon AppFlow フロー」を参照してください。 AppFlow
-
AWS Data Exchange
数百のサードパーティーデータソースから選択できますAWS Data Exchange。これらのデータソースにサブスクライブすることで、データのup-to-dateを取得できます。
データセットを作成するには、サブスクライブしているAWS Data Exchangeデータ製品の名前と、使用する権限を指定します。