【ノーコード】Amazon Athena のデータを複数のデータベースにレプリケーション。
常時起動のアプリケーションは、自動フェイルオーバー機能およびリアルタイムなデータアクセスを必要とします。CData Sync は、リアルタイムAmazon Athena のデータをミラーリングデータベース、上記稼働のクラウドデータベース、レポーティングサーバーなどのほかのデータベースに連携し、Windows からリモートAmazon Athena に接続し、自動的に同期を取ります。
レプリケーションの同期先の設定
CData Sync を使って、Amazon Athena をクラウド・オンプレにかかわらず複数のデータベースレプリケーションします。レプリケーションの同期先を追加するには、[接続]タブを開きます。
それぞれのデータベース向けに以下を行います:
- [同期先]タブをクリックします。
- 同期先を選択します。この記事では、SQLite を使います。
- 必要な接続プロパティを入力します。SQLite データベースにAmazon Athena をレプリケートするためにDataSource ボックスにファイルパスを入力します。
- [接続のテスト]をクリックして、正しく接続できているかをテストします。
- [変更を保存]をクリックします。
Amazon Athena 接続の設定
データソース側にAmazon Athena を設定します。[接続]タブをクリックします。
- [同期先]タブをクリックします。
- Amazon Athena アイコンをデータソースとして選択します。プリインストールされたソースにAmazon Athena がない場合には、追加データソースとしてダウンロードします。
- 接続プロパティに入力をします。
Amazon Athena 接続プロパティの取得・設定方法
それでは、早速Athena に接続していきましょう。
データに接続するには、以下の接続パラメータを指定します。
- DataSource:接続するAmazon Athena データソース。
- Database:接続するAmazon Athena データベース。
- AWSRegion:Amazon Athena データがホストされているリージョン。
- S3StagingDirectory:クエリの結果を保存するS3 フォルダ。
Database またはDataSource が設定されていない場合、CData 製品はAmazon Athena の利用可能なデータソースからすべてのデータベースのリスト化を試みます。そのため、両方のプロパティを設定することでCData 製品のパフォーマンスが向上します。
Amazon Athena の認証設定
CData 製品は幅広い認証オプションに対応しています。詳しくはヘルプドキュメントの「はじめに」を参照してみてください。
AWS キーを取得
IAM ユーザーの認証情報を取得するには、以下のステップお試しください。
- IAM コンソールにサインインします。
- ナビゲーションペインでユーザーを選択します。
- ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してからセキュリティ認証情報タブに移動します。
AWS ルートアカウントの資格情報を取得するには、以下のステップをお試しください。
- ルートアカウントの認証情報を使用してAWS 管理コンソールにサインインします。
- アカウント名または番号を選択します。
- 表示されたメニューでMy Security Credentials を選択します。
- ルートアカウントのアクセスキーを管理または作成するには、Continue to Security Credentials をクリックし、[Access Keys]セクションを展開します。
その他の認証オプションについては、ヘルプドキュメントの「Amazon Athena への認証」を参照してください。
- [接続のテスト]をクリックして、正しく接続できているかをテストします。
- [変更を保存]をクリックします。
レプリケーションを実行するクエリの設定
CData Sync はレプリケーションをコントロールするSQL クエリを簡単なGUI 操作で設定できます。レプリケーションジョブ設定には、[ジョブ]タブに進み、[ジョブを追加]ボタンをクリックします。 次にデータソースおよび同期先をそれぞれドロップダウンから選択します。
テーブル全体をレプリケーションする
テーブル全体をレプリケーションするには、[テーブル]セクションで[テーブルを追加]をクリックします。表示されたテーブルリストからレプリケーションするテーブルをチェックします。
テーブルをカスタマイズしてレプリケーションする
SQL クエリを使って、レプリケーションをカスタマイズすることができます。REPLICATE ステートメントは、データベースにテーブルをキャッシュして、保持するハイレベルなコマンドです。Amazon Athena API でサポートされているSELECT クエリを使うことができます。レプリケーションのカスタマイズには、[カスタムクエリを追加]をクリックして、カスタムクエリステートメントを定義します。
次のステートメントは、Amazon Athena のテーブルのアップデートを差分更新でキャッシュします:
REPLICATE Customers;
特定のデータベースを更新するために、レプリケーションクエリを含むファイルを指定することもできます。レプリケーションクエリをセミコロンで区切ります。複数のAmazon Athena アカウントを同じデータベースに同期しようとする際には、以下のオプションが便利です:
-
REPLICATE SELECT ステートメントで別のprefix を使う:
REPLICATE PROD_Customers SELECT * FROM Customers;
-
別の方法では、別のスキーマを使う:
REPLICATE PROD.Customers SELECT * FROM Customers;
レプリケーションのスケジュール起動設定
[スケジュール]セクションでは、レプリケーションジョブの自動起動スケジュール設定が可能です。反復同期間隔は、15分おきから毎月1回までの間で設定が可能です。
レプリケーションジョブを設定したら、[変更を保存]ボタンを押して保存します。Amazon Athena のオンプレミス、クラウドなどのデータベースへのレプリケーションジョブは一つではなく複数を作成することが可能です。