Amazon Web Services ブログ

Amazon Aurora での Cloudability のパフォーマンス向上、チューニングの簡素化、コスト削減について

Cloudability は、クラウドのコスト管理プラットフォームであり、企業が既知のクラウド財務と完全なアカウンタビリティの実行を可能にします。プラットフォームでは、殺到する請求書および利用データポイントを収集します。各クラウドベンダーの 275,000 以上のサービスとオプション、またクラウドプロバイダーごとに毎年 1,000 以上の新しいサービスが展開されており、1 リソースあたり 3,300 万件にものぼります。 分析、自動化、および Machine Learning を使用して、 Cloudability の True Cost Engine は、企業での割引、クレジット、コミットメント、予約、配分、および償却に基づいてこのデータを補強し、変換します。 Cloudability’ の TrueCost Explorer では、請求データを分析し、使用状況がどのようにコストに変換されるかを理解します。 Cloudability により、より望ましいリザーブドインスタンス (RI) の決定が可能になります。リザーブドインスタンスプランナーを使って、活用されていない RI の計画、購入、変更、および識別が可能です。 コスト、使用量、および RI データを取り込んだ後、Cloudability は、使用時間消費と RI カバレッジ周りのユーザーの可視性における追跡と改善を容易にします。 状況 2017年春、我々は True Cost Engine の新しい予測モデルを公開するプロジェクトに着手しました。AWS で実行するする顧客にさらに高いコスト効率を提供する予測モデルを開発することがこのプロジェクトの目標でした。 このような分析をサポートするためには、パフォーマンス、スケーラビリティ、費用対効果に優れ、そしてメンテナンスやチューニングが容易なデータベースが必要でした。この記事では、これらの要件を満たすための最良の選択である PostgreSQL との互換性を備えた Amazon Aurora をどのように見出したかを示します。 プロジェクト 昨年初め、Cloudability のデータサイエンスチームは、ペタバイトの顧客コスト最適化データを使用して新しい予測モデルを開発することを決めました。これらのモデルは、アカウントの過去のスポット料金の動向、顧客の RI ポートフォリオの欠損値、インスタンスの使用パターン、および顧客が指定した料金表の調整などを考慮に入れます。 このモデルは、過去の […]

Read More

新しい AWS ブロックチェーンテンプレートを使用してブロックチェーンを始める

ブロックチェーンテクノロジーに関する今日の議論の多くは、古典的な Shimmer のフロアワックスの寸劇を思い出させます。Dan Aykroyd によれば、Shimmer はデザートのトッピングです。Gilda Radner はそれがフロアワックスであると主張し、Chevy Chase が議論を解決し、実際には両方であることを明らかにします。私が話している人々の中には、ブロックチェーンは新しい金融システムの基盤であり、国際的な支払いを促進する手段であると見る人がいます。他の人々は、ブロックチェーンを分散された元帳、物流、サプライチェーン、土地の登記、クラウドファンディング、その他のユースケースに適用できる不変のデータソースと見ています。いずれにしても、興味深い可能性がたくさんあり、お客様がこの技術をより効果的に使用できるよう支援しています。 本日、AWS ブロックチェーンテンプレートを開始します。これらのテンプレートを使用すると、Ethereum (パブリックまたはプライベート) や Hyperledger Fabric (プライベート) ネットワークをほんの数分で、数回クリックするだけで始めることができます。テンプレートが、堅牢でスケーラブルな方法で動かすために必要なすべての AWS リソースを作成し、設定します。 プライベート Ethereum ネットワークの開始 Ethereum テンプレートには、2 つの起動オプションがあります。ecs オプションは、Virtual Private Cloud (VPC) 内に Amazon ECS クラスターを作成し、クラスターで一連の Docker イメージを起動します。また、docker-local オプションも VPC で実行され、Docker イメージを EC2 インスタンスで起動します。このテンプレートは、Ethereum のマイニング、EthStats と EthExplorer のステータスページ、Ethereum RPC プロトコルを実装し、応答するノードのセットをサポートしています。どちらのオプションも、サービス検出のための DynamoDB テーブルを作成して使用し、ステータスページのための Application Load Balancer も使用します。 Ethereum […]

Read More

Amazon Comprehend と Amazon Relational Database Service を利用してテキスト分析ソリューションを構築する

これまで、大量の構造化されていないか、半分構造化されているコンテンツからの値の抽出は困難で、機械学習 (ML) のバックグラウンドが必要でした。Amazon Comprehend はエントリの障害をなくし、データエンジニアと開発者が豊富で継続的にトレーニングされた、自然言語処理サービスに簡単にアクセスできるようにします。 Amazon Comprehend からの分析を関連するビジネス情報と結合して貴重な傾向分析を構築することにより、完全な分析ソリューションを構築できます。たとえば、ブランド、製品、またはサービスについて取り上げている記事では、どの競合製品が最も頻繁に書かれているのかを理解することができます。顧客は顧客プロファイル情報と顧客のフィードバックのセンチメントも結合して、新製品を発売したときにどのタイプの顧客が特定の反応を見せるのかをより良く理解することもできます。 収集され、S3 に保存されるソーシャルメディアの投稿、ニュース記事や毎日の顧客のフィードバックなどの造化されていないか、半分構造化されているコンテンツの急速な増加により、S3 は分析できるときにもたらされる貴重な洞察の絶好の機会を提供してきました。Amazon Comprehend は Amazon Relational Database Service (RDS) とシームレスに機能します。このブログ投稿において、私たちは自然言語処理モデルの機械学習について学ぶ必要なく、データベースから豊かなテキスト分析ビューを構築する方法を紹介します。 私たちはこのことを Amazon Comprehend を Amazon Aurora-MySQL と AWS Lambda と結合して利用することで行います。これらは、センチメントを判別し、それをデータベースに返して保存するためにデータが挿入されるときに発せられる Aurora の一連のトリガーと統合されます。その後、より迅速な洞察をもたらす上で役立つ、データベースの追加データと結合できます。この同じパターンは、Amazon Translate などの他のアプリケーションレベルの ML サービスを統合して、コンテンツ自体を翻訳するために使用することもできます。 重要 -このパターンを使用しないとき: このパターンは、高速の Insert コール (1 秒間に数十を超える行数の挿入) を伴うワークロードを対象としていません。これらのトリガーは非同期ではないため、アドホック操作にのみお勧めします。Lambda 関数のコールを Insert ステートメントの後に置くことにより、各ステートメントに数十ミリ秒を追加します。トラフィックの多いデータソースの場合は、poll-aggregate-push アプローチを使用して、主たる Insert 書き込みパスから Lambda コールを削除する必要があります。 アーキテクチャ 次のダイアグラムは、このブログで設定するフローを示します。 ダイアグラムの矢印は、次のステップを示します。 MySQL […]

Read More

[AWS Black Belt Online Seminar] Amazon VPC 資料及び QA 公開

こんにちは、マーケティングの鬼形です。 先日(2018/4/18) 開催された AWS Black Belt Online Seminar「Amazon VPC」の資料を公開いたしました。当日、参加者の皆様から頂いた QA の一部についても共有しております。 20180418 AWS Black Belt Online Seminar Amazon VPC from Amazon Web Services Japan PDF 録画(オンデマンドセミナー) Q1. (自己紹介の質問) Market Place の何が好きか教えていただけるとうれしいです。 A. Network 担当ということで、様々なルータやファイアーウォール製品を時間単位で複数お試しができるので、検証が簡単にできるのが好きなところです。 Q2. 別々の VPC では物理的にネットワークが分離する認識で合っていますか。 A. 別々の VPC は論理的にネットワークが分離されます。 Q3. VPC を分ける単位のベストプラクティスはありますでしょうか。 A. ページ 76,77 でいくつか例をご紹介させていただきました。よりよいベストプラクティスをお探しの場合は是非 Well-Architectedをご参照ください。 Q4. 異なるリージョンのAZを、1つのリージョンから指定することはできますか。 A. リージョンの内部にアベイラビリティゾーン(AZ)が存在するので、指定することはできません。それぞれのリージョンから AZ […]

Read More

AWS の新しい Registry of Open Data (RODA)

ほぼ 10 年前、私の同僚の Deepak Singh は、彼の投稿の「Paging Researchers, Analysts, and Developers」で、AWS のパブリックデータセットを紹介しました。Deepak が現在も AWS チームの重要な一員であり、パブリックデータセップログラムがまだまだ強くなっていることを報告できて嬉しく思います! 本日、オープンでパブリックなデータへの新しい取り組みである AWS の Registry of Open Data または RODA を発表いたします。このレジストリには既存のパブリックデータセットが含まれており、誰でも自分のデータセットを追加して、AWS でアクセスして分析することができます。 レジストリの内側 ホームページに、レジストリに含まれているすべてのデータセットの一覧があります。 検索用語を入力すると、一致するデータセットだけが表示され、リストは縮小します。 それぞれのデータセットには、使用例、ライセンス情報、AWS でのデータセットの検索とアクセスに必要な情報など、関連する詳細ページがあります。 この場合、単純な CLI コマンドを使用してデータにアクセスできます。 また、プログラムでアクセスしたり、EC2 インスタンスにデータをダウンロードしたりすることもできます。 リポジトリへの追加 公開されているデータセットを RODA に追加したい場合は、プルリクエストを送信してください。オープンデータレジストリリポジトリに移動し、CONTRIBUTING ドキュメントを読んで、データセットディレクトリの既存ファイルの 1 つをモデルとして使用して、データセットを記述する YAML ファイルを作成します。 プルリクエストは定期的に確認していますので、リポジトリを「スター」するか見ることで、追加や変更を追跡することができます。 感動させてください 強力で興味深い方法でデータを使用する方法を示すブログの投稿やアプリとともに、新しいデータセットの登場を楽しみにしています。皆様からのご感想をお待ちしています。 — Jeff;

Read More

MySQLデータベースをAuroraへ移行する方法をマスターする

By Nathaniel Kangpan, SVP Technology & Data Services, Kepler Group 私は過去12ヶ月の間に(a)クラウドベースのインフラストラクチャを使うことに踏み出していない、もしくはその様なチームがいない(b)2018年のロードマップにクラウドを使うことが乗っていないクライアントに会っていません。ハードウェアからクラウドへ移行した場合のTotal Cost of Ownership(TCO)の節約は無視できません。 しかし、所有しているハードウェアからAWSのようなクラウドベースのインフラストラクチャに移行する際には、本当に何を期待するべきですか? Amazon EC2などの仮想サーバー上にソリューションを複製するだけでいいですか、Amazon RDSのようなマネージドサービスを増やすべきででしょうか? Kepler Groupでは、インフラストラクチャの95%以上が2014年後半からAWS上で稼働しています。過去数年にわたり、多くのお客様に機転となる時に何を期待しているかをアドバイスしました。私達はマーケティングデータベース管理サービスを提供しています。クライアントとの最も一般的な議論の1つは、リレーショナルデータベースをAWSに移行する際に抱えるメリットと課題を理解する助けとなることです。   Global Fortune 100の例 私たちは通常、Global Fortune 100クライアントのために完成した代表的なプロジェクトを中心に、データベースクラウドの移行に関する会話行っています。この特定のクライアントにとって、私たちは最初に、データセンターのハードウェア上にMySQLデータベースを構築しました。その後、MySQLを実行しているEC2インスタンスに移行し、最終的にAmazon Aurora MySQLに移行をしました。クライアントのユースケースと基本的なデータスキーマは、この間にあまり変化しませんでした。そのため、私たちはソリューションの管理がますます効率化されるようになるにつれ、同じMySQLデータベースを複数のフレームワークで実行することの長所と短所について多くのことを学びました。 今回の対象のデータベースは、マーケティングおよびセールスカスタマーリレーションシップマネジメント(CRM)データベースでした。一連の電子メールおよびセールスチームベースのマーケティングキャンペーンで、レポートおよび分析ユースケースのために複数のサードパーティソースにデータを継続的に集約しました。私たちのチームは、データベースの管理に加え、マネージドサービスとしてレポートと分析の提供を担当する主なユーザーです。 このプロジェクトは、スコープと予算の面で一般的に管理していた物の小規模なものでした。クライアントのニーズを満たすことに加えて、次の点に細心の注意を払う必要がありました: データベースメンテナンスの負荷を低く抑える インフラストラクチャコストの制限 信頼性の高いバックアップおよびリカバリプロセスを確保する 前述のように、データベース用に3つの異なるインフラストラクチャソリューションを使い、各バージョンのメリットと課題についてかなりのことを学びました: v1.0:オンプレミスハードウェア上のLinuxでMySQLを実行する v2.0:Amazon EC2上のLinuxでMySQLを実行する v3.0:MySQLと互換性を持つAmazon Aurora 次の移行の概要では、各バージョンへの移行の決定と、その過程で得た利点と課題について説明します。   Version 1.0: オンプレミスハードウェア上のLinuxでMySQLを実行する 2013年後半にこのクライアントとの関係を開始したとき、クラウドベースのサービスを検討し始めましたが、私たちのインフラストラクチャは、データセンターを基盤とするハードウェアソリューションでした。クライアントサービスや厳しい締め切りで働いている多くの人が理解できるように、理想的な長期的なソリューションを最初から構築するのではなく、迅速に稼働させることを優先する必要がありました。私たちは、オンプレミスハードウェア上のLinuxとMySQLの組み合わせから開始することにしました。これは、このプロジェクトで作業しているエンジニアが最も慣れている構成だったからです。 利点 この初期のアプローチの唯一のメリットは、エンジニアがハードウェア+ Linux + MySQLの構成でよく作業していたことです。必要な開発フレームワーク、データ転送メカニズムなどはすべてかなり理解されており、大きな技術的驚きは期待できませんでした。これにより、限られたAWS経験を持つクラウドベースのソリューションに飛び込むのとは対象的に、納期と予算に対するリスクを最小限に抑えながら顧客の設定した期限を迎えることができるという自信が得られました。 チャレンジ しかし、ハードウェア環境で解決策を維持することには、かなりの数の問題がありました。AWSへの移行を後で行うまでは、これらの非効率性を十分に理解していませんでした。具体的には、クラウドと比較してハードウェアソリューションでは次のような課題に直面しました: かなり高いサーバーとデータベースのメンテナンスとアップグレードの運用負荷 時間の経過とともに増加するデータ量に対応する、シームレスではない垂直スケーリングプロセス […]

Read More

AWS Glue のパーティション分割されたデータを使用した作業

AWS Glue は、Hive 形式で整理されたデータセットの高度な取扱いをサポートします。AWS Glue クローラーは、自動的に Amazon S3 データのパーティションを識別します。AWS Glue ETL (Extract/Transform/Load) ライブラリは、DynamicFrame を取り扱う際、ネイティブでパーティションをサポートします。DynamicFrame はデータの分散コレクションを表します。スキーマを指定する必要はありません。DynamicFrame の作成時に述語をプッシュダウンしてパーティションをフィルタリングし、高コストの S3 への呼び出しを回避できます。また、Apache Spark DataFrame に変換することなく直接パーティショニングされたディレクトリに書き込む機能のサポートを追加しました。 パーティショニングは、データセットを様々なビッグデータシステムで効率的にクエリできるように、それらを整理するための重要な手法となっています。データは、ひとつまたは複数の列の重複しない値に基づいて、階層ディレクトリ構造にまとめられます。たとえば、Amazon S3 のアプリケーションログを、年別、月別、日別の内訳で日付ごとにパーティショニングするとします。すると、1 日分に相当するデータがs3://my_bucket/logs/year=2018/month=01/day=23/のようなプレフィックスの下に配置されます。 Amazon Athena、Amazon Redshift Spectrum、AWS Glue などのシステムでは、これらのパーティションを使用して値ごとにデータをフィルタリングできるため、Amazon S3 への不要な呼び出しを行う必要がありません。このため、読み取る必要のあるパーティションが少ないアプリケーションのパフォーマンスが大幅に改善します。 本投稿では、AWS Glue を使用してパーティショニングされたデータセットを効率的に処理する方法を紹介します。まず、クローラーを設定して、パーティショニングされたデータセットを自動的にスキャンし、AWS Glue データカタログにテーブルとパーティションを作成する方法を説明します。次に、パーティショニングされたデータを取り扱うための AWS Glue ETL ライブラリの機能をいくつか紹介します。SQL 式やユーザー定義の関数を使用してパーティションをフィルタリングし、Amazon S3 からの不要なデータのリスト作成や読み取りを回避することができます。また、ETL ライブラリでは、Spark SQL DataFrame に依存することなく、AWS Glue DynamicFrame をパーティションに直接記述する機能のサポートを追加しました。 それでは、始めましょう。 パーティショニングされたデータのクローリング この例では、以前の […]

Read More

Amazon Elasticsearch Service の使用開始: AWS SigV4 による署名付きリクエストを簡単に送信する方法

Elasticsearch および Amazon Elasticsearch Service (Amazon ES) に関するこの導入シリーズへようこそ。今回および今後のブログ記事では、AWS で Elasticsearch の使用を開始するために必要な基本情報を紹介します。 概要 IAM ポリシーまたは Amazon Resource Name (ARN) のポリシーを使用して、ユーザーまたはロールを指定し、Amazon Elasticsearch Service ドメインへのアクセスをコントロールしている場合は、ドメインへのすべてのリクエストに対し AWS Signature Version 4 (AWS SigV4) を使用して署名する必要があります。ドメイン保護に関するさらに詳しい分析については、こちらのブログ記事もご参照ください。ポリシーの考察およびその問題解決に関する詳細は、こちらのブログ記事をご参照ください。 リクエストへの署名に関する AWS ドキュメントを読んでいただければ、非常に複雑に見えるプロセスが理解できるようになります。難しく見えますが、3 つのオープンソースライブラリを使用して、コードをいくつか書き、署名して Amazon ES にリクエストを送信するのはとても簡単です。ここでは Boto3、Python Requests ライブラリ、Requests AWS4Auth ライブラリを使用します。 コードスニペット 次のコードスニペットには、HTTP メソッド、呼び出す URL、呼び出すサービス、AWS リージョン、オプションのリクエストボディがあります。このコードでは、Boto3 の Session クラスを使用して認証情報を取得しています。Boto3 が認証情報を決定する方法の詳細については、Boto3 のドキュメントを参照してください。AWS4Auth クラスが認証情報を使用してリクエストに署名します。最後に、Requests ライブラリが Amazon ES […]

Read More

Amazon Linux 2 AMI および Ubuntu AMI での SQL Server 2017 の設定方法

AWS で Microsoft SQL Server をデプロイするときは、アプリケーションのパフォーマンス、可用性、信頼性、およびコストをどのように最適化するかに関する数多くの選択肢があります。Amazon では、使用方法を最適化し、コストを削減するために、複数の SQL Server バージョン、幅広いコンピューティングオプション、および多数のライセンスオプションをご用意しています。従量制料金モデルを選択して AWS のライセンスが包含されたオプションを使用する、または Amazon EC2 で独自のライセンスを使用する (BYOL) ことができます。 EC2 インスタンスで利用できる SQL Server 2017 には、Amazon EC2 で実行される Microsoft Windows または Linux オペレーティングシステムのどちらかに SQL Server ベースのアプリケーションをデプロイする柔軟性があります。AWS は本日、ライセンスが包含された Amazon Machine Image (AMI) を提供することによる、Amazon Linux 2 および Ubuntu での Microsoft SQL Server のサポートを発表しました。このリリースでは、ライセンスが包含された AMI を EC2 コンソールから直接使用して、Amazon Linux 2 LTS […]

Read More