Amazon Web Services ブログ

Amazon S3 への Amazon RDS Snapshot Export によるデータレイクの構築とデータ保持ポリシーの実装

 Amazon Relational Database Service (RDS) は、クラウドでリレーショナルデータベースを簡単に作成、運用、およびスケールするために役立ちます。2020 年 1 月、AWS は Amazon RDS for MySQL、Amazon RDS for PostgreSQL、Amazon RDS for MariaDB、Amazon Aurora PostgreSQL、および Amazon Aurora MySQL からのスナップショットを Apache Parquet 形式で Amazon S3 にエクスポートする機能を発表しました。これで、主要なトランザクションアプリケーションに影響を及ぼすことなく、ダウンストリームのレポート作成および分析アプリケーションが本番データベースからのデータを利用できるようになります。 データベース管理者とデータ所有者は、ビジネスインテリジェンスレポートの作成者、機械学習開発者、またはエンタープライズダッシュボード作成者から、データベーステーブルへのアクセス提供のリクエストを絶えず受け取っています。ここでの課題は、データ上で動作するビジネスクリティカルなアプリケーションに影響を及ぼさない方法でデータにアクセスできるようにすることです。リードレプリカを作成することもソリューションのひとつですが、ダウンストリームアプリケーションリクエストに対応するためにプロビジョニングされたコンピューティング性能を維持しなければなりません。 さらに厄介なことに、レポート作成システムには以前のタイムスタンプ時点でのデータのコピーを必要とするものもあります。これまでは、スナップショットから復元することで新しい RDS インスタンスを作成し、レポート作成システムがこの新しいインスタンスにアクセスできるようにすることが、これを実行する唯一の方法でしたが、 Amazon S3 への Amazon RDS Snapshot Export のローンチにより、リクエストされたテーブルを適切なスナップショットから S3 バケットにエクスポートするプロセスを作成し、ダウンストリームアプリケーションに Parquet ファイルへのアクセスを提供するだけで実行できるようになりました。 この記事では、Amazon RDS のスナップショットから Amazon S3 にエクスポートファイル […]

Read More

AWS DeepComposer での独自のデータを使った音楽ジャンルモデルの作成

 AWS DeepComposer は、生成 AI を教え、敵対的生成ネットワーク (GAN) を使って提供されたメロディを完全にオリジナルな曲に変換する AWS の教育サービスです。AWS DeepComposer を使用することにより、事前訓練済みの音楽ジャンルモデル (ジャズ、ロック、ポップ、シンフォニー、ジョナサン・コールトンなど) のひとつを使用する、または独自のモデルをトレーニングできます。音楽データファイルは、カスタム音楽ジャンルモデルをトレーニングする一環として NumPy オブジェクトに保存します。この記事は、GitHub にある Lab 2 – Train a custom GAN model のトレーニング手順に沿って、MIDI ファイルを AWS DeepComposer に適切なトレーニング形式に変換する方法について説明します。 このユースケースでは、レゲエ音楽ジャンルモデルをトレーニングするために独自の MIDI ファイルを使用します。源をジャマイカ島に発するレゲエ音楽は、通常、ベースギター、ドラム、および打楽器を使用しますが、この記事の手順は汎用性が高いため、どの音楽ジャンルにでも使用できます。 トレーニングデータを生成するためのデータ処理 トレーニングデータの開始状態となるのが MIDI (.mid) ファイルです。ソフトウェアはファイルを生成 (および読み込み) し、ファイルには曲譜と再生サウンドに関するデータが含まれています。データ処理の一環として、MIDI ファイルを NumPy アレイに変換し、それらを単一の .npy ファイルでディスクに永続化する必要があります。以下の図は、この変換プロセスを示すものです。 .csv ファイルは、機械学習でのデータの保存用に幅広く使用されていますが、.npy ファイルはトレーニングプロセスにおけるより高速な読み込み用に高度に最適化されています。.npy ファイルの最終シェイプは (x、32、128、4) になります。これは、(number of samples, number of […]

Read More

AWS Batch および Amazon CloudWatch ルールにより Amazon RDS ジョブをスケジュールおよび実行する

 従来、データベース管理者と開発者は、データベースが実行されているホスト上でシステム cron を使用して、スクリプトをデータベースに対して実行するようにスケジュールしています。Amazon Relational Database Service (RDS) は、マネージドデータベースサービスとして、基盤となるインフラストラクチャへのアクセスを提供しないため、そのようなワークロードをオンプレミスから移行する場合は、ジョブを移動する必要があります。この記事は、ジョブを一元的にスケジュールおよび実行する代替方法について説明します。 AWS Batch は、コンピューティングジョブのプロビジョニング、管理、モニタリング、スケーリングの複雑さを抽象化し、AWS でジョブを簡単かつ効率的に実行できるようにするマネージドサービスです。さらに、AWS Batch では、選択した言語を使用してジョブを構築し、それを Docker コンテナとしてデプロイできます。 この記事では、AWS Batch ルールと Amazon CloudWatch ルールを組み合わせることで、動的にリソースをプロビジョニングし、PostgreSQL データベースで関数またはストアドプロシージャをスケジュールして実行する方法を示します。同じプロセスを使用して、Amazon RDS データベースでジョブを実行できます。 ソリューションの概要 次の図は、ソリューションのアーキテクチャを示しています。 前提条件 始める前に、以下の前提条件を満たす必要があります。 マシンに Docker Desktop をインストールします。 マシンに git をインストールします。 AWS CLI をセットアップして設定します。手順については、「AWS CLI のインストール」を参照してください。 AWS CloudFormation テンプレートの入力パラメータとして、デフォルトのサブネットとセキュリティグループのカンマ区切りのリストを指定します。 チュートリアル このチュートリアルの概要については、次の手順をご覧ください。 AWS コードサンプルリポジトリからプロジェクトをクローンする CloudFormation テンプレートをデプロイして必要なサービスを作成する AWS CloudFormation コンソールに移動し、リソースが作成されていることを確認します データベーススクリプトを実行し、必要なテーブルと関数を作成する […]

Read More

Amazon Elasticsearch Service ドメインを設定するベストプラクティス

 Amazon Elasticsearch Service (Amazon ES) は、AWS クラウドで Elasticsearch クラスターのデプロイ、保護、スケール、監視を簡単に行うことができる完全マネージド型サービスです。Elasticsearch は分散型データベースソリューションであり、計画や実行が困難な場合があります。この記事では、Amazon ES ドメインをデプロイするためのベストプラクティスについていくつか説明します。 最も重要なプラクティスは、繰り返し調整を行うことです。これらのベストプラクティスに従えば、基本レベルの Amazon ES のデプロイを計画できます。Elasticsearch はワークロードごとに異なる動作をします。レイテンシーとスループットは、主にリクエストの組み合わせ、リクエスト自体、実行するデータまたはクエリによって大部分が決定されます。ワークロードがどのように動作するかを 100% 予測できる確定的なルールはありません。デプロイの調整と改善、ドメインの動作の監視を行い、状況に応じて調整するための時間を計画に入れてください。

Read More

Alexa が Amazon Translate の使用により、海外のお客様の獲得を拡大

 Amazon Alexa は、15 のロケールで利用でき、8 言語に対応しています。Alexa が異なる言語を理解して対応するには、新しい文法規則を学習する必要があります。また、Alexa に搭載されるコンテンツを新しい言語に翻訳する必要があります。さらに、Alexa は、新しいサッカーリーグ、地域の有名人、重要な歴史上の出来事など、国固有のトピックについて学ぶ必要があります。 この投稿では、Alexa が Amazon Translate を使用して数多くの質問をさまざまな言語で理解し、意味の通じる回答を迅速に提供する方法について説明します。 Amazon Translate とは Amazon Translate は、高品質な翻訳を手頃な価格で迅速に提供するニューラル機械翻訳サービスです。ニューラル機械翻訳とは、深層学習モデルを使用して正確で自然な音声の翻訳を提供する、言語翻訳の一種です。Amazon Translate でサポートされている言語の詳細については、「サポートされている言語」を参照してください。 Alexa とは Alexa は、Amazon 製かサードパーティー製かを問わず、何億ものデバイスで利用できる Amazon のクラウドベースの音声サービスです。Alexa によって自然な音声による体験を構築でき、日常的に使用するテクノロジーをさらに直感的に操作できます。 Alexa による Amazon Translate の使用方法 Alexa は毎日新しいタイプの質問を受けています。Alexa に 1 つのインテントを認識する学習をさせるには、そのインテントを呼び出すための発話リストを手作業で作成しなければならない場合があります。詳細については、「Best Practices for Sample Utterances and Custom Slot Type Values」を参照してください。 たとえば、以下のコードはインテント GetStockPrice に対する数例の発話リストです。 {会社} の株価を知りたいのですが {会社} […]

Read More

Amazon FSx for Windows ファイルサーバー – ストレージサイズおよびスループットキャパシティーのスケーリング

 Amazon FSx for Windows ファイルサーバーは、サーバーメッセージブロック (SMB、Server Message Block) プロトコル経由でアクセスできる、信頼性の高いフルマネージドファイルストレージを提供しています。Windows Server 上に構築されており、オンプレミスの Microsoft Windows ファイルサーバーの運用と一貫性のある、ユーザークォータ、エンドユーザーファイルの復元、Microsoft Active Directory 統合などの幅広い管理機能を提供します。本日、ストレージキャパシティーのスケーリングとスループットキャパシティーのスケーリングの 2 つの新機能を発表いたします。ストレージキャパシティーのスケーリングにより、データセットの増加に応じてファイルシステムのサイズを増やすことができます。スループットキャパシティーは双方向であり、スループットを動的に調整して、パフォーマンスを微調整し、コストを削減できます。ストレージキャパシティーを拡張する機能を使用すると、データセットの増加に応じてストレージサイズを調整できるため、ファイルシステムの作成時にデータセットの増加を心配する必要がありません。スループットキャパシティーを変更する機能を使用すると、周期的なワークロードまたはワンタイムバーストのスループットキャパシティーを動的に調整して、データ移行などの時間が重要な要素となる目標を達成できます。 ファイルシステムを作成するときに、[ストレージキャパシティー] と [スループットキャパシティー] を指定します。 SSD のストレージキャパシティーは 32 GiB〜65,536 GiB の範囲で指定でき、HDD のキャパシティーは 2,000 GiB〜65,536 GiB の範囲で指定できます。スループットキャパシティーを使用すると、すべての Amazon FSx ファイルシステムに、ファイルシステムの作成時に設定するスループットキャパシティーを有することになります。スループットキャパシティーにより、ファイルシステムをホストするファイルサーバーが、これにアクセスするクライアントにファイルデータを提供できる速度が決まります。より高いレベルのスループットキャパシティーには、ファイルサーバーにデータをキャッシュするためのより多くのメモリが付属し、より高いレベルの IOPS をサポートします。 このリリースでは、AWS マネジメントコンソール内のボタンをクリックするだけで、ストレージキャパシティーを拡大したり、ファイルシステムのスループットキャパシティーを拡大/縮小したりすることができるほか、AWS ソフトウェア開発キット (SDK) またはコマンドラインインターフェイス (CL) ツールを使用したりできます。ファイルシステムは、スケーリングの進行中にオンラインで利用でき、ストレージのスケーリングのためにファイルシステムに完全にアクセスできます。スループットのスケーリング中、Amazon FSx for Windows はファイルシステムのファイルサーバーを切り替えます。そのため、マルチ AZ ファイルシステムで自動フェイルオーバーとフェイルバックが表示されます。 それでは、新機能を概観してみましょう。最初に AWS […]

Read More

ゴールドマンサックスが AWS PrivateLink を使用して、Amazon MSK クラスターへのクロスアカウント接続を構築した方法

 このゲスト投稿では、AWS アカウントや Amazon Virtual Private Cloud (Amazon VPC) の枠を越えて AWS PrivateLink を使用して、Amazon Managed Streaming for Apache Kafka にアクセスする方法をご紹介します。さらに、ゴールドマンサックスのトランザクションバンキングチーム (TxB) がクロスアカウントへのアクセスに選んだ方法、その選択の理由、TxB が Amazon MSK でセキュリティ要件を満たす方法についても解説します。この投稿はゴールドマンサックスの実装をユースケースとして使用し、Amazon MSK 環境の実装時における一般的なガイダンスを目的としています。 概要 Amazon MSK は、Apache Kafka を使ってストリーミングデータを処理するアプリケーションを、簡単に構築および実行できるようにする完全マネージドサービスです。MSK クラスターを作成すると、同じ Amazon VPC 内の参加者がクラスターリソースを利用できます。このため、VPC の特定のサブネット内でクラスターを起動し、クラスターをセキュリティグループに関連付け、Elastic Network Interface (ENI) を介して VPC のアドレススペースから IP アドレスを添付できます。クライアントとクラスター間のネットワークトラフィックは AWS ネットワーク内に留まり、デフォルトではクラスターへのインターネットアクセスはできません。 同じまたは異なる AWS アカウント内の別の VPC にある MSK クラスターへのクライアントアクセスを許可する必要がある場合があります。VPC […]

Read More

Okta SSO で Amazon EKS を管理する

 Amazon Elastic Kubernetes Service (Amazon EKS) を使用すれば、Kubernetes を使ってコンテナ化されたアプリケーションを簡単にデプロイ、管理、スケーリングできます。Okta は、開発者がユーザーアカウントとユーザーアカウントデータを作成、編集、安全に保存し、それらを 1 つまたは複数のアプリケーションに接続できるようにする API サービスです。Okta は、スケーラブルで安全な方法で組織の AWS マネジメントコンソールまたは AWS CLI へのアクセスを提供するのに役立ちます。Okta では、Active Directory または LDAP 認証情報を使用して AWS サービスを使用できます。 Okta が提供する ID を使用して Amazon EKS クラスターを認証する方法を示します。Amazon EKS は、IAM を使用して Kubernetes クラスターに認証を提供しますが、認証はネイティブの Kubernetes ロールベースアクセスコントロール (RBAC) に依拠しています。つまり、IAM は有効な IAM エンティティの認証にのみ使用されます。Amazon EKS クラスターの Kubernetes API とやり取りするためのすべての権限は、ネイティブの Kubernetes RBAC システムを通じて管理されます。 EKS […]

Read More

Amazon S3 暗号化を S3 マネージドから AWS KMS に変更する

 Amazon Simple Storage Service (Amazon S3) を使用するお客様は、サーバー側のオブジェクト暗号化 (SSE) に S3 マネージド暗号化キー (SSE-S3) を利用することがよくあります。多くのお客様の場合、SSE-S3 を使用することにより、データを保護するためのセキュリティ要件を満たしています。一方で、一部のお客様の場合、最初は SSE-S3 が要件を満たしていたはずが、時間の経過とともに要件が変更された可能性があります。たとえば、顧客が別の標準セットに対する準拠を必要とする新しいビジネスを拡張している場合があります。別の例として、分析を使用するお客様の多くは、機密データ以外を使用して概念実証を実行することから始めます。分析プラットフォームから価値を引き出すにつれて、さまざまなデータソースからさらに多くのデータを追加し、このデータ集約によって分類が変更されることがよくあります。暗号化キーにアクセスできるユーザーをより詳細に制御できるようにすることで、暗号化キーを処理するための追加制御を実装しなければならない場合があります。また、ログ記録と監査を分離したり、ストレージと暗号化を別々に認証するための PCI-DSS コンプライアンス要件をサポートしたりすることもできます。AWS マネージドキーとカスタマーマネージドキーの違いについては、このブログ記事をご覧ください。 より強力なセキュリティとコンプライアンスの要件を満たすために、一部のお客様は、暗号化モデルを SSE-S3 から SSE-KMS に変更したいと思う場合があります。SSE-KMS は、暗号化に AWS Key Management Service (AWS KMS) を使用します。そうすることで、許容が大きすぎるポリシーからの保護など、いくつかの追加利点を提供できます。たとえば、個々のユーザーやロールではなく、過度に広いデータへのアクセスを許可するバケットポリシーを追加します。KMS キーを使用して暗号化を実装することにより、リソースにアクセスする者は、Amazon S3 ポリシーアクセスと、データを復号化するための KMS キーへのアクセスを必要とします。カスタマーマネージドキーで AWS KMS を使用することを選択したお客様には、追加のコンプライアンス要件をサポートできる次の利点もご利用いただけます。 キーの所有権を維持してアクセスを取り消し、データへのアクセスを不可能にします。 独自のコンプライアンス要件に合わせて、AWS KMS コンソールから監査可能なカスタマーマネージド CMK を作成、ローテーション、無効化することができます。 AWS KMS のセキュリティ管理は、暗号化関連のコンプライアンス要件を満たすのに役立ちます。 この記事では、4 つのことを説明します。 暗号化に KMS キーを使用するよう、バケットにデフォルトの暗号化を設定する方法。 […]

Read More

分散型可用性グループを使用したマルチリージョン SQL Server のデプロイ

 SQL Server のマルチリージョンアーキテクチャは、多くの場合、お客様と連携する際に関心を集めるトピックです。SQL Server のデプロイにマルチリージョンアーキテクチャアプローチを採用する根本的な理由は次のとおりです。 ビジネス継続性と災害復旧 地理的に分散したお客様の事業所とエンドユーザーのためのレイテンシーの改善 この投稿では、2 つ以上の AWS リージョンにまたがる可用性の高い SQL Server のデプロイを効果的に設計するためのアーキテクチャパターンについて説明します。また、マルチリージョンアプローチを使用して読み取りワークロードをスケールアウトし、グローバルに分散したエンドユーザーのためにレイテンシーを改善する方法についても学びます。 アーキテクチャ: 従来的かつ最適 この投稿では、マルチリージョンの Always On 可用性グループの従来のアプローチと、マルチリージョンの分散型可用性グループの最適なアプローチの 2 つのアーキテクチャについて説明します。 マルチリージョンの Always On 可用性グループ 従来のアプローチでは、リージョン間 VPC ピアリング接続を確立し、単一の Windows Server Failover Cluster (WSFC) が 2 つのリージョンにまたがるようにして、これら 2 つのリージョンのノードで Always On 可用性グループのデプロイを構築できます。次の図は、このアーキテクチャを示しています。 このアーキテクチャでは、リージョン A がプライマリレプリカをホストします。同期セカンダリレプリカもリージョン A でホストされています。プライマリレプリカはリージョン A の AZ1 にあり、同期セカンダリレプリカは AZ2 にあります。データ転送はレプリカ間で同期され、フェイルオーバーモードは自動フェイルオーバーです。AZ1 の接続障害またはその他の障害が発生した場合、自動フェイルオーバーが開始され、AZ2 […]

Read More