サーバーレスデータ処理
サーバーについて思い悩むことなくデータ処理を構築、実行できるリソースを見つける
サーバーレスなデータ処理アプリケーションの構築方法を学ぶ
このチュートリアルでは、
AWS Lambda と
Amazon Kinesis を使用したストリームデータ処理の基本を学習します。Amazon Kinesis を使用してデータストリームを作成し、Lambda 関数を作成してストリームにレコードを追加するといった AWS Lambda の操作を実行します。
AWS コマンドラインインターフェイスを使用して Lambda 関数をセットアップする方法と、それを AWS コンソールでテストする方法について学びます。さらに、
AWS Serverless Application Model (SAM) と
AWS CloudFormation を使って、データ処理アプリケーションを簡単にデプロイする方法についても学びます。
サーバーレスストリーム処理について詳しく学ぶ
このホワイトペーパー『Serverless Stream Architectures and Best Practices』では、サーバーレスの手法を活用した IoT (モノのインターネット) の 3 つのストリーム処理パターンについて、詳しく解説していきます。それぞれのパターンについて、実際の IoT のユースケースでどのように活用されているか、導入の際のベストプラクティスと考慮事項、見積費用を説明します。
AWS Lambda、
Amazon Kinesis、
AWS IoT Core などのサービスに関する知識が徐々に深まっていくはずです。 各パターンには、それぞれを AWS のアカウントにすばやく簡単にデプロイできるテンプレートも含まれています。
Thomson Reuters、Roomba のメーカーである iRobot、Nextdoor の各社が、自社のデータ処理でサーバーレスな手法を活用することで得たメリットについてもご紹介します。
サーバーレスコンピューティングとは
サーバーレスコンピューティングを使うことで、サーバーを考慮することなく、アプリケーションやサービスを構築、実行できます。サーバーレスアプリケーションは、サーバーのプロビジョニング、スケーリング、管理が不要です。ほぼすべてのタイプのアプリケーションやバックエンドサービス向けに構築でき、高可用性を実現しながら、アプリケーションの実行やスケーリングに必要な作業のすべてをユーザーに代わって行います。
サーバーレスアプリケーションを構築すれば、クラウドでもオンプレミスでも、サーバーやランタイムの管理、操作にわずらわされることなく自社のコア製品に専念することができます。このようにしてオーバーヘッドを減らすことで捻出した時間とエネルギーを、拡張性と信頼性の高い、優れた製品の開発に注力できます。
他のリソースを見つける
AWS Lambda を初めてご使用になる場合は、AWS の技術文書にある「開始方法に関するガイド」を見ながら操作してみることをお勧めします。わずか数分で、AWS Lambda 関数をデプロイ、使用できるようになるでしょう。このガイドには、各種機能の詳細な使用方法など AWS Lambda のコンセプトの概要が記載されているほか、開発者向けの包括的な API リファレンスも記載されています。
このチュートリアルでは、シンプルな画像処理アプリケーションを構築する方法、および画像をサムネイルに自動変換するための Lambda 関数を開発する方法について学習します。 AWS Lambda を Amazon Simple Storage Service (S3)、AWS サーバーレスアプリケーションモデル、AWS CloudFormation と併用する方法についても学習します。
このサンプルアプリケーションでは、Lambda を使用して Markdown ファイルを HTML およびプレーンテキストに変換する、Markdown 変換アプリケーションのデモを示します。ここではイベント駆動型の並列データ処理アーキテクチャを使用します。これは、オブジェクトの複数のデータ派生物を必要とするワークロードにとって最適なアーキテクチャです。
お客様導入事例
Thomson Reuters は、サーバーレスアーキテクチャを活用して、自社の使用状況分析サービスで 1 秒あたり最大 4,000 個のイベントを処理しています。このサービスは、通常のトラフィックの 2 倍のスパイクを確実に処理し、高い耐久性を備えています。同社は、AWS の使用を開始してからわずか 5 か月で、このサービスを本番環境にデプロイしました。
Square Enix は、AWS Lambda を使用して、多人数同時参加型オンライン RPG (MMORPG) の画像処理を実行しています。AWS Lambda を使用することで、Square Enix は通常のトラフィックの最大 30 倍のスパイクを確実に処理できるようになりました。また、画像処理に要する時間が数時間からわずか 10 秒あまりにまで短縮され、インフラストラクチャと運用のコストが削減されました。
この動画では、近接地域向けのソーシャルネットワークサービスを提供している Nextdoor が、Flume ノードのトポロジーを基盤とする自社開発のデータパイプラインから、Kinesis と Lambda を基盤とする完全にサーバーレスなアーキテクチャへ移行した方法について解説しています。この移行によって、同社はデータの信頼性を向上させ、数十億件規模のデータレコードを、Amazon S3 ベースの自社のデータレイクおよび Amazon Redshift クラスターに転送する時間を短縮しました。