Amazon Web Services ブログ

Amazon Redshift マテリアライズドビューで ELT と BI クエリを高速化

 Amazon Redshift のマテリアライズドビュー機能は、Amazon QuickSight などのビジネスインテリジェンス (BI) ツールからのダッシュボードクエリといった反復または予測可能なワークロードで、大幅に高速なクエリパフォーマンスを実現するために役立ちます。これは、ETL (抽出、変換、ロード) データ処理も高速化およびシンプル化します。マテリアライズドビューは、頻繁に使用される事前計算を保存し、それらをシームレスに使用して後続の分析クエリでの低レイテンシーを達成するために利用できます。 この記事では、マテリアライズドビューを作成する、データ取り込み後にビューを更新する、および BI ワークロードを高速化する方法を説明します。 サンプルデータセットのセットアップ このチュートリアルでは、Amazon Customer Reviews Dataset を使用します。これは、us-east-1 リージョンに保存されている公開データセットです。以下の 3 つのテーブルを作成します。 product_reviews – 特定の製品に関するお客様のレビューが含まれます customer – お客様のプロファイルデータが含まれます customer_address – お客様の住所情報が含まれます 以下の図は、これら 3 つのテーブルの関係を示すものです。 スクリプトをダウンロードしてテーブルをセットアップするために、mv_blog.sql を選択します。 マテリアライズドビューの作成と使用 このユースケースでは、あるマーケティングチームが、その会社の製品を好むお客様の人数を州ごとに示すレポートの構築を希望しています。また、必要に応じて各製品カテゴリーをドリルダウンしたいとも考えています。 この最初のステップでは、標準ビューを作成します。以下のコードを参照してください。 CREATE VIEW v_reviews_byprod_and_state AS SELECT PR.product_category, A.ca_state AS customer_state, count(PR.star_rating) AS cnt FROM product_reviews PR, customer […]

Read More

Amazon A2I の一般公開を開始しました

 AWS では、この度 Amazon Augmented AI (Amazon A2I) の一般公開を発表できることを、とても喜ばしく思っております。これは、機械学習 (ML) によるヒューマンレビューを大規模に実装できるようにするサービスです。Amazon A2I は、ヒューマンレビューシステムの構築や管理に関する、コストが高い上に煩雑になりがちで代わり映えのしない重労働を削減します。これを使えば、お客様の ML モデルで正確な予測生成を確実に実現することができます。Amazon A2I は、人間の判断を ML パイプラインの中に挿入することで、人間と機械が最良の結果を出せるようにしました。 Amazon A2I には、一般的な ML タスク用にヒューマンレビューのワークフローが実装済みです。これらのタスクには、Amazon Rekognition や Amazon Textract と組み合わせて実行する、ドキュメントでのコンテンツ修正やテキスト抽出などが含まれます。また、ML モデルの構築に、Amazon SageMaker を使うか、オンプレミスあるいはクラウドでのツールを API 経由で使用して、独自のヒューマンレビューワークフローを作成することも可能です。 さらに Amazon A2I では、人間のレビュー担当者が介在することができます。レビューワーには、独自で選別した人物を指定することや、Amazon Mechanical Turk を通じた ML関連作業の経験を持つ、50 万人を超える独立した契約スタッフから人材を選択することも可能となっています。お客様の ML アプリケーションに、機密性や特別なスキルが必要な場合でも、品質とセキュリティ手順に関し AWS があらかじめ選出した、実績のある人材が待機しています。 Amazon A2I は、お客様が、独自の要件に基づきヒューマンレビューを導入しようとする際の柔軟性を提供します。シンプルなビジネスルール (予測結果に対してML がどの程度の信頼度を示しているか) を設定することにより、予測を自動に任すか、検証のために人間を介在させるかを決定します。 設定した最低信頼度に抵触する予測結果が、ML パイプラインを経由して出力された場合は、ご自身の要件に基づいた判断をお客様が行えます。たとえば、社会保障番号 […]

Read More

Amazon FSx for Lustre による高パフォーマンスワークロード用の永続的ストレージ

 高パフォーマンスなファイルシステムは、しばしばスクラッチファイルシステムと永続的ファイルシステムの 2 種類に分類されます。スクラッチファイルシステムとは、一時的な高性能のストレージを提供するためのものです。その性能は、1 ミリ秒未満のレイテンシーで、スループットは最大で毎秒数百ギガバイト、そして短時間のワークロード用に数百万の IOPS を実現します。対照的に、永続的ファイルシステムでは、スクラッチファイルシステムに備わったパフォーマンスレベルに、より長期にわたるデータ処理で必要となる耐久性と可用性を組み合わせるよう設計されています。AWS は、re:Invent 2018 において、世界でも最もよく使用されている高パフォーマンスファイルシステムである Lustre をベースとしたスクラッチファイルシステム Amazon FSx for Lustre (FSx for Lustre) を発表しました。最近リリースした FSx for Lustre の永続的ファイルシステムデプロイオプションでは、可用性と耐久性およびパフォーマンスが高く、POSIX 互換のファイルシステムの、AWS による完全マネージド型でのデプロイを可能にしています。 これによりお客様は、ワークロードの要件に基づき、永続的ファイルシステムまたはスクラッチファイルシステムを柔軟に選択できるようになります。 今回のブログでは、この FSx for Lustre の永続的ファイルシステムデプロイオプションについて一通り説明し、一般的なユースケースを示すと共に、当社が推奨するいくつかのベストプラクティスもご紹介していきます。さらに、FSx for Lustre の永続的ファイルシステムを新規で作成し、マウントも行ってみます。 FSx for Lustre での永続的ファイルシステム FSx for Lustre の永続的ファイルシステムは、実行時間が長め、もしくは永続的なワークロードに対し、高可用性で耐久性のあるストレージを提供します。スクラッチファイルシステム上のデータは複製が行われないため、ファイルシステムが使用するファイルサーバーに障害が発生した場合は保持されません。一方、永続的ファイルシステムにある高可用性のファイルサーバーでは、そのデータは同じアベイラビリティゾーン内で自動的に複製されます。 永続的ファイルシステムのファイルサーバーが使用不能になると、その障害から数分以内に自動的な置き換えが実行されます。この時間中は、サーバー上のデータに対するクライアントからのリクエストは透過的に再試行され、最終的にファイルサーバーの置き換えが完了した時点でそちらに継承されます。永続的ファイルシステムのデータはディスク上で複製が作られているので、障害が起きたディスクはすべて自動的かつ透過的に置き換えられます。 Amazon FSx for Lustre の永続的ファイルシステムが適した用途とは? 耐久性と可用性が高いストレージが要求される処理が重いワークロードに対しては、永続的ファイルシステムの使用を検討します。 次に、FSx for Lustre の永続的ファイルシステムにおいて、最も一般的なユースケースのいくつかを示します。 SAS Grid: […]

Read More

新機能 – AWS Glue を使用したサーバーレスストリーミング ETL

 アプリケーションが本番環境にあるとき、何が起こっているか、どのようにアプリケーションが使われているかを把握する必要があります。データ分析の最初のアプローチはバッチ 処理モデルで、一連のデータを一定期間収集し、分析ツールで実行します。迅速に対応したい場合には、ストリーミングモデルを使用します。このモデルでは、データの到着時にデータ処理し、一度に 1 レコードずつ、または数十、数百、数千のレコードのマイクロバッチで処理します。 継続的な取り込みパイプラインの管理や即時的なデータ処理は、管理、パッチ適用、スケーリング、一般的な対応を必要とする常時オンのシステムであるため、大変複雑です。現在、拡張 (AWS Glue ジョブを Apache Spark に基づいて ) によってこうした機能をより簡単でコスト効率の高い方法で実装し、ストリーミングプラットフォーム (Amazon Kinesis Data Streams や Apache Kafka (完全マネージド Amazon MSK を含む)) などからデータを継続的に実行し使用しています。 このように、Glue はデータレイク (Amazon S3 の)、Amazon Redshift などのデータウェアハウス、またはその他のデータストアにデータを取り込むために必要なインフラストラクチャをプロビジョニング、管理、スケーリングします。たとえば、ストリーミングデータを DynamoDB テーブルに保存してすばやく検索したり、Elasticsearch に保存して特定のパターンを検索したりすることが可能となります。この手順は通常、抽出、変換、読み込み (ETL) と言います。 Glue ジョブでストリーミングデータを処理すると、Spark Structured Streaming の全機能にアクセスして、集約、パーティション化、フォーマット、他のデータセットとの結合といったデータ変換を実行し、データに情報を追加または修正して分析を容易にします。たとえば、外部システムにアクセスしてリアルタイムで不正を特定したり、機械学習アルゴリズムを使用してデータを分類したり、異常や異常値を検出したりできます。 AWS Glue を使用したストリーミングデータの処理 この新しい機能を試すには、IoT センサーからデータを収集し、すべてのデータポイントを S3 データレイクに保存します。Raspberry Pi と Sense HAT を使用し、温度、湿度、気圧、空間内の位置をリアルタイムで […]

Read More

Zendesk がレガシーシステムを Amazon Aurora と Amazon Redshift に移動してパフォーマンスを 3 倍にした方法

 この記事は、Zendesk のエンジニアリングリーダーである James Byrne 氏によるゲスト投稿です。Zendesk は、Zendesk Explore アナリティクス製品のデータパイプラインにおける開発と運用、および AWS ソリューションアーキテクトの Giedrius Praspaliauskas に焦点を当てています。 Zendesk は、より良い顧客関係を促進するために設計されたサポート、販売、顧客エンゲージメントソフトウェアを構築する CRM 企業です。規模、業界、または野心に関係なく、大企業からスタートアップ企業にいたるまで、強力で革新的な顧客体験がすべての企業に届くと、私たちは信じています。Zendesk は、さまざまな業界の 150,000 社以上の顧客に 30 以上の言語でサービスを提供しています。Zendesk はサンフランシスコに本社を置き、世界中に 17 ヵ所のオフィスを展開しています。 Zendesk Explore は、企業が顧客体験全体を測定して改善できるように分析を提供します。Zendesk Explore を使用すれば、企業は重要な顧客分析にすぐにアクセスでき、顧客とその関連ビジネスについてより深く理解できます。 この記事では、レガシーシステムを Amazon Aurora と Amazon Redshift に移行する方法について説明します。新しいデータストアと 3 倍のパフォーマンスを構築できるプロセスとアーキテクチャについて詳しく説明します。 移行を決定する 2015 年、Zendesk はビジネスインテリジェンスのスタートアップ企業である BIME Analytics を買収しました。BIME 製品は、現在のレポート製品である Zendesk Explore の構成要素として機能していました。Zendesk Explore は、Zendesk サポート、トーク、チャット、ガイドなど、さまざまな Zendesk […]

Read More

Amazon DynamoDB 向け NoSQL Workbench を使用したデータモデリング

 Amazon DynamoDB などの NoSQL データベースを使用する場合、リレーショナルデータベースで慣れているものとは異なる最適化を選択する傾向があります。リレーショナルデータベースの経験から、最初は別の方法で実行するように指示されていたため、簡単ではありませんでした。 これを支援するために、AWS は Windows および macOS で利用可能なクライアント側アプリケーションである Amazon DynamoDB 向け NoSQL Workbench をリリースしました。これを使用して、スケーラブルで高性能なデータモデルを構築し、クエリの開発とテストを簡素化できます。NoSQL Workbench を使用すると、次のことができます。 1 つ以上のテーブルを使用してデータモデルを定義します。 データモデルを視覚化して、さまざまなシナリオでどのように機能するかを理解します。 複数のプログラミング言語用のデータプレーン操作を構築します。 このブログ記事では、一般的に利用可能になった NoSQL Workbench を使用して、複数の顧客の URL ブックマークの管理という一般的なユースケースのデータモデルを設計しています。比較的ユースケースが単純な場合でも、多くの興味深い考慮事項があります。 データモデラー このアプリケーションでは、ブックマークと顧客アカウントに関する情報を保存する必要があります。まず、保存したい属性のリストを、保存する予定の簡単な説明とともに書き留めます。 顧客 customerId – ユニバーサル一意識別子 (UUID) email fullName ­– 例: “Shirley Rodriguez” userPreferences – アプリのユーザー設定を記述する JSON オブジェクト creationDate updateDate ブックマーク URL – “https://…” customerId […]

Read More

AWS DataSync を使用してネットワークファイル共有を Amazon WorkDocs に移行する

 今日、多くの AWS のお客様は、Amazon WorkDocs を使用して、料金が高額なネットワークファイル共有を廃止し、コンテンツをクラウドに移動しています。WorkDocs の従量課金制の料金では、お客様は、WorkDocs サイトのアクティブなユーザーアカウントに対してのみ支払います。WorkDocs は安全なクラウドストレージを提供するだけでなく、ユーザーが他の内部および外部ユーザーとコンテンツを簡単に共有できるようにします。さらに、Amazon WorkDocs Drive を使用すると、ローカルのディスク容量を消費することなく、Windows ファイルエクスプローラー、Mac Finder、またはAmazon WorkSpaces からコンテンツを直接立ち上げることができます。これにより、ユーザーのフリクションが最小限に抑えられ、クラウドベースのファイル共有を採用するための学習曲線が短縮されます。 オンプレミスのネットワークファイルシステム (NFS) またはサーバーメッセージブロック (SMB) のファイル共有から WorkDocs に移行するお客様は、通常、AWS DataSync と Amazon S3 を使用してこの移行を実現します。DataSync は、NFS または SMB サーバーから AWS クラウドストレージサービスに大量のデータを迅速かつ効率的に移動するように設計されたオンラインデータ転送サービスです。たとえば、データが S3 に格納されると、Amazon WorkDocs Migration Service を使用して、Amazon S3 バケットから、ユーザー用に指定された WorkDocs サイトにコンテンツを移行します。 このブログ投稿では、オンプレミスの NFS または SMB ファイル共有から WorkDocs に移行するための推奨手順について説明します。プロセスは次のステップで構成されています。 ステップ 1: オンプレミスから Amazon […]

Read More

AWS CLI を使用した既存の Amazon S3 オブジェクトの暗号化

 業界のプロトコル、政府の規制、組織内部のセキュリティ標準が変化する中、保存データの暗号化がますます必要とされています。暗号化は、不正アクセスやその他のセキュリティリスクから保存データを保護するためのものです。 Amazon S3 のデフォルトの暗号化を使用しても、バケット内の新しいオブジェクトを自動で暗号化できます。しかし、デフォルトの暗号化では、同じバケット内の既存のオブジェクトの暗号は変更されません。暗号化が必要な既存のオブジェクトが Amazon S3 バケットにある場合や、使用しているサーバー側の暗号化 (SSE) 設定を変更したい場合があります。S3 バケット内の既存のオブジェクトを暗号化する最も簡単な方法について、お客様から質問されることがよくあります。 この投稿では、コピーオブジェクト API を使用する際に考慮すべき重要事項について説明します。次に、AWS コマンドラインインターフェイス (AWS CLI) を使用して、データを安全に保つためにバケット内の既存のオブジェクトを暗号化する例をご紹介します。さらに、プレフィックスまたはバケット内のすべての S3 オブジェクトを暗号化する例も示します。最後に、コピーと暗号化に関する一般的な質問について回答します。 前提条件 この投稿で説明しているコマンドを実行するには、次のものが必要です。 AWS アカウント 少なくとも 1 つの Amazon S3 バケット AWS CLI 知っておくべきこと 重要なことから先に言っておきます。慎重に作業を進めてください。 SSE を使って既存のオブジェクトを暗号化するため、オブジェクトを置き換えます。既存のオブジェクトを適切に暗号化するには、コピーオブジェクトまたはコピーパート API を使用できます。これで、同じ名前のオブジェクトをコピーし、サーバー側で暗号化することでオブジェクトデータを暗号化します。コピーオブジェクト API を使用する前に、次の点を考慮してください。 LastModified タイムスタンプは、コピーのタイムスタンプに変更されます。オブジェクトのタイムスタンプに依存するアプリケーションは、元のアップロードのタイムスタンプではなく、コピーのタイムスタンプを参照するようになりました。たとえば、S3 ライフサイクルは新しいオブジェクトの日付を使用します。 S3 イベント通知は PUT または COPY イベントで有効にでき、既存のオブジェクトをコピーして暗号化するとトリガーされます。たとえば、Lambda 関数がもう一度トリガーされることがあります。 S3 クロスリージョンレプリケーション (CRR) は、オブジェクトの新しいバージョンをレプリケーションします。 次のいずれかを使用している場合、メタデータのレプリケーションの利用を検討してください。 […]

Read More

Microsoft Azure AD シングルサインオンで Amazon Redshift アクセスをフェデレーションする

 最近、当社は、Azure AD を企業ディレクトリとして使用して、Amazon Redshift にデータウェアハウスを構築している大企業のお客様を支援しました。データウェアハウスのユーザーが企業の認証情報を使用して Redshift でデータをクエリできるようにすることが要件となっていました。これにより、ユーザーは企業の認証情報を利用でき、追加のパスワードを覚える必要がなくなるので、ユーザーエクスペリエンスが向上します。また、すべての企業ユーザーが 1 か所で管理されるため、メンテナンスが容易になります。ソリューションは、Redshift への Azure AD フェデレーションアクセスをセットアップすることでした。 フェデレーションを使用して、Amazon Redshift へのアクセスを集中管理できます。これにより、一元的なロケーションでユーザーアクセスを制御できるようになり、データベースユーザーの作成と保守のオーバーヘッドが削減されるため、管理が簡素化されます。Active Directory Federation Service (ADFS)、PingFederate、Okta に加えて、Amazon Redshift は Microsoft Azure Active Directory (Azure AD) フェデレーションもサポートしています。 Amazon Redshift で ADFS を使用する方法の詳細については、IAM とAmazon Redshift を使用してデータベースユーザー認証を簡単にフェデレーションするを参照してください。Azure AD の統合の詳細については、Microsoft Azure AD での JDBC または ODBC シングルサインオン認証のセットアップを参照してください。 この投稿では、Azure AD と IAM を使用してフェデレーションをセットアップする方法を説明します。Azure AD は、ユーザーを管理し、IAM […]

Read More

New – Amazon Keyspaces (Apache Cassandra 用) が正式リリース

 昨年の re:Invent で、Amazon Managed Apache Cassandra Service (MCS) のプレビュー版を紹介しました。過去数か月の間に、このサービスは多くの新機能を導入し、今日 Amazon Keyspaces (Apache Cassandra 用) という新しい名前で一般公開します。 Amazon Keyspaces は Apache Cassandra 上に構築されており、フルマネージドのサーバーレスデータベースとしてご利用いただけます。アプリケーションは、既存の Cassandra Query Language (CQL) コードを使用して、まったくまたはほとんど手を加えずに Amazon Keyspaces からデータを読み書きできます。各テーブルでは、以下のように、ユースケースに応じて最適な設定を選択できます。 オンデマンドでは、実際に行った読み取りと書き込みに基づいて料金が発生します。これは、ワークロードが予測できないときに最適なオプションです。 プロビジョニングされた容量では、容量設定を事前に行うことで、予測できるワークロードのコストを削減できます。 また、Auto Scaling を有効にすることで、コストをさらに最適化できます。これにより、その日のトラフィックの変化に応じてプロビジョニングされた容量設定が自動的に更新されます。 Amazon Keyspaces の使用 私が子供の頃に構築した最初の「本格的な」アプリケーションの 1 つは、本用のアーカイブでした。それを今すぐ、以下を使用してサーバーレス API として再構築したいと思います。 データを保存するための Amazon Keyspaces。 ビジネスロジック用の AWS Lambda。 Amazon API Gateway と新しい HTTP API。 Amazon […]

Read More