Semua yang Tidak Anda Ketahui Tentang Amazon Aurora
Diterbitkan: 2022-12-07Sistem basis data tradisional memiliki banyak batasan kinerja, ketersediaan, dan skalabilitas. Amazon Aurora adalah solusi untuk keterbatasan ini.
Database diperlukan untuk mendukung aplikasi yang menjalankan bisnis. Mereka harus lebih besar, lebih dapat diandalkan, dan lebih cepat untuk memberikan layanan yang lebih baik. Amazon Web Services memudahkan bisnis untuk mengelola data dan meningkatkan kepuasan pelanggan.
Layanan web AWS Aurora Amazon adalah contoh dari layanan semacam itu. Itu menggunakan volume cluster untuk mengelola datanya dan mengalokasikannya untuk cadangan darurat.
Apa itu Amazon Aurora?
Amazon Aurora, database cloud-native, sepenuhnya kompatibel dengan MySQL Open-Source dan PostgreSQL. Aurora mendukung semua fungsi MySQL sumber terbuka. Ini juga memungkinkan kompatibilitas drop-in dengan aplikasi yang berjalan di database ini.
Aurora dirancang untuk pelanggan yang memerlukan layanan database terkelola penuh dengan penghematan biaya dan kesederhanaan database sumber terbuka, tetapi kinerjanya sama dengan database komersial.
Aurora memberikan kinerja lima kali lebih cepat dari MySQL tradisional dan tiga kali lebih baik dari PostgreSQL. Amazon RDS menangani tugas seperti penyediaan, pencadangan, dan pemulihan. Tidak ada biaya di muka, dan Anda hanya membayar biaya bulanan.
Aurora unik karena menawarkan rekam jejak untuk keunggulan operasional dan fitur perusahaan dengan biaya yang lebih murah dari database komersial.
Aurora memberikan kinerja, ketersediaan, keamanan, dan keandalan yang tak tertandingi secara global. Aurora telah menjadi layanan dengan pertumbuhan tercepat dalam portofolio AWS sejak didirikan pada tahun 2014.
Untuk apa Amazon Aurora digunakan?
Pertumbuhan Aurora yang luar biasa didorong oleh minat yang kuat dari banyak industri. Kami telah melihat minat yang kuat pada Layanan Keuangan, Perangkat Lunak, dan Internet, serta vertikal Hiburan dan Permainan dan Ritel selama dua belas bulan terakhir.

Pelanggan bermigrasi ke Aurora MySQL dan Aurora PostgreSQL untuk menggabungkan database MySQL dan PostgreSQL mereka. Kami juga melihat banyak pelanggan bermigrasi dari basis data lama seperti Oracle atau Microsoft SQL Server ke Aurora PostgreSQL.
Pelanggan yang "bebas dari pelanggaran" ini sudah bosan membayar biaya lisensi yang tinggi dan mengunci diri mereka ke dalam basis data lama. Pelanggan dengan pertumbuhan tinggi ingin melakukan penskalaan dengan cepat dan lancar di semua wilayah. Mereka juga ingin dapat berintegrasi di seluruh layanan AWS.
Manfaat Amazon Aurora
Di bawah ini adalah manfaat menggunakan Amazon Aurora:
Skalabilitas
Anda dapat mengaktifkan penskalaan otomatis. Ini akan meningkatkan kapasitas penyimpanan ketika Anda memiliki lebih banyak penyimpanan. Ini juga akan mengurangi ukuran database Anda jika ada penurunan ruang penyimpanan.
Hemat biaya
Cukup bayar daya pemrosesan dan ruang penyimpanan yang Anda gunakan. Tidak ada biaya di muka atau biaya lainnya. Sangat mudah untuk melakukan pembayaran bulanan.
Keamanan
Amazon VPC memungkinkan Anda untuk mengisolasi jaringan tempat database Anda berjalan.
Gunakan AWS Key Management Service untuk membuat kunci enkripsi yang melindungi data Anda.
Ketersediaan dan daya tahan tinggi
Anda dapat membuat replika Aurora di banyak Availability Zone.
Ini adalah database global yang dapat dengan mudah didistribusikan ke beberapa wilayah AWS, yang dapat menurunkan kecepatan baca/tulis lokal.
Dukungan untuk Migrasi
Untuk memigrasi database lokal Anda ke Aurora, Anda dapat menggunakan perintah pg-dump atau MySQL dump.
Dikelola Sepenuhnya
Aurora sangat mudah digunakan. Sangat mudah untuk menyiapkan instans menggunakan konsol AWS RDS. Aurora menawarkan pemantauan dengan Amazon Cloudwatch tanpa biaya tambahan.
Tidak perlu khawatir tentang penyediaan, pembaruan, atau peningkatan. Amazon memiliki kendali penuh atas semua aspek perangkat lunak Anda dan akan melakukan perbaikan yang diperlukan.
Fitur terbaik Amazon Aurora
Di bawah ini adalah fitur terbaik dari Amazon Aurora:
Skalabilitas : Ini adalah fitur terbaik dari Amazon Aurora. Basis data secara otomatis bertambah besar sesuai dengan persyaratan penyimpanan. Volume dapat bertambah secara bertahap hingga 10 GB dan dapat mencapai maksimum 128 TB. Ini memungkinkan penyimpanan tanpa batas.
Throughput tinggi : Tolok ukur SysBench telah menunjukkan peningkatan 5x dalam throughput. Amazon Aurora menerapkan berbagai teknik perangkat lunak dan perangkat keras untuk memaksimalkan memori, komputasi, dan jaringan yang tersedia. Untuk meningkatkan konsistensi kinerja, operasi input dan output menggunakan teknik sistem terdistribusi seperti kuorum.
Pemantauan dan perbaikan instans : Amazon RDS terus memantau kesehatan dan kinerja database Amazon Aurora serta instans EC2 yang mendasarinya. Amazon RDS secara otomatis memulai ulang database jika terjadi kegagalan database dan semua proses terkait.
Enkripsi : Amazon Aurora memberikan keamanan tinggi dengan memungkinkan Anda mengenkripsi database menggunakan kunci yang Anda kontrol dan buat melalui AWS Key Management Service. Amazon Aurora menggunakan enkripsi SSL untuk melindungi data selama transit.
Mudah digunakan : Sangat mudah untuk menggunakan Amazon Aurora. Konsol Manajemen Amazon RDS digunakan untuk membuat Instans DB Amazon Aurora baru. Panggilan API ini, atau CLI, hanya memerlukan satu panggilan API. Instans DB Amazon Aurora hadir dengan prakonfigurasi dengan parameter dan pengaturan yang sesuai untuk setiap jenis Instans DB.
Hemat biaya : Hanya bayar apa yang Anda gunakan. Tidak ada biaya di muka atau biaya lainnya. Sangat mudah untuk melakukan pembayaran bulanan.
Dukungan migrasi : Untuk memigrasi database lokal Anda dari Aurora ke Aurora, Anda dapat menggunakan perintah pg-dump atau dump MySQL.
Aurora terkelola sepenuhnya : Anda dapat segera mulai menggunakannya. Yang perlu Anda lakukan hanyalah membuat instans menggunakan konsol AWS RDS atau memanggil API dari kode Anda. Tidak perlu khawatir tentang penyediaan, pembaruan, atau peningkatan.
Arsitektur Amazon Aurora
Seluruh arsitektur Aurora Database dibangun di atas DBMS tradisional. Ini menggunakan kembali sebagian besar komponen DBMS seperti manajer transaksi, mesin eksekusi kueri, dan manajer pemulihan.
Amazon Aurora adalah DBMS baru yang melampaui permainan tradisional. Itu membuat banyak perbaikan pada DBMS yang ada untuk meningkatkan ketersediaan, keandalan, dan skalabilitasnya.
Perubahan ini adalah:
- Penyiapan replika utama digunakan
- Penyimpanan data jarak jauh dapat direplikasi
- Hanya log perubahan yang akan disimpan ke disk jarak jauh
Arsitektur Amazon Aurora dapat menskalakan lapisan penyimpanan database relasional tradisional.
Instans database utama Amazon Aurora meneruskan redo log ke lapisan penyimpanannya untuk diproses. Log diproses oleh lapisan penyimpanan, yang membuat dan menyimpan versi halaman baru dan mencadangkan semuanya hingga S3.

Amazon Aurora hanya perlu membuat instans mesin database tambahan dan menghubungkannya dengan lapisan penyimpanan yang ada selama peningkatan skala. Ini menghilangkan hambatan dalam replikasi data dengan mendelegasikan tugas-tugas ini untuk pemrosesan paralel ke lapisan penyimpanan.
Ini memungkinkan pembuatan banyak fitur baru, seperti:
- Pemulihan kerusakan instan: Anda tidak perlu memutar ulang log dari pos pemeriksaan terakhir
- Kegagalan cepat: Tidak perlu khawatir tentang database replika mana yang memiliki catatan redo log terbaru. Lapisan penyimpanan menangani itu.
- Backtracking: Karena lapisan penyimpanan telah mengalirkan redo log, ia dapat "memundurkan" data ke titik tertentu di masa lalu tanpa harus memulihkan titik pemeriksaan dari cadangan S3
Menyiapkan Amazon Aurora
Di bawah ini adalah langkah-langkah untuk menyiapkan Amazon Aurora dengan sukses.
#1. Masuk ke konsol manajemen AWS dan buka RDS.

#2. Klik buat basis data .

#3. Pilih opsi Mesin sebagai Amazon Aurora.

#4. Pilih versi Aurora MySQL yang Anda butuhkan.

#5. Buat pengidentifikasi cluster DB dan atur nama pengguna dan kata sandi pengaturan kredensial.

#6. Pilih konfigurasi instance dari opsi dropdown dan pilih opsi untuk membuat replika atau tidak.

#7. Pilih opsi konektivitas seperti yang ditunjukkan di bawah ini.

#8. Pilih dari grup keamanan VPC yang ada atau buat yang baru.

#9. Aktifkan pemantauan yang ditingkatkan , pilih opsi perincian dan peran pemantauan .
#10. Terakhir, klik buat database .

#11. Anda telah berhasil membuat database Amazon Aurora.


Model harga: Amazon Aurora
Biaya ACU Aurora Tanpa Server v2 $0,12 per jam, dua kali harga ACU Aurora yang disediakan. Ini berarti:
- Biaya pengoperasian minimum saat ini: 4 ACU, $0,48 per jam atau $350 per bulan
- Untuk beban kerja yang secara patologis memicu fungsi auto-scaling, ada peningkatan skalabilitas minimal 30 detik atau $0,0005 untuk setengah ACU.
Biaya bulanan untuk Aurora Tanpa Server V2 adalah $350. Setiap acara penskalaan otomatis akan dikenakan biaya setidaknya $0,0005. Meskipun kapasitas setara Aurora adalah $175 per bulan, itu tidak akan memiliki penskalaan otomatis tanpa server yang responsif.
Menggunakan Kasus: Amazon Aurora
#1. Perangkat Lunak sebagai Layanan (SaaS)
Ini menggunakan arsitektur multi-talenta yang bisa fleksibel dalam penyimpanan dan penskalaan instans. Hasilnya, Amazon Aurora memungkinkan perusahaan untuk fokus pada pengembangan aplikasi berkualitas tinggi dan tidak mengkhawatirkan database.
#2. Tujuan game
AWS Aurora berfungsi dengan cara yang sama seperti Database Relasional. Ini memberikan throughput tinggi, kapasitas penyimpanan besar, ketersediaan tinggi, dan ketersediaan tinggi.
#3. Aplikasi Perusahaan
Amazon Aurora kompatibel dengan perusahaan mana pun yang sudah lebih film daripada Database Relasional. Aurora hemat biaya karena mengurangi harga hingga 90% jika dibandingkan dengan opsi lain.
Kompatibilitas Aurora dengan MySQL dan PostgreSQL
Amazon Aurora dibangun untuk kinerja tinggi, ketersediaan global, dan kompatibilitas MySQL/PostgreSQL penuh. Alat standar memudahkan migrasi database MySQL dan PostgreSQL dari Aurora. Anda juga dapat menjalankan aplikasi SQL Server lawas dengan Babelfish untuk Aurora PostgreSQL, yang memerlukan sedikit perubahan kode.
Amazon Aurora bekerja dengan alat impor/ekspor PostgreSQL standar, seperti pg_dump atau pg_restore. Anda juga dapat membuat tabel Amazon Aurora baru menggunakan Amazon RDS atau MySQL DB Snapshot.
Snapshot DB biasanya cepat diselesaikan, tetapi akan bergantung pada seberapa banyak dan format data apa yang sedang dimigrasikan.
Amazon Aurora vs. Amazon RDS
Desain arsitektur
Arsitektur RDS serupa karena memungkinkan Anda menginstal mesin database di Amazon EC2 secara manual tetapi menyerahkan penyediaan dan pemeliharaan ke AWS. RDS menyediakan banyak fitur seperti failover otomatis, pencadangan, dll. RDS menggunakan volume Amazon EBS untuk menyimpan log dan data database.
Sistem penyimpanan database Aurora dapat diandalkan dan toleran terhadap kesalahan. Penyimpanan database untuk Aurora tidak bergantung pada instans. Aurora menyimpan data dalam enam salinan, masing-masing dengan potongan 10GB. Salinan ini didistribusikan ke tiga Availability Zone. Bahkan jika Anda hanya memiliki satu instans Aurora, masih ada enam salinan data Anda.
Pertunjukan
RDS menggunakan penyimpanan SSD untuk meningkatkan kinerja throughput I/O. Ada dua opsi penyimpanan yang didukung SSD yang tersedia. Satu untuk aplikasi OLTP berkinerja tinggi, sementara yang lain untuk tujuan umum, penggunaan hemat biaya.
Aurora menawarkan dua kali kinerja PostgreSQL dan lima kali lipat dari MySQL standar pada perangkat keras yang sebanding. Performa Aurora secara konsisten lebih tinggi dan lebih konsisten.
Dukungan Mesin Basis Data
RDS kompatibel dengan MySQL, PostgreSQL, dan MariaDB, serta Microsoft SQL Server dan Oracle.
Aurora kompatibel dengan PostgreSQL dan MySQL. Ini berarti Anda dapat menggunakan alat dan aplikasi basis data yang ada di PostgreSQL dan MySQL tanpa melakukan perubahan apa pun.
Daya Tahan dan Ketersediaan
Aurora memiliki model penyimpanan unik yang memungkinkan pencadangan dan pemulihan berkelanjutan dengan RPO (tujuan titik pemulihan) yang sangat rendah. Ini membuatnya lebih andal dan tahan lama daripada RDS.
Data tahan lama dengan desain di Aurora. Selalu ada banyak salinan data Anda. Setiap klaster Aurora memiliki enam node penyimpanan yang tersebar di tiga AZ. Bahkan jika Anda hanya memiliki satu node komputasi, masih ada beberapa salinan data Anda.
Ketangguhan
Karena desain arsitekturalnya, Aurora lebih tangguh dibandingkan RDS. Cepat pulih dari kegagalan. Jika node komputasi mogok, Aurora dapat pulih dengan cepat.
Penyimpanan
Penskalaan otomatis penyimpanan RDS menskalakan kapasitas penyimpanan hingga 64 TiB (kecuali SQL Server 16 TiB) untuk mengakomodasi beban kerja database yang terus bertambah. Tidak ada waktu istirahat.
Aurora secara otomatis meningkatkan penyimpanan dengan meningkatkannya dari minimal 10 GB hingga maksimal 128 TiB. Penyimpanan ditingkatkan dalam peningkatan 10 GB tanpa efek apa pun pada kinerja basis data.
Skalabilitas
Penskalaan Vertikal: RDS dan Aurora memungkinkan Anda menskalakan memori dan menghitung sumber daya hingga maksimum 244 GiB RAM dan 32 CPU virtual. Dalam hitungan detik, Anda dapat menskalakan operasi.
Aurora Auto Scaling Dynamic: Aurora Auto Scaling secara dinamis menyesuaikan jumlah Aurora Replicas yang tersedia untuk klaster Aurora DB dengan menggunakan replikasi master tunggal. RDS TIDAK mendukung Penskalaan Otomatis semacam itu.
Replikasi
RDS dapat digunakan untuk menyediakan hingga lima replika. Proses replikasi juga lebih lambat dari Aurora.
Aurora dapat menyediakan hingga 15 replika, dan replikasi hanya membutuhkan waktu beberapa detik. Skala Aurora lebih cepat karena dapat menambahkan replika baca baru dengan cepat.
Gagal
Di RDS, failover untuk membaca replika terjadi secara manual. Hal ini dapat menyebabkan hilangnya data. Multi-AZ (Standby Instance) dapat digunakan untuk mengotomatiskan failover dan mencegah kehilangan data.
Untuk mencegah kehilangan data, Aurora menggunakan failover untuk membaca replika secara otomatis. Aurora memiliki waktu failover yang lebih cepat.
Titik Akhir Klaster
RDS memiliki titik akhir klaster yang dapat Anda gunakan untuk mengeksekusi kueri tulis Anda. Ini adalah pointer DNS ke instance database master Anda saat ini. RDS merutekan titik akhir ke master baru melalui perubahan DNS sederhana selama failover.
Titik akhir klaster masih tersedia di Aurora untuk menulis kueri. Titik akhir ini juga berfungsi sebagai penyeimbang muatan untuk replikasi baca Anda. Titik akhir ini dapat digunakan untuk menjawab permintaan baca Anda.
Cadangan
RDS secara otomatis membuat dan menyimpan cadangan instans DB Anda selama jendela pencadangan instans DB Anda. RDS menjadikan snapshot instans DB Anda sebagai volume penyimpanan, mencadangkan semua database dan bukan hanya database yang Anda pilih.
Aurora secara otomatis mencadangkan volume klaster dan terus memulihkan data selama periode penyimpanan cadangan. Pencadangan Aurora bersifat berkelanjutan dan bertahap sehingga Anda dapat dengan cepat memulihkan titik apa pun dalam periode penyimpanan cadangan.
Di bawah ini adalah tabel ringkasan untuk Amazon Aurora vs. Amazon RDS:
Amazon Aurora | Amazon RDS |
Anda dapat memperluas penyimpanan dari 10 GB menjadi 64 GB | RDS memungkinkan 64 GBS untuk semua mesin, tetapi hanya 16 GB untuk server SQL |
Anda dapat menskalakan memori dan menghitung hingga maksimum 32 vCPU, dan RAM 244 GiB | Sama seperti Aurora |
Mendukung MySQL dan PostgreSQL | Mendukung Microsoft SQL Server, MariaDB, Oracle Database, MySQL, PostgreSQL, dan Amazon Aurora |
Mendukung lima belas replika | Mendukung lima replika |
Harga tergantung pada operasi I/O | Anda dapat mencobanya secara gratis tanpa biaya penggunaan minimum |
Amazon Aurora vs. DynamoDB
Daya tahan dan ketersediaan
Setiap potongan data DynamoDB direplikasi ke beberapa node fisik. Amazon telah menempatkan node fisik ini di beberapa zona (alias zona ketersediaan) untuk memastikan ketahanan dan ketersediaan yang tinggi jika terjadi bencana seperti kebakaran atau pemadaman listrik besar. Operasi akan berlanjut meskipun satu salinan turun. SSD juga sangat andal dan tahan lama.
Cadangkan dan pulihkan
DynamoDB menawarkan pencadangan sesuai permintaan serta PITR (Pencadangan titik waktu), yang memungkinkan Anda mengakses status basis data apa pun. DynamoDB mampu mencadangkan data dalam jumlah berapa pun. Performa dan ketersediaan tidak akan terpengaruh. Pencadangan membutuhkan waktu yang sangat singkat, dan pengguna tidak perlu khawatir tentang jadwal pencadangan atau proses latar belakang. AWS memungkinkan pemulihan cadangan hanya dengan satu panggilan API.
Proses pencadangan Amazon Aurora serupa dengan DynamoDB. Itu dibuat tanpa gangguan kinerja atau gangguan pada layanan database. Cadangan Amazon disimpan dalam ember S3. Aurora akan secara otomatis membuat cadangan 30 menit jika kami tidak menentukan jendela cadangan.
Kontrol akses
DynamoDB mendukung pengguna dan peran IAM dengan kebijakan terperinci yang membatasi pembuatan database dan hak istimewa kueri. Amazon Aurora juga memiliki skema izin serupa.
Namun, Aurora juga menyediakan antarmuka koneksi yang kompatibel dengan MySQL dan PostgreSQL untuk terhubung ke database.
DynamoDB, layanan regional, tidak tunduk pada batasan VPC. Namun, klaster Aurora DB perlu dibuat di VPC yang dengan jelas menentukan batas jaringannya. Anda juga dapat menggunakan grup keamanan VPC untuk mengontrol perangkat mana atau instans Amazon EC2 yang diizinkan untuk terhubung ke instans database.
Di bawah ini adalah tabel ringkasan untuk Amazon Aurora vs. DynamoDB:
Amazon Aurora | DynamoDB |
Database relasional mendukung MySQL dan PostgreSQL | basis data NoSQL |
Multi-wilayah, Single-master | Multi-wilayah, Multi-master |
Replika dapat dipromosikan menjadi primer dalam satu menit | Ketersediaan tinggi |
Latensi replikasi kurang dari 1 detik | Latensi replikasi adalah sub milidetik |
Kesimpulan
Itu dia. Kita semua memasuki era baru dalam basis data relasional, dan Aurora hanyalah permulaan. Pelanggan telah menanggapi dengan persetujuan yang luar biasa. Pemimpin di setiap industri–seperti Capital One, Dow Jones, Netflix, dan Verizon–memigrasikan beban kerja database relasional mereka ke Aurora, termasuk edisi yang kompatibel dengan MySQL dan PostgreSQL.