Amazon Web Services ブログ

Amazon Neptune と Amazon Redshift を使用して顧客 360 のナレッジリポジトリを構築する

 Organizations は、データレイク、データウェアハウス、レイクハウスなどの大規模なデータプラットフォームを構築してデプロイし、顧客移動の全体像を捉えて分析します。このようなデータプラットフォームの目的は、満足度に影響を与え、エンゲージメントを促進する顧客の行動パターンを理解することです。今日のアプリケーションは顧客との各連絡先をキャプチャしますが、そのデータはさまざまな場所 (外部パートナー、チャットボットやコールセンターなどのアウトソーシングされた SaaS、オンプレミスシステム、Google Analytics などのパブリッククラウドなど) に分散しており、データ間のリンクはほとんどないか、まったくありません。したがって、顧客が最初の接触から現在の体験状態になるまでにこれらの異なるデータソースを接続することが課題になります。顧客体験の主な属性と詳細データを指すリンクを含むナレッジベースを通じて、顧客を 360 度見渡す必要があります。このナレッジベースは、データランドスケープの進化に合わせて新しいデータパターンをサポートするために、柔軟で機敏性があり、拡張可能でなければなりません。 Amazon Neptune は、接続されたデータパターンを保存するために作成された専用のグラフデータベースです。これを使用して、顧客体験のデータをほぼリアルタイムでキャプチャすることにより、360 度の顧客ビューを構築できます。接続されたデータソリューションは、顧客サービス担当者にビジネスインサイトを提供し、新規販売を支援し、顧客に推奨事項を提供し、顧客 360 ダッシュボードを強化し、機械学習 (ML) ベースの分析を実行するためのデータリポジトリとして機能します。 この記事では、Neptune を使用した住宅保険についての顧客体験を以って顧客 360 のナレッジベースソリューションを構築する方法を示します。次の手順を説明します。 接続されたデータプラットフォームの価値実証 (POV) を示すサンドボックス環境を構築する 最初の接触から熱心でアクティブな顧客に至るまで顧客体験のステップを定義する Amazon Redshift SQL と分析機能を使用し、顧客体験に関与するさまざまなソースから得たデータ間のデータパターンと関連リンクについて理解する エンティティ関係 (ER) 図でビジネス状態エンティティと関連する関係を定義する ER 図とサンドボックスデータから頂点、エッジ、プロパティを識別するグラフモデルを作成する Amazon Redshift から Amazon S3 に Neptune ロードファイルを生成する Neptune で接続されたグラフデータの一括読み込みを実行する 接続されたデータのビジネス価値を証明する顧客 360 アプリケーションを構築する Neptune をデータパイプラインと統合して、データストアを接続し、専用のデータベースで新しいファクトを公開する 次の図は、そのプロセスを示しています。 ソリューションの概要 エンタープライズデータプラットフォームは、さまざまなデータキャプチャメカニズム (ウェブフロントエンド、モバイルアプリケーション、コールセンター、外部フィード、外部データ代理店とパートナー、クラウドフロント、内部ホストアプリケーション) を使用して、顧客体験データを取り込みます。従来のデータプラットフォームでは、顧客の行動パターンを理解するために、さまざまなタイプのデータストアにあるさまざまなデータを取り込み、変換し、キュレートします。データソースパターンは、大きく外部構造化、外部非構造化、内部構造化、および内部非構造化に分けられます。新規顧客または変更顧客中心の製品でデータパターンに拡大や変更が加わると、顧客体験データは複数のデータストアでばらばらになります。顧客に関連付けられたすべてのデータを接続して全体的なデータ状態を提供するのは困難な場合があります。洞察が古くなり、顧客中心の最新洞察を提供するためのレイテンシーが増大し始めています。データレイクがデータスワンプになったため、未解決のビジネス課題に対する顧客の不満を減らすために、新しい専用ストアをクリーンアップして構築する必要があります。 […]

Read More

REA Group は、Amazon Rekognition を使用していかに画像コンプライアンスの自動化を実現したか

 Amazon Rekognition は、画像や動画内のオブジェクト、人物、文字、場面および活動を識別し、さらに不適切な内容を検知する、機械学習 (ML) ベースの画像および映像分析サービスです。Amazon Rekognition のテキスト検出機能は、画像や動画のテキストコンテンツを認識し、抽出することを可能にします。たとえば画像共有アプリやソーシャルメディアアプリでこの機能を使用すると、テキスト検索により、同じキーワードでインデックス化された画像を表示させることができます。メディアアプリやエンターテインメントアプリの場合、広告、ニュース、スポーツのスコア、字幕など、画面上のテキストに基づいて動画をカタログ化できます。 次のスクリーンショットは、画像内テキスト の抽出例を示しています。 この記事では、REA Group が DetectText API を通じてAmazon Rekognition Text in Image 機能を使用することで、不動産リスティングにいかに自動画像コンプライアンスソリューションを導入したかについて説明します。 REA Group について REA Group は、不動産向けデジタル広告を専門とする多国籍企業です。創業から 20 年以上を数える同社は、オーストラリア、マレーシア、香港、タイ、インドネシア、シンガポール、中国で事業を展開しています。REA Group は、アジアで iproperty.com.my、 squarefoot.com.hk、thinkofliving.com といった主要ポータルブランドを運営しているほか、シンガポールとインドネシアで不動産広告サイトを展開する 99 Group を傘下に収めています。さらに、インドの不動産広告サイトである Move, Inc や PropTiger の大株主でもあります。REA Group のウェブサイトは、消費者に向けた不動産の売買および賃貸サービスに加え、最新の不動産ニュース、改装のヒント、ライフスタイル情報などを提供しており、1 日あたりの訪問者数は何百万人にも上ります。 画像コンプライアンスの課題 REA Group が提供する検索ベースのポータルでは、消費者は売主がアップロードした販売中の不動産の画像を検索し、幅広い選択肢の中から選び出すことができます。REA チームは、アップロードされた画像がしばしば利用規約に違反していることに気づきました。たとえば、売主の商標や連絡先の詳細が含まれた画像がアップロードされていることがあり、そのことがリード帰属問題を引き起こしていました。そこで同社は、画像の中に許可されないコンテンツがないかを人の目で確認するためのチームを立ち上げましたが、日々膨大な量の画像がアップロードされる中、審査プロセスが増えたことで不動産リスティング広告が掲載されるまでに数日の遅れが出るようになってしまいました。 画像コンプライアンスソリューション REA チームは、規約に準拠していない画像を自動的に検出し、売主に通知する画像コンプライアンスシステムを開発しました。当初は、Amazon Elastic Compute […]

Read More

ADFS と AWS の間の信頼を確立し、Active Directory 認証情報を使用して ODBC ドライバーで Amazon Athena に接続する

 Amazon Athena はサーバーレスでインタラクティブなクエリサービスです。これにより、標準的な SQL を使用して、Amazon Simple Storage Service (Amazon S3) で未加工および処理済みのデータセットを簡単に分析できます。Athena が提供する JDBC および ODBC ドライバーを使用すると、データ分析ツール (Microsoft Power BI、Tableau、SQLWorkBench など) を Athena とシームレスに統合し、数分でデータに関する洞察を得ることができます。 2018 年 11 月までは、IAM ユーザーまたはロールの認証情報を使用して、ODBC または JDBC ドライバーで Athena に接続する必要がありました。けれども、Athena ODBC/JDBC ドライバーで、Microsoft Active Directory Federation Services (ADFS 3.0) と Security Assertion Markup Language (SAML 2.0) のサポートが 2018 年 11 月 20 […]

Read More

Drop が Apache Spark の Amazon EMR ランタイムを使用してコストを半分にし、結果取得までの速度を 5.4 倍にした方法

 これは、Drop のソフトウェアエンジニアである Michael Chau 氏と AWS ビッグデータスペシャリストソリューションアーキテクトの Leonardo Gomez 氏によるゲスト投稿です。彼らは、次のように述べています。「Drop には、一度に 1 回の報酬で、消費者の生活を向上させるという使命があります。パーソナライズされたコマースプラットフォームを通じて、適切なブランドを適切なタイミングでインテリジェントに表示し、会員の暮らしを以前よりも素晴らしいものにしています。機械学習を利用し、200 を超えるパートナーブランドと消費者をマッチングさせることで、2 つの主要な目標を実現しています。すなわち、購入からポイントを獲得し、そのポイントをすぐに特典と引き換えることができるようにすることです。トロントを本拠地としながら、グローバルな考え方をもって活動する Drop は、北米全体で 300 万人を超える会員のために、次世代のエクスペリエンスを構築しています。詳細については、www.joindrop.com をご覧ください」 概要 Drop では、データレイクインフラストラクチャが、製品とビジネスに関して、データに基づく意思決定を改善する上で不可欠な役割を果たしています。重要な機能は、膨大な量の生データを処理し、当社のデータレイクの標準化されたファイル形式とパーティション構造に準拠した調整済みデータセットを生成する機能です。当社のビジネスインテリジェンス、実験分析、機械学習 (ML) システムは、これらの変換されたデータセットを直接使用します。 この投稿では、Amazon EMR を使用するためにデータレイクのバッチ ETL パイプラインを設計および実装した方法と、Apache Spark ランタイムを数時間から数分に削減し、運用コストを 50% を超えて節約するためにアーキテクチャにおいて繰り返し実行したさまざまな方法について詳しく説明します。 パイプラインの構築 Drop のデータレイクは、ダウンストリームのビジネスインテリジェンス、実験分析、および ML システムが不可欠に依拠している会社のデータインフラストラクチャ全体における中心的かつ信頼できる情報源として機能します。当社のデータレイクの目標は、さまざまな情報源から膨大な量の生データを取り込み、ダウンストリームシステムが Amazon Simple Storage Service (Amazon S3) を介してアクセスできる信頼性の高い、調整されたデータセットを生成することです。これを実現するために、Lambda アーキテクチャ処理モデルに準拠するようにデータレイクのバッチ ETL パイプラインを構築し、Apache Spark と Amazon EMR の組み合わせを使用して、Amazon […]

Read More

AWS CodeArtifact によるソフトウェアパッケージ管理

 ソフトウェアアーティファクトリポジトリとそれに関連するパッケージマネージャーは、開発に不可欠なコンポーネントです。ライブラリが必要な時点で、パッケージマネージャーを使用してソフトウェアのビルド済みライブラリをダウンロードして参照すると、開発プロセスとビルドプロセスの両方が簡略化されます。Maven Central、npm パブリックレジストリ、PyPi (Python Package Index) など、さまざまなパッケージリポジトリを使用できます。多数のアーティファクトリポジトリを操作すると、アプリケーションのソフトウェアの依存関係のバージョンとアクセスの両方を慎重に制御したい組織にいくつかの課題が生じる可能性があります。検出されておらず、悪用され得る脆弱性が組織のアプリケーションに存在するのを防ぐために、依存関係への変更はすべて制御する必要があります。一元化されたリポジトリを使用することで、組織がアクセス制御とバージョン変更を管理しやすくなり、チームは、IT リーダーが新しいバージョンの使用を承認していることを確信しながら、パッケージバージョンを更新できます。大規模な組織では、これらの課題を解決するために従来のアーティファクトリポジトリソフトウェアを使用する場合がありますが、これらの製品では、インストール、設定、メンテナンス、およびスケーリングに関するさらなる課題が発生する可能性があります。小規模な組織では、従来のアーティファクトリポジトリソフトウェアの料金とメンテナンスにかける労力が莫大なものになる場合があります。 今日一般的に利用可能な AWS CodeArtifact は、開発、構築、およびデプロイのプロセスで使用されるソフトウェアパッケージを安全に保存および共有するための、開発者および組織向けのフルマネージド型のアーティファクトリポジトリサービスです。現在、CodeArtifact は、Maven と Gradle (Java の場合)、npm と yarn (Javascript の場合)、pip と twine (Python の場合) などの一般的なビルドツールとパッケージマネージャーで使用できます。新しいパッケージが取り込まれるか、リポジトリに公開されると、CodeArtifact は自動的にスケーリングし、フルマネージド型のサービスとして、CodeArtifact は、お客様の側におけるインフラストラクチャのインストールやメンテナンスを必要としません。さらに、CodeArtifact はポリグロットアーティファクトリポジトリです。つまり、サポートされている任意のタイプのアーティファクトパッケージを格納できます。たとえば、単一の CodeArtifact リポジトリを設定して、Maven、npm、および Python リポジトリからのパッケージを 1 つの場所に格納できます。 CodeArtifact リポジトリはドメインに編成されます。組織で単一のドメインを使用してから、リポジトリを追加することをお勧めします。例えば、チームごとに異なるリポジトリを使用することを選択できます。パッケージをリポジトリに公開したり、外部リポジトリからパッケージを取り込んだりするには、開発者が慣れているパッケージマネージャーツールを使用するだけです。開始のプロセスを見てみましょう。 CodeArtifact の開始方法 CodeArtifact の使用を開始するには、まず組織用のドメインを作成する必要があります。これにより、リポジトリが集約されます。ドメインは、リポジトリから使用されますが、パッケージとメタデータの実際のストレージを実行するために使用されます。これには、特定の npm パッケージなどの単一のパッケージアセットが、リポジトリの数に関係なく、ドメインごとに 1 回だけ格納されるという利点があります。CodeArtifact コンソールで、左側のナビゲーションパネルから [ドメイン] を選択するか、代わりに、最初のリポジトリの作成の一部としてドメインを作成します。これを行うには、[リポジトリの作成] をクリックします。 最初に、リポジトリに名前と任意の説明を付け、その後に任意でリポジトリをいくつかのアップストリームリポジトリに接続することができます。リポジトリに存在しないパッケージがリクエストされると、CodeArtifact はこれらのアップストリームリポジトリからそれぞれのパッケージをプルし、CodeArtifact リポジトリにキャッシュします。CodeArtifact リポジトリは、他の CodeArtifact […]

Read More

Amazon SageMaker Ground Truth での 3D オブジェクトトラッキングとセンサーフュージョンのデータのラベル付け

 Amazon SageMaker Ground Truth は、3D ポイントクラウドデータのラベル付けをサポートするようになりました。リリースされた機能セットの詳細については、この AWS ニュースブログの記事を参照してください。 このブログ記事では、3D ポイントクラウドデータから必要なデータ変換を実行して、SageMaker Ground Truth で 3D オブジェクト追跡ユースケースのラベル付けジョブを作成する方法を具体的に説明します。 自律型運転車 (AV) 企業は通常、LiDAR センサーを使用して、車両周辺環境の 3D についての理解度を高めます。たとえば、LiDAR センサーを車両に取り付けて、特定の時点で周囲の 3D 環境スナップショットを継続的にキャプチャします。LiDAR センサーの出力は、一連の 3D ポイントクラウドフレームです (通常、キャプチャレートは 1 秒あたり 10 です)。車両の周囲から関心のあるオブジェクト (他の車両や歩行者など) を自動的に追跡できる知覚システムを構築するために、これらの企業は、最初に 3D ポイントクラウドフレーム内のオブジェクトに手動でラベルを付け、次にラベル付けされた 3D フレームを使用して機械学習 (ML) モデルをトレーニングします。 知覚システムの構築に関しては、複数のセンサーからの入力を使用して、個々のセンサーの欠点を軽減するのが一般的な方法です。たとえば、ビデオカメラは、信号が赤、黄、緑のいずれであるかなどの重要なコンテキスト情報を提供できますが、通常、暗い状況では知覚が制限されます。一方、LiDAR センサーは、交通信号の色のような特定のコンテキストを理解することはできませんが、外が明るいか暗いかに関係なく、360 度にわたって深度ある知覚を提供できます。 SageMaker Ground Truth は、ML トレーニングデータセットを構築するための一連の 3D ポイントクラウドフレームにわたってオブジェクトに簡単にラベルを付け、最大 8 台のビデオカメラ入力を備えた LiDAR データのセンサーフュージョンをサポートします。ビデオフレームと […]

Read More

新機能 – Amazon SageMaker Ground Truth で 3D ポイントクラウドにラベルを付ける

 AWS re:Invent 2018 で開始された Amazon Sagemaker Ground Truth は、機械学習データセットに簡単に注釈を付けることができる Amazon SageMaker の機能です。顧客は、組み込みのワークフローを使用して画像およびテキストデータ、またはカスタムワークフローを使用して他のタイプのデータに効率的かつ正確にラベルを付けることができます。データサンプルは自動的に従業員 (プライベート、サードパーティー、または MTurk) に配布され、注釈は Amazon Simple Storage Service (S3) に保存されます。オプションで、自律型データラベル付けを有効にして、データセットのラベル付けに必要な時間と関連するコストの両方を削減することもできます。 約 1 年前に、自律型運転用の 3 次元 (3D) データセットのラベル付けに関心を示した自動車業界のお客様にお会いしました。LIDAR センサーによってキャプチャされたこれらのデータセットは、特に複雑で大きいです。データは、通常 5 万〜500 万個のポイントを含むフレームに保存され、それぞれ最大数百メガバイトになることがあります。フレームは個別に、または移動するオブジェクトの追跡を容易にするシーケンスで保存されます。 ご想像のとおり、従業員は複雑な 3D シーンをナビゲートし、さまざまなオブジェクトクラスに注釈を付ける必要があるため、これらのデータセットのラベル付けには非常に時間がかかります。多くの場合、これには非常に複雑なツールの構築と管理が必要です。Ground Truth チームは、お客様がよりシンプルで効率的なワークフローを構築できるよう常に支援することを目指しており、より多くのフィードバックを収集して、仕事に取り掛かりました。 本日、Amazon Sagemaker Ground Truth に、組み込みのエディタと最新の支援ラベル機能を使用して 3D ポイントクラウドにラベルを付けられるようになったことをお知らせいたします。 3D ポイントクラウドラベル付けの紹介 他の Ground Truth タスクタイプと同様に、3D ポイントクラウドの入力データは S3 バケットに保存する必要があります。また、S3 フレームの場所とその属性の両方を含む […]

Read More

Amazon EMR で Spark ストリーミングアプリケーションをモニタリングする

 アプリケーションをエンタープライズ対応にするには、本番環境に移行する前にアプリケーションの多くの側面を考慮し、アプリケーションの運用を可視化する必要があります。その可視性は、アプリケーションの正常性とパフォーマンスを測定し、アプリケーションダッシュボードとアラームをフィードするメトリクスを通じて得ることができます。 ストリーミングアプリケーションでは、さまざまなステージと各ステージ中のタスクをベンチマークする必要があります。Spark は、プローブをプラグインするためのインターフェイスを提供し、アプリケーションをリアルタイムでモニタリングおよび観察できるようにしています。SparkListeners は、スチーミングアプリケーションとバッチアプリケーションの両方に対応する柔軟で強力なツールです。これを Amazon CloudWatch メトリクス、ダッシュボード、およびアラームと組み合わせて、可視性を高め、問題が発生したときに通知を生成したり、クラスターやサービスを自動的にスケーリングしたりできます。 この記事では、シンプルな SparkListener を実装し、Spark ストリーミングアプリケーションをモニタリングおよび観察し、アラートを設定する方法を説明します。また、CloudWatch カスタムメトリクスに基づいて、アラートを使って Amazon EMR クラスターで Auto Scaling を設定する方法も示します。 Spark ストリーミングアプリケーションのモニタリング 本番環境のユースケースでは、Spark アプリケーションに必要なリソースの量を決定するために事前に計画する必要があります。多くの場合、リアルタイムアプリケーションには、各バッチの実行を安全に実行できる時間や各マイクロバッチの許容遅延時間など、満たす必要のある SLA があります。多くの場合、アプリケーションのライフサイクルの中で、入力ストリームのデータが突然増加することにより、流入するデータを処理して追いつくために、より多くのアプリケーションリソースが必要になります。 このようなユースケースでは、各マイクロバッチのレコード数、スケジュールされたマイクロバッチの実行の遅延、各バッチの実行にかかる時間などの一般的なメトリクスに興味を持たれるかもしれません。たとえば、Amazon Kinesis Data Streams では、IteratorAge メトリクスをモニタリングできます。Apache Kafka をストリーミングソースとして使用すると、最新のオフセットとコンシューマーオフセットの間のデルタなど、コンシューマーラグをモニタリングできます。Kafka には、この目的のためのさまざまなオープンソースツールがあります。 より多くのリソースをプロビジョニングするか、未使用のリソースを減らしてコストを最適化することにより、リアルタイムで対応したり、環境の変化に基づいてアラートを生成したりできます。 Spark ストリーミングアプリケーションをモニタリングするさまざまな方法が既にご利用いただけます。Spark の非常に効率的ですぐに使える機能は、Spark メトリクスシステムです。さらに、Spark は HTTP、JMX、CSV ファイルなど、さまざまなシンクにメトリクスを報告できます。 ログを出力することにより、アプリケーション内からアプリケーションメトリクスをモニタリングおよび記録することもできます。これには、count().print() の実行、マップ内のメトリクスの印刷、遅延の原因となる可能性のあるデータの読み取り、アプリケーションステージへの追加、または不要なシャッフルの実行が必要です。これは、テストには役立つ可能性はありますが、長期的なソリューションとしては高価であることがしばしば証明されています。 この記事では、別の方法について説明します。それは、SparkStreaming インターフェイスを使用する方法です。次のスクリーンショットは、Spark UI の [Streaming] タブで利用できるメトリクスを示しています。 Apache Spark リスナー Spark は内部的に、イベントベースの方法で行う内部コンポーネント間の通信を […]

Read More

Java ベースの Kubernetes オペレーターを使用した Amazon EKS での Kubernetes RBAC と IAM の統合

  はじめに Kubernetes ネイティブアプリケーションは、Kubernetes クラスターにデプロイされ、Kubernetes API と kubectl などのクライアント側ツールの両方を使用して管理されるアプリケーションです。Kubernetes オペレーターは、etcd データベースクラスターや Prometheus モニタリング/アラートシステムなど、重要な Kubernetes アプリケーションをデプロイするための抽象概念です。このようなアプリケーションに必要なドメイン固有の知識を持つカスタムリソースとコントローラを使用して Kubernetes 機能を拡張するメカニズムを提供します。 カスタムコントローラを開発するには、Kubernetes コントローラランタイムと対話するために低レベルの API が必要です。GoLang 開発者コミュニティは、豊富なフレームワークと一連の安定した SDK から得た利点を長い間使用してきました。Java は世界で最も人気のあるプログラミング言語の 1 つですが、そのようなライブラリリソースは Java 開発者コミュニティでは利用できませんでした。最近、公式の Kubernetes Java SDK プロジェクトは、カスタムコントローラの開発に役立つコントローラビルダー Java SDK を作成するために、GoLang SDK の主要機能の多くが Java に移植されたと発表しました。 このブログ記事では、Kubernetes Java SDK の新機能を活用して Kubernetes のロールベースのアクセスコントロール (RBAC) と、Amazon Elastic Kubernetes Service (Amazon EKS) を使用してプロビジョニングされた Kubernetes […]

Read More

オンラインテックトーク (6 月 19 日): AWS Snow Family のイノベーションとベストプラクティス

6 月 19 日の AWS オンラインストレージテックトークをお見逃しなく。ここでは、AWS Snow Family が提供するエッジ、ストレージ、およびコンピューティングソリューションを AWS のエキスパートが説明します。このテックトークは、太平洋時間の午前 9:00~午前 10:00 (東部時間の午後 12:00~午後 1:00) に開催されます。 今日では、アプリケーションは、これまでにないほどの速度でクラウドに移行しています。新しいカテゴリのアプリケーションでは、クラウドのエッジで、あるいはネットワークのエッジを超えて、機能とパフォーマンスを向上させる必要があります。AWS は、インテリジェントなリアルタイムの応答性を提供し、転送されるデータ量を合理化するために、データが作成される場所に必要なだけ近いところでデータ処理と分析ができるようにするエッジインフラストラクチャとソフトウェアを提供します。AWS Snow Family は、厳格な非データセンター環境で、また一貫したネットワーク接続が不足している場所で運用を実行する必要があるお客様をサポートします。接続のない環境および接続されたエッジロケーションでアプリケーションを実行することは、データセンターの IT 機器に必要なスペース、電力、および冷却が不足していることが多いため、困難な場合があります。AWS Snow Family は、データをエッジロケーションに安全に保存し、エッジコンピューティングワークロードを実行できます。 この 200 レベルのオンラインセミナーで学べること エッジローカルコンピューティングと AWS との間におけるデータ転送のために AWS Snow Family をエッジロケーションで使用する方法 AWS Snow Family のメリットとユースケース、および最新の開発状況 AWS Snow Family の機能と仕様、およびそれらの仕組み 参加対象者 クラウドアーキテクト IT ディレクター IT マネージャー IT 管理者 IoT 開発者 […]

Read More