Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memilih jenis instans untuk Amazon Neptunus
Amazon Neptunus menawarkan sejumlah ukuran instans dan keluarga yang berbeda. yang menawarkan kemampuan berbeda yang sesuai dengan beban kerja grafik yang berbeda. Bagian ini dimaksudkan untuk membantu Anda memilih jenis instans terbaik untuk kebutuhan Anda.
Untuk harga setiap jenis instans dalam keluarga ini, silakan lihat halaman harga Neptunus.
Ikhtisar alokasi sumber daya instance
Setiap jenis dan ukuran EC2 instans Amazon yang digunakan di Neptunus menawarkan jumlah komputasi (CPUsv) dan memori sistem yang ditentukan. Penyimpanan utama untuk Neptunus adalah eksternal dari instans DB dalam sebuah cluster, yang memungkinkan skala kapasitas komputasi dan penyimpanan secara independen satu sama lain.
Bagian ini berfokus pada bagaimana sumber daya komputasi dapat diskalakan, dan pada perbedaan antara masing-masing keluarga instance yang berbeda.
Di semua keluarga instance, sumber daya vCPU dialokasikan untuk mendukung dua (2) utas eksekusi kueri per vCPU. Dukungan ini ditentukan oleh ukuran instance. Saat menentukan ukuran yang tepat dari instans DB Neptunus tertentu, Anda perlu mempertimbangkan kemungkinan konkurensi aplikasi Anda dan latensi rata-rata kueri Anda. Anda dapat memperkirakan jumlah v yang CPUs dibutuhkan sebagai berikut, di mana latensi diukur sebagai latensi kueri rata-rata dalam detik dan konkurensi diukur sebagai jumlah target kueri per detik:
vCPUs=(latencyxconcurrency)/2
catatan
Kueri SPARQL, kueri OpenCypher, dan kueri baca Gremlin yang menggunakan mesin kueri DFE dapat, dalam keadaan tertentu, menggunakan lebih dari satu utas eksekusi per kueri. Saat awalnya mengukur cluster DB Anda, mulailah dengan asumsi bahwa setiap kueri akan menggunakan satu utas eksekusi per eksekusi dan tingkatkan jika Anda mengamati tekanan balik ke antrian kueri. Hal ini dapat diamati dengan menggunakan/gremlin/status
,/oc/status
, atau /sparql/status
APIs, atau dapat juga diamati menggunakan MainRequestsPendingRequestsQueue
CloudWatch metrik.
Memori sistem pada setiap instance dibagi menjadi dua alokasi utama: cache kumpulan buffer dan memori thread eksekusi kueri.
Sekitar dua pertiga dari memori yang tersedia dalam sebuah instance dialokasikan untuk cache buffer-pool. Cache buffer-pool digunakan untuk menyimpan komponen grafik yang paling baru digunakan untuk akses lebih cepat pada kueri yang berulang kali mengakses komponen tersebut. Instans dengan jumlah memori sistem yang lebih besar memiliki cache kumpulan buffer yang lebih besar yang dapat menyimpan lebih banyak grafik secara lokal. Pengguna dapat menyetel jumlah cache buffer-pool yang sesuai dengan memantau metrik hit dan miss cache buffer yang tersedia. CloudWatch
Anda mungkin ingin meningkatkan ukuran instans Anda jika tingkat hit cache turun di bawah 99,9% untuk jangka waktu yang konsisten. Ini menunjukkan bahwa kumpulan buffer tidak cukup besar, dan mesin harus mengambil data dari volume penyimpanan yang mendasarinya lebih sering daripada yang efisien.
Sepertiga sisanya dari memori sistem didistribusikan secara merata di seluruh thread eksekusi kueri, dengan beberapa memori yang tersisa untuk sistem operasi dan kolam dinamis kecil untuk thread untuk digunakan sesuai kebutuhan. Memori yang tersedia untuk setiap thread meningkat sedikit dari satu ukuran instance ke yang berikutnya hingga jenis 8xl
instance, di mana ukuran memori yang dialokasikan per thread mencapai maksimum.
Waktu untuk menambahkan lebih banyak memori thread adalah ketika Anda menemukan OutOfMemoryException
(OOM). Pengecualian OOM terjadi ketika satu utas membutuhkan lebih dari memori maksimum yang dialokasikan untuknya (ini tidak sama dengan seluruh instance yang kehabisan memori).
t3
dan jenis t4g
contoh
The t3
and t4g
family of instance menawarkan opsi berbiaya rendah untuk memulai menggunakan database grafik dan juga untuk pengembangan dan pengujian awal. Instans ini memenuhi syarat untuk penawaran tingkat gratis Neptunus
t4g
Instance t3
dan hanya ditawarkan dalam konfigurasi ukuran sedang (t3.medium
dant4g.medium
).
Mereka tidak dimaksudkan untuk digunakan dalam lingkungan produksi.
Karena instance ini memiliki sumber daya yang sangat terbatas, mereka tidak disarankan untuk menguji waktu eksekusi kueri atau kinerja database secara keseluruhan. Untuk menilai kinerja kueri, tingkatkan ke salah satu keluarga instance lainnya.
r4
keluarga tipe instance
DEPRECATED — r4
Keluarga ini ditawarkan ketika Neptunus diluncurkan pada tahun 2018, tetapi sekarang jenis instans yang lebih baru menawarkan harga/kinerja yang jauh lebih baik. Pada versi mesin 1.1.0.0, Neptunus tidak lagi mendukung jenis instans. r4
r5
keluarga tipe instance
r5
Keluarga berisi jenis instance yang dioptimalkan untuk memori yang berfungsi dengan baik untuk sebagian besar kasus penggunaan grafik. r5
Keluarga berisi tipe instance dari r5.large
hinggar5.24xlarge
. Mereka menskalakan secara linier dalam kinerja komputasi saat Anda meningkatkan ukuran. Misalnya, memori r5.xlarge
(4 v CPUs dan 32GiB) memiliki dua kali v CPUs dan memori memori r5.large
(2 v CPUs dan 16GiB), dan memori r5.2xlarge
(8 v CPUs dan 64GiB) memiliki dua kali v dan memori memori. CPUs r5.xlarge
Anda dapat mengharapkan kinerja kueri untuk diskalakan secara langsung dengan kapasitas komputasi hingga jenis r5.12xlarge
instans.
Keluarga r5
instance memiliki arsitektur CPU Intel 2-soket. Tipe r5.12xlarge
dan yang lebih kecil menggunakan soket tunggal dan memori sistem yang dimiliki oleh prosesor soket tunggal itu. r5.24xlarge
Jenis r5.16xlarge
dan menggunakan soket dan memori yang tersedia. Karena ada beberapa overhead manajemen memori yang diperlukan antara dua prosesor fisik dalam arsitektur 2-soket, peningkatan kinerja yang ditingkatkan dari tipe a r5.12xlarge
ke a r5.16xlarge
atau r5.24xlarge
instance tidak linier saat Anda meningkatkan skala pada ukuran yang lebih kecil.
r5d
keluarga tipe instance
Neptunus memiliki fitur lookup-cache yang dapat digunakan untuk meningkatkan kinerja query yang perlu mengambil dan mengembalikan sejumlah besar nilai properti dan literal. Fitur ini digunakan terutama oleh pelanggan dengan kueri yang perlu mengembalikan banyak atribut. Cache pencarian meningkatkan kinerja kueri ini dengan mengambil nilai atribut ini secara lokal daripada mencari masing-masing berulang kali di penyimpanan yang diindeks Neptunus.
Cache pencarian diimplementasikan menggunakan volume EBS NVMe -attached pada tipe instancer5d
. Hal ini diaktifkan menggunakan kelompok parameter cluster. Karena data diambil dari penyimpanan yang diindeks Neptunus, nilai properti dan literal RDF di-cache dalam volume ini. NVMe
Jika Anda tidak memerlukan fitur cache pencarian, gunakan jenis r5
instans standar daripadar5d
, untuk menghindari biaya yang lebih tinggi darir5d
.
r5d
Keluarga memiliki tipe contoh dalam ukuran yang sama dengan r5
keluarga, dari r5d.large
hinggar5d.24xlarge
.
r6g
keluarga tipe instance
AWS telah mengembangkan prosesor berbasis ARM sendiri yang disebut Gravitonr6g
Keluarga menggunakan prosesor Graviton2. Dalam pengujian kami, prosesor Graviton2 menawarkan kinerja 10-20% lebih baik untuk kueri grafik gaya OLTP (dibatasi). Namun, kueri Olap-ish yang lebih besar mungkin sedikit kurang berkinerja dengan prosesor Graviton2 dibandingkan dengan prosesor Intel karena kinerja paging memori yang sedikit kurang berkinerja.
Penting juga untuk dicatat bahwa r6g
keluarga memiliki arsitektur soket tunggal, yang berarti bahwa skala kinerja secara linier dengan kapasitas komputasi dari an r6g.large
ke a r6g.16xlarge
(tipe terbesar dalam keluarga).
r6i
keluarga tipe instance
Instans Amazon R6i
x2g
keluarga tipe instance
Beberapa kasus penggunaan grafik melihat kinerja yang lebih baik ketika instance memiliki cache kumpulan buffer yang lebih besar. x2g
Keluarga diluncurkan untuk mendukung kasus penggunaan tersebut dengan lebih baik. x2g
Keluarga memiliki memory-to-vCPU rasio yang lebih besar daripada r6g
keluarga r5
atau keluarga. x2g
Instans juga menggunakan prosesor Graviton2, dan memiliki banyak karakteristik kinerja yang sama dengan tipe r6g
instance, serta cache buffer-pool yang lebih besar.
Jika Anda menggunakan r5
atau jenis r6g
instance dengan pemanfaatan CPU rendah dan tingkat kehilangan cache kumpulan buffer yang tinggi, coba gunakan keluarga sebagai x2g
gantinya. Dengan begitu, Anda akan mendapatkan memori tambahan yang Anda butuhkan tanpa membayar lebih banyak kapasitas CPU.
serverless
jenis contoh
Fitur Neptunus Tanpa Server dapat menskalakan ukuran instans secara dinamis berdasarkan kebutuhan sumber daya beban kerja. Alih-alih menghitung berapa banyak v CPUs yang dibutuhkan untuk aplikasi Anda, Neptune Serverless memungkinkan Anda menetapkan batas bawah dan atas pada kapasitas komputasi (diukur dalam Unit Kapasitas Neptunus) untuk instance di cluster DB Anda. Beban kerja dengan pemanfaatan yang bervariasi dapat dioptimalkan biaya dengan menggunakan instans tanpa server daripada instance yang diprovokasi.
Anda dapat menyiapkan instans yang disediakan dan tanpa server di cluster DB yang sama untuk mencapai konfigurasi kinerja biaya yang optimal.