PERF03-BP01 Gunakan penyimpanan data yang dibuat khusus yang paling mendukung persyaratan akses dan penyimpanan data Anda - AWS Kerangka Well-Architected

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

PERF03-BP01 Gunakan penyimpanan data yang dibuat khusus yang paling mendukung persyaratan akses dan penyimpanan data Anda

Pahami karakteristik data (seperti dapat dibagikan, ukuran, ukuran cache, pola akses, latensi, throughput, dan persistensi data) untuk memilih penyimpanan data yang dibuat khusus (penyimpanan atau basis data) yang tepat untuk beban kerja Anda.

Anti-pola umum:

  • Anda bertahan dengan satu solusi basis data disebabkan karena Anda hanya memiliki pengetahuan dan pengalaman internal tentang satu jenis solusi basis data tertentu.

  • Anda berasumsi bahwa semua beban kerja memiliki persyaratan penyimpanan data dan akses data yang serupa.

  • Anda belum mengimplementasikan katalog data untuk menginventarisasi aset data Anda.

Manfaat menerapkan praktik terbaik ini: Dengan memahami karakteristik dan persyaratan data, Anda dapat menentukan teknologi penyimpanan yang paling efisien dan berkinerja paling tinggi sesuai dengan kebutuhan beban kerja Anda.

Tingkat risiko yang terjadi jika praktik terbaik ini tidak diterapkan: Tinggi

Panduan implementasi

Saat memilih dan menerapkan penyimpanan data, pastikan bahwa karakteristik kueri, penskalaan, dan penyimpanan mendukung persyaratan data beban kerja. AWS menyediakan banyak penyimpanan data dan teknologi database termasuk penyimpanan blok, penyimpanan objek, penyimpanan streaming, sistem file, relasional, nilai kunci, dokumen, dalam memori, grafik, deret waktu, dan database buku besar. Setiap solusi manajemen data memiliki opsi dan konfigurasi yang bisa Anda gunakan untuk mendukung kasus penggunaan dan model data Anda. Dengan memahami karakteristik dan persyaratan data, Anda dapat melepaskan diri dari teknologi penyimpanan monolitik dan one-size-fits-all pendekatan yang membatasi untuk fokus pada pengelolaan data dengan tepat.

Langkah-langkah implementasi

  • Lakukan inventarisasi berbagai jenis data yang ada dalam beban kerja Anda.

  • Pahami dan dokumentasikan karakteristik serta persyaratan data, termasuk:

    • Tipe data (tidak terstruktur, semi-terstruktur, relasional)

    • Volume dan pertumbuhan data

    • Ketahanan data: persisten, sementara, transien

    • ACIDPersyaratan (atomisitas, konsistensi, isolasi, daya tahan)

    • Pola akses data (intensif baca atau intensif tulis)

    • Latensi

    • Throughput

    • IOPS(operasi input/output per detik)

    • Periode retensi data

  • Pelajari tentang berbagai penyimpanan data (penyimpanan dan layanan basis data) yang tersedia untuk beban kerja Anda AWS yang dapat memenuhi karakteristik data Anda, seperti yang diuraikan dalam. PERF01-BP01 Pelajari dan pahami layanan dan fitur cloud yang tersedia Beberapa contoh teknologi penyimpanan AWS serta karakteristik utamanya antara lain:

    Jenis AWS Jasa Karakteristik utama
    Penyimpanan objek Amazon S3 Skalabilitas tak terbatas, ketersediaan tinggi, dan berbagai opsi aksesibilitas. Mentransfer dan mengakses objek masuk dan keluar dari Amazon S3 dapat dilakukan dengan menggunakan layanan-layanan, seperti Akselerasi Transfer atau Titik Akses, untuk mendukung lokasi, kebutuhan keamanan, dan pola akses Anda.
    Penyimpanan pengarsipan Amazon S3 Glacier Dirancang untuk pengarsipan data.
    Penyimpanan streaming

    Amazon Kinesis

    Amazon Managed Streaming for Apache Kafka (Amazon) MSK

    Penyerapan dan penyimpanan data streaming yang efisien.
    Sistem file bersama

    Amazon Elastic File System (AmazonEFS)

    Sistem file yang dapat dipasang dan dapat diakses oleh berbagai jenis solusi komputasi.

    Sistem file bersama Amazon FSx Dibangun di atas solusi AWS komputasi terbaru untuk mendukung empat sistem file yang umum digunakan: NetApp ONTAP, OpenZFS, Windows File Server, dan Lustre. FSxLatensi Amazon, throughput, dan IOPS bervariasi per sistem file dan harus dipertimbangkan saat memilih sistem file yang tepat untuk kebutuhan beban kerja Anda.
    Penyimpanan blok Toko Blok Elastis Amazon (AmazonEBS) Layanan penyimpanan blok berkinerja tinggi yang dapat diskalakan yang dirancang untuk Amazon Elastic Compute Cloud (Amazon). EC2 Amazon EBS menyertakan penyimpanan yang SSD didukung untuk beban kerja transaksional dan intensif serta HDD penyimpanan yang IOPS didukung untuk beban kerja yang intensif throughput.
    Basis data relasional Amazon Aurora, AmazonRDS, Amazon Redshift. Dirancang untuk mendukung transaksi ACID (atomisitas, konsistensi, isolasi, daya tahan), dan menjaga integritas referensial dan konsistensi data yang kuat. Banyak aplikasi tradisional, perencanaan sumber daya perusahaan (ERP), manajemen hubungan pelanggan (CRM), dan e-commerce menggunakan database relasional untuk menyimpan data mereka.
    Basis data nilai-kunci Amazon DynamoDB Dioptimalkan untuk pola akses umum, biasanya digunakan untuk menyimpan dan mengambil data dalam volume besar. Aplikasi web dengan lalu lintas tinggi, sistem perdagangan elektronik, dan aplikasi gaming merupakan kasus penggunaan umum untuk basis data nilai kunci.
    Basis data dokumen Amazon DocumentDB Dirancang untuk menyimpan data semi-terstruktur sebagai dokumen JSON -like. Basis data ini membantu para pengembang untuk dengan cepat membangun dan memperbarui aplikasi seperti manajemen konten, katalog, dan profil pengguna. 
    Basis data dalam memori Amazon ElastiCache, Amazon MemoryDB untuk Redis Digunakan untuk aplikasi-aplikasi yang memerlukan akses waktu nyata ke data, latensi rendah, dan throughput paling tinggi. Anda dapat menggunakan basis data dalam memori untuk melakukan caching aplikasi, manajemen sesi, papan peringkat game, penyimpanan fitur ML latensi rendah, sistem olah pesan layanan mikro, dan mekanisme streaming throughput tinggi
    Basis data grafik Amazon Neptune Digunakan untuk aplikasi-aplikasi yang harus menavigasi dan melakukan kueri jutaan hubungan antara set data grafik yang sangat terhubung dengan latensi milidetik dalam skala besar. Banyak perusahaan menggunakan basis data grafik untuk mesin rekomendasi, jaringan sosial, dan deteksi penipuan.
    Basis Data Deret Waktu Amazon Timestream Digunakan untuk mengumpulkan, mempersatukan, dan mengambil wawasan secara efisien dari data yang berubah seiring waktu. Aplikasi IoT, DevOps, dan telemetri industri dapat memanfaatkan database deret waktu.
    Kolom lebar Amazon Keyspaces (untuk Apache Cassandra) Menggunakan tabel, baris, dan kolom, tetapi tidak seperti basis data relasional, nama dan format kolomnya berbeda-beda dari baris ke baris di tabel yang sama. Biasanya Anda akan melihat penyimpanan kolom lebar di aplikasi industri skala tinggi untuk melakukan pemeliharaan perlengkapan, pengelolaan armada, dan pengoptimalan rute. 
    Buku besar Database Buku Besar Amazon Quantum (AmazonQLDB) Memberikan otoritas tersentralisasi yang tepercaya untuk mempertahankan data transaksi yang dapat diskalakan, tetap, dan dapat diverifikasi secara kriptografis untuk setiap aplikasi. Basis data buku besar digunakan untuk sistem catatan, rantai pasokan, registrasi, dan bahkan transaksi perbankan.  
  • Jika Anda membangun platform data, manfaatkan arsitektur data modern AWS untuk mengintegrasikan data lake, gudang data, dan penyimpanan data yang dibuat khusus.

  • Pertanyaan kunci yang perlu Anda pertimbangkan saat memilih penyimpanan data untuk beban kerja Anda adalah sebagai berikut:

    Pertanyaan Hal-hal yang perlu dipertimbangkan
    Bagaimana data terstruktur?
    Apa tingkat integritas referensial yang dibutuhkan?
    • Untuk kendala kunci asing, database relasional seperti Amazon RDS dan Aurora dapat memberikan tingkat integritas ini.

    • Biasanya, dalam SQL model No data, Anda akan de-normalisasi data Anda menjadi satu dokumen atau kumpulan dokumen yang akan diambil dalam satu permintaan daripada bergabung di seluruh dokumen atau tabel. 

    Apakah kepatuhan ACID (atomisitas, konsistensi, isolasi, daya tahan) diperlukan?
    Bagaimana persyaratan penyimpanan akan berubah seiring waktu? Bagaimana dampaknya pada skalabilitas?
    • Database tanpa server seperti DynamoDB dan Amazon Quantum Ledger Database (Amazon) akan diskalakan secara dinamis. QLDB

    • Basis data relasional memiliki batas atas terkait penyimpanan yang tersedia, dan sering kali harus dipartisi secara horizontal dengan menggunakan mekanisme seperti serpihan (sharding) setelah penyimpanan tersebut mencapai batas ini.

    Berapakah proporsi kueri baca dibandingkan dengan kueri tulis? Apakah caching akan meningkatkan performa?
    Apakah penyimpanan dan modifikasi (OLTP- Pemrosesan Transaksi Online) atau pengambilan dan pelaporan (OLAP- Pemrosesan Analitik Online) memiliki prioritas yang lebih tinggi?
    Tingkat durabilitas apa yang diperlukan data?
    • Aurora secara otomatis mereplikasi data Anda di tiga Zona Ketersediaan dalam satu Wilayah, yang artinya data Anda sangat tahan lama dengan lebih sedikit kemungkinan hilangnya data.

    • DynamoDB secara otomatis direplikasi di beberapa Zona Ketersediaan, memberikan durabilitas data dan ketersediaan tinggi.

    • Amazon S3 memberikan 11 sembilan durabilitas. Banyak layanan database, seperti Amazon RDS dan DynamoDB, mendukung ekspor data ke Amazon S3 untuk retensi dan arsip jangka panjang.

    Apakah ada keinginan untuk beralih dari mesin basis data komersial atau biaya lisensi?
    Apa harapan operasional untuk basis data tersebut? Apakah beralih ke layanan terkelola menjadi perhatian utama?
    • Memanfaatkan Amazon RDS alih-alih AmazonEC2, dan DynamoDB atau Amazon DocumentDB alih-alih menghosting sendiri database Tidak dapat mengurangi overhead operasional. SQL

    Bagaimana basis data diakses saat ini? Apakah hanya akses aplikasi, atau apakah ada pengguna intelijen bisnis (BI) dan off-the-shelf aplikasi terhubung lainnya?
    • Jika Anda memiliki dependensi pada peralatan eksternal maka Anda mungkin harus menjaga kompatibilitas dengan basis data yang mendukungnya. Amazon sepenuhnya RDS kompatibel dengan versi mesin perbedaan yang didukungnya termasuk Microsoft SQL Server, Oracle, MySQL, dan SQL Postgre.

  • Lakukan uji coba dan uji tolok ukur di lingkungan non-produksi untuk mengidentifikasi penyimpanan data mana yang paling sesuai dengan kebutuhan beban kerja Anda.

Sumber daya

Dokumen terkait:

Video terkait:

Contoh terkait: