Amazon Web Services ブログ

AWS AppSync が大阪リージョンでご利用いただける用になりました

みなさん、こんにちは。アマゾン ウェブ サービス ジャパン、シニアエバンジェリストの亀田です。

AWS AppSync が大阪リージョンでご利用いただけるようになりましたのでお知らせいたします。

AWS AppSync

GraphQLは、APIのクエリ言語であり、既存のデータでこれらのクエリを実行するためのランタイムのことをいいます。クライアント側で必要なデータの構造を定義することが可能で、サーバーから同じ構造のデータが返されるため、必要以上に大きなデータが返されるのを防ぐことができクエリの効率をよくすることができます。REST の代わりに、データを複数のデータソースから取得するリクエストを 1 つの API 呼び出しで構成することが可能で、RESTやその他のWebサービスと比較して、効率的、堅牢、フレキシブルなアプローチを実現することができます。

AppSync は、GraphQL API の開発を容易にする、完全マネージド型サービスであり、この API により、フロントエンドのデベロッパーは、複数のデータベースやマイクロサービス、そして API に対し、単一の GraphQL エンドポイントから迅速にクエリができるようになります。AWS DynamoDBAWS Lambda、その他のデータソースとの安全な接続に必要な、面倒な作業が自動的に処理され、パフォーマンスを向上させるためのキャッシュや、リアルタイムの更新を可能にするためのサブスクリプション、そして、オフラインのクライアントを簡単に同期できるようにするクライアント側のデータストアなどが、簡単に利用できるようになります。API リクエストのボリュームに合わせた GraphQL API 実行エンジンの自動的なスケールアップとダウンが、AWS AppSync により行われ、インフラのプロビジョニング等に多くの時間を費やす必要がなくなります。

AWS AppSync SDK では iOS、Android、JavaScript がサポートされており、JavaScript のサポート範囲には、React や Angular などのウェブフレームワーク、および React Native や Ionic といったテクノロジーが含まれます。また、AppSync GraphQL エンドポイントへの接続にオープンソースクライアントを使用して、一般的な HTTP ライブラリやシンプルな CURL コマンドなど、その他のプラットフォームも利用することができます。AWS AppSync は自動的にすべての API、スキーマをセットアップし、データソースを数秒でデータモデルに入力できるようになり、クライアントアプリケーションで、すぐにエンドポイントの使用を開始できます。

マッピングテンプレートとリゾルバ

GraphQL リクエストは「リゾルバ」として実行され、メッセージ形式は、AppSync と統合するさまざまな AWS のサービスに適した形に変換する必要があります。例えば、あるフィールドの GraphQL クエリは、Amazon DynamoDB、AWS Lambda、Amazon Elasticsearch Service 向けにそれぞれ固有の形式に変換する必要があります。AppSync にはこのためのマッピングテンプレートが用意されており、テンプレートは Apache Velocity Template Language (VTL) で記述され、必要に応じてカスタムロジックを提供することができるため、Amazon Aurora などの他のソースからもデータを返すことが可能です。より使用しやすくするために、AppSync にはさまざまなサービス用の組み込みテンプレートとユーティリティ関数も用意されています。この機能を用いることで、既存のDynamoDB、Lambda、Elasticsearch Service のテーブル、関数、ドメインを使用可能で、マッピングテンプレートを使用して相互作用を設定し利用できます。

– シニアエバンジェリスト 亀田