Kasus untuk Basis Data yang Dibuat Khusus

Bagaimana konten ini?

Oleh Cullen Dejean, Sr. Solutions Architect di AWS, dan Matthew de Anda, Startup Solutions Architect di AWS.

Sebagai startup tahap awal, Anda harus mengambil banyak keputusan teknis saat mengejar kesesuaian produk pasar. Beberapa keputusan teknis ini dapat dibatalkan, sementara yang lain merupakan titik kritis dengan dampak jangka panjang. Pemilihan basis data cenderung masuk ke dalam kategori yang terakhir, itulah sebabnya pendekatan satu solusi untuk semua masalah dengan basis data relasional tidak lagi berfungsi. Anda perlu mengambil langkah mundur dan meninjau kembali kasus penggunaan yang Anda miliki sebelum memilih basis data. Ubah ekspektasi Anda bahwa satu basis data dapat melakukan segalanya, dan sebagai gantinya, pilihlah layanan basis data yang paling sesuai dengan tugas yang Anda hadapi. AWS menawarkan portofolio basis data yang dibuat khusus yang luas dan mendalam yang mendukung beragam model data dan memungkinkan Anda membangun aplikasi terdistribusi berbasis data yang sangat dapat diskalakan. Dalam artikel blog ini, kami akan membahas faktor-faktor yang harus dipertimbangkan oleh startup tahap awal saat meninjau opsi basis data di AWS.

Faktor yang perlu dipertimbangkan saat memilih basis data

Pengalaman

Startup tahap awal harus fokus membangun produk minimum yang layak dan memperlihatkan daya tarik serta pertumbuhan sehingga setiap keputusan harus dibuat dengan mempertimbangkan kecepatan pasar dan keterampilan yang tersedia. Memilih teknologi yang tidak dikuasai oleh tim Anda akan sering kali menambah waktu dan menghasilkan MVP yang lebih sulit untuk diubah sesuai dengan umpan balik pengguna. Ini adalah alasan umum mengapa penggunaan basis data relasional dapat terus menjadi pendekatan yang tepat di awal. Jika tim Anda memiliki pengalaman dengan layanan data tertentu (misalnya relasional, dokumen, dll.), memulai dari sana bisa menjadi pilihan yang tepat.

Skala masa depan

Skala masa depan adalah faktor lain yang harus diperhatikan oleh startup tahap awal. Pemilihan teknologi yang sudah dikenal untuk memungkinkan pengiriman yang lebih cepat perlu diimbangi dengan analisis ulang kasus penggunaan dan penentuan kebutuhan penskalaan pada masa mendatang. Kemampuan untuk memanfaatkan solusi yang dapat menskalakan secara otomatis bersama Anda sembari terus beperforma sesuai harapan dapat menjadi pengganda kekuatan. Selalu ada kemungkinan untuk bermigrasi ke teknologi yang berbeda di kemudian hari, tetapi perlu diingat bahwa migrasi akan menjadi lebih kompleks seiring dengan pertumbuhan data Anda. Beberapa migrasi, seperti migrasi antara Amazon Relational Database Service (Amazon RDS) dan Amazon Aurora, dapat dibatalkan, yang kami sebut sebagai “keputusan dua arah”. Keputusan dua arah memungkinkan eksperimen yang lebih cepat dan menggunakan pendekatan “gagal cepat (fail fast)”. Pada bagian berikutnya, kita akan membahas layanan basis data, seperti Amazon RDS dan Aurora lebih lanjut.

Basis data yang dibuat khusus dan kasus penggunaannya

Untuk waktu yang lama, basis data relasional, seperti MySQL dan Postgres mendominasi lanskap basis data. Sekarang, ada lebih banyak tipe basis data untuk dipilih. Untuk membuat keputusan yang tepat, sebaiknya nilai basis data berdasarkan karakteristik akses dan bentuk datanya.

Basis data relasional

Basis data relasional dapat mendeskripsikan dirinya sendiri karena memungkinkan developer untuk menentukan skema basis data, serta relasi dan batasan antara baris dan tabel dalam basis data. Developer mengandalkan fungsionalitas basis data relasional alih-alih kode aplikasi untuk memberlakukan skema dan menjaga integritas referensial data di dalam basis data. Beberapa kasus penggunaan yang umum untuk basis data relasional termasuk aplikasi web dan seluler. Startup menggunakan Amazon RDS dan Amazon Aurora untuk aplikasi beperforma tinggi dan dapat diskalakan di AWS. Baik RDS maupun Aurora merupakan basis data terkelola sepenuhnya dan dapat diskalakan.

NoSQL: Nilai kunci dan basis data dokumen

Seiring pertumbuhan sistem Anda, sejumlah besar data sering kali dalam bentuk data nilai-kunci, di mana satu baris dipetakan ke kunci primer. Basis data nilai-kunci sangat mudah dipartisi dan memungkinkan penskalaan horizontal pada tingkat yang tidak dapat dicapai oleh tipe basis data lainnya. Kasus penggunaan, seperti game, teknologi iklan, dan IoT sangat cocok untuk model data nilai-kunci, di mana pola aksesnya memerlukan Gets/Puts latensi rendah untuk nilai kunci yang diketahui.

Amazon DynamoDB adalah basis data NoSQL nilai-kunci, nirserver, terkelola sepenuhnya yang memberikan performa milidetik satu digit pada skala apa pun. Untuk kasus penggunaan nilai-kunci beperforma tinggi, kami juga menawarkan Amazon Keyspaces, layanan basis data yang kompatibel dengan Apache Cassandra yang dapat diskalakan, sangat tersedia, dan terkelola.

Tipe basis data lain yang relevan adalah basis data dokumen. Basis data dokumen sangat intuitif untuk digunakan oleh developer karena data di tingkat aplikasi biasanya direpresentasikan sebagai dokumen JSON. Basis data dokumen sangat populer untuk kasus penggunaan, seperti menyimpan dan mengueri data sistem manajemen konten, serta mengelola profil, preferensi, dan permintaan pengguna untuk menghasilkan rekomendasi dan mengaktifkan transaksi.

Untuk data dokumen, developer dapat menyimpan data menggunakan format model dokumen yang sama dengan yang mereka gunakan dalam kode aplikasi mereka, yaitu menggunakan model skema fleksibel Amazon DocumentDB (dengan kompatibilitas MongoDB), basis data terkelola sepenuhnya dan tahan lama untuk mencapai efisiensi developer dan mendukung jutaan pembacaan dokumen per detik sekaligus menskalakan penghitungan dan penyimpanan secara mandiri.

Gudang data

Saat menentukan kebutuhan gudang data, basis data transaksional (OLTP) dan analitis (OLAP) harus dibedakan. Basis data OLAP adalah basis data yang lebih besar untuk pergudangan dan pengarsipan data. Bagi banyak startup tahap awal, mempertimbangkan Amazon Athena untuk menangani kasus penggunaan OLAP dapat menjadi pilihan yang tepat. Amazon Athena adalah antarmuka kueri SQL nirserver yang memungkinkan Anda menganalisis data yang disimpan di Amazon Simple Storage Service (Amazon S3)dengan SQL standar.

Saat aplikasi Anda mulai membutuhkan kueri yang lebih kompleks dan SLA yang lebih ketat, di sinilah kekuatan gudang data dapat membantu meningkatkan strategi dan kebutuhan data Anda. Amazon Redshift adalah layanan gudang data berskala petabita terkelola sepenuhnya di cloud.

Basis data dalam memori

Basis data dalam memori digunakan untuk aplikasi yang membutuhkan akses waktu nyata ke data yang dikirimkan pada latensi mikrodetik. Layanan keuangan, e-commerce, web, seluler, dan aplikasi game telah menggunakan basis data dalam memori untuk membangun papan peringkat, penyimpanan sesi, cache, dan analitik waktu nyata. Basis data dalam memori dapat meringankan beban dari basis data relasional Anda, memberikan hasil dengan latensi yang lebih rendah, atau menggantikan basis data relasional dan menjadi penyimpan data nilai-kunci dalam memori primer.

Amazon ElastiCache memudahkan penyiapan, pengelolaan, dan penskalaan penyimpanan data dalam memori atau lingkungan cache. Amazon ElastiCache berfungsi dengan mesin Redis dan Memcached. Amazon MemoryDB for Redis adalah layanan basis data dalam memori yang kompatibel dengan Redis, tahan lama, dan memberikan performa sangat cepat. Layanan ini dibuat khusus untuk aplikasi modern dengan arsitektur layanan mikro. Salah satu cara untuk menentukan di antara penawaran ini tergantung pada kondisi penggunaan Anda, apakah hanya sesaat atau membutuhkan daya tahan yang lebih lama. Amazon ElastiCache sering kali digunakan sebagai basis data yang berdiri sendiri, tetapi hanya untuk aplikasi yang tidak memerlukan daya tahan. Sebaliknya, MemoryDB dirancang untuk menjadi basis data primer. Faktor lainnya adalah pengetahuan tim Anda tentang mesin Redis atau Memcached.

Pencarian

Basis data pencarian menghadirkan analisis dan pencarian yang hampir waktu nyata. Kasus penggunaan yang umum untuk basis data pencarian meliputi analitik log, pemantauan aplikasi waktu nyata, dan analitik clickstream.

Amazon OpenSearch Service memudahkan Anda untuk melakukan analitik log interaktif, pemantauan aplikasi waktu nyata, pencarian situs web, dan banyak lagi. Amazon OpenSearch Service mendukung OpenSearch dan Elasticsearch OSS warisan.

Basis data grafik

Tujuan basis data grafik adalah untuk memudahkan pembangunan dan pengoperasian aplikasi yang bekerja dengan set data yang sangat terhubung. Kasus penggunaan yang umum untuk basis data grafik meliputi jejaring sosial, mesin rekomendasi, deteksi penipuan, dan grafik pengetahuan. Memutuskan apakah basis data grafik adalah pilihan yang tepat dimulai dengan menentukan apakah data dapat direpresentasikan dengan baik sebagai struktur grafik. Apakah luas dan kedalaman hubungan meningkat? Kueri untuk basis data relasional akan menjadi lebih lambat saat hubungan menjadi lebih kompleks. Apakah model itu sendiri berubah cukup banyak sehingga perubahan skema menjadi beban bagi tim Anda? Terakhir, apakah Anda perlu menjawab pertanyaan tentang hubungan dalam data Anda? Basis data grafik menyediakan fleksibilitas semacam ini sembari memberikan kueri yang kompleks dari hubungan-hubungan ini. Amazon Neptune adalah layanan basis data grafik yang cepat, andal, dan terkelola penuh.

Basis data buku besar

Basis data buku besar dapat membantu melacak seluruh silsilah data. Amazon Quantum Ledger Database (QLDB) adalah basis data buku besar terkelola sepenuhnya yang menyediakan log transaksi yang transparan, tidak dapat diubah, dan dapat diverifikasi secara kriptografis yang dimiliki oleh otoritas pusat tepercaya.

Basis data deret waktu

Basis data deret waktu menangani kasus penggunaan di mana aplikasi berurusan dengan data deret waktu dan perlu menganalisis data ini dengan cepat menggunakan fungsi analitik bawaan. Amazon Timestream adalah layanan basis data deret waktu yang cepat, dapat diskalakan, dan nirserver untuk IoT dan aplikasi operasional.

Tipe Basis Data Kasus PenggunaanLayanan AWS 
RelasionalAplikasi tradisional, e-commerce, transaksi OLTPAmazon AuroraAmazon RDS
Nilai-kunciAplikasi web dengan lalu lintas tinggi, sistem e-commerce, aplikasi game, perdagangan keuanganAmazon DynamoDBAmazon Keyspaces
DokumenManajemen konten, katalog, profil penggunaAmazon DocumentDBAmazon AthenaAmazon Elasticache
Dalam memoriCaching, pengelolaan sesi, papan peringkat game, aplikasi geospasialAmazon MemoryDB for Redis
CariPencatatan terkonsolidasi, pencarian yang dipersonalisasiAmazon OpenSearch
GrafikDeteksi penipuan, Jejaring sosial, profil penggunaAmazon Neptune
LedgerSistem catatan, rantai pasokan, pendaftaran, transaksi perbankanAmazon QLDB
Deret waktuIoT, DevOps, telemetri industriAmazon Timestream

Kesimpulan

Sebagai startup tahap awal, salah satu keputusan penting yang akan Anda ambil adalah menentukan tipe teknologi basis data yang akan digunakan. Saat meninjau basis data yang dibuat khusus yang ditawarkan AWS, mulailah dengan kasus penggunaan dan tentukan persyaratan yang diperlukan untuk membantu memfilter layanan basis data mana yang cocok. Kemudian, tambahkan kecepatan ke pasar dan keterampilan tim Anda yang tersedia, tetapi pastikan untuk menyeimbangkan faktor-faktor tersebut dengan kebutuhan Anda pada masa mendatang. Sekarang adalah saat yang tepat untuk meluangkan waktu untuk mempertimbangkan faktor-faktor ini dan memilih layanan basis data yang paling sesuai untuk tugas tersebut.

AWS Editorial Team

AWS Editorial Team

Tim Pemasaran Konten AWS Startupss bekerja sama dengan Startups dari semua ukuran dan di semua sektor untuk memberikan konten luar biasa yang mendidik, menghibur, dan menginspirasi.

Bagaimana konten ini?