Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Sumber data
Pada bagian sebelumnya, kita belajar bahwa skema mendefinisikan bentuk data Anda. Namun, kami tidak pernah menjelaskan dari mana data itu berasal. Dalam proyek nyata, skema Anda seperti gateway yang menangani semua permintaan yang dibuat ke server. Ketika permintaan dibuat, skema bertindak sebagai titik akhir tunggal yang berinteraksi dengan klien. Skema akan mengakses, memproses, dan menyampaikan data dari sumber data kembali ke klien. Lihat infografis di bawah ini:
AWS AppSync dan GraphQL mengimplementasikan solusi Backend For Frontend (BFF) dengan luar biasa. Mereka bekerja bersama-sama untuk mengurangi kompleksitas dalam skala besar dengan mengabstraksi backend. Jika layanan Anda menggunakan and/or layanan mikro sumber data yang berbeda, Anda pada dasarnya dapat mengabstraksi beberapa kompleksitas dengan mendefinisikan bentuk data dari setiap sumber (subgraf) dalam skema tunggal (supergraf). Ini berarti GraphQL API Anda tidak terbatas pada menggunakan satu sumber data. Anda dapat mengaitkan sejumlah sumber data dengan GraphQL API Anda dan menentukan dalam kode Anda bagaimana mereka akan berinteraksi dengan layanan.
Seperti yang Anda lihat di infografis, skema GraphQL berisi semua informasi yang dibutuhkan klien untuk meminta data. Ini berarti semuanya dapat diproses dalam satu permintaan daripada beberapa permintaan seperti halnya dengan REST. Permintaan ini melewati skema, yang merupakan satu-satunya titik akhir layanan. Ketika permintaan diproses, resolver (dijelaskan di bagian berikutnya) mengeksekusi kodenya untuk memproses data dari sumber data yang relevan. Ketika respons dikembalikan, subgraf yang terikat ke sumber data akan diisi dengan data dalam skema.
AWS AppSync mendukung banyak jenis sumber data yang berbeda. Dalam tabel di bawah ini, kami akan menjelaskan setiap jenis, mencantumkan beberapa manfaat masing-masing, dan memberikan tautan yang berguna untuk konteks tambahan.
| Sumber data | Deskripsi | Manfaat | Informasi tambahan |
|---|---|---|---|
| Amazon DynamoDB | “Amazon DynamoDB adalah layanan database NoSQL yang dikelola sepenuhnya yang memberikan kinerja yang cepat dan dapat diprediksi dengan skalabilitas yang mulus. DynamoDB memungkinkan Anda meringankan beban administratif pengoperasian dan penskalaan basis data terdistribusi sehingga Anda tidak perlu khawatir tentang penyediaan perangkat keras, penyiapan dan konfigurasi, replikasi, patching perangkat lunak, atau penskalaan klaster. DynamoDB juga menawarkan enkripsi saat istirahat, yang menghilangkan beban operasional dan kompleksitas yang terlibat dalam melindungi data sensitif. |
|
|
| AWS Lambda | “AWS Lambda adalah layanan komputasi yang memungkinkan Anda menjalankan kode tanpa menyediakan atau mengelola server. Lambda menjalankan kode Anda pada infrastruktur komputasi dengan ketersediaan tinggi dan melakukan semua administrasi sumber daya komputasi, termasuk pemeliharaan server dan sistem operasi, penyediaan kapasitas dan penskalaan otomatis, dan logging. Dengan Lambda, yang perlu Anda lakukan adalah memberikan kode Anda dalam salah satu runtime bahasa yang didukung Lambda.” |
|
|
| OpenSearch | Amazon OpenSearch Service adalah layanan terkelola yang membuatnya mudah untuk menerapkan, mengoperasikan, dan menskal OpenSearch akan cluster di AWS Cloud. Amazon OpenSearch Service mendukung OpenSearch dan OSS Elasticsearch lama (hingga 7.10, versi open source final dari perangkat lunak). Saat Anda membuat cluster, Anda memiliki opsi mesin pencari mana yang akan digunakan. OpenSearchadalah mesin pencari dan analitik sumber terbuka sepenuhnya untuk kasus penggunaan seperti analisis log, pemantauan aplikasi real-time, dan analisis clickstream. Lihat informasi yang lebih lengkap dalam dokumentasi OpenSearch Amazon OpenSearch Service menyediakan semua sumber daya untuk OpenSearch cluster Anda dan meluncurkannya. Ini juga secara otomatis mendeteksi dan mengganti node OpenSearch Layanan yang gagal, mengurangi overhead yang terkait dengan infrastruktur yang dikelola sendiri. Anda dapat menskalakan cluster Anda dengan satu panggilan API atau beberapa klik di konsol. |
|
|
| Titik akhir HTTP | Anda dapat menggunakan titik akhir HTTP sebagai sumber data. AWS AppSync dapat mengirim permintaan ke titik akhir dengan informasi yang relevan seperti parameter dan payload. Respon HTTP akan diekspos ke resolver, yang akan mengembalikan respons akhir setelah menyelesaikan operasinya. |
|
|
| Amazon EventBridge | “EventBridge adalah layanan tanpa server yang menggunakan peristiwa untuk menghubungkan komponen aplikasi bersama-sama, sehingga lebih mudah bagi Anda untuk membangun aplikasi berbasis peristiwa yang dapat diskalakan. Gunakan untuk merutekan peristiwa dari sumber seperti aplikasi buatan sendiri, AWS layanan, dan perangkat lunak pihak ketiga ke aplikasi konsumen di seluruh organisasi Anda. EventBridge menyediakan cara sederhana dan konsisten untuk menelan, memfilter, mengubah, dan mengirimkan acara sehingga Anda dapat membangun aplikasi baru dengan cepat.” |
|
|
| Basis data relasional | Amazon Relational Database Service (Amazon RDS) adalah layanan web yang membuatnya lebih mudah untuk mengatur, mengoperasikan, dan menskalakan database relasional di Cloud. AWS Ini menyediakan kapasitas yang hemat biaya dan dapat diubah ukurannya untuk database relasional standar industri dan mengelola tugas administrasi database umum.” |
|
|
| Tidak ada sumber data | Jika Anda tidak berencana menggunakan layanan sumber data, Anda dapat mengaturnya kenone. Sumber none data, meskipun masih secara eksplisit dikategorikan sebagai sumber data, bukanlah media penyimpanan. Meskipun demikian, ini masih berguna dalam kasus tertentu untuk manipulasi data dan pass-through. |
|
Tip
Untuk informasi selengkapnya tentang bagaimana sumber data berinteraksi dengan AWS AppSync, lihat Melampirkan sumber data.