Penyimpanan multi-tier untuk Layanan Amazon OpenSearch - OpenSearch Layanan Amazon

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

Penyimpanan multi-tier untuk Layanan Amazon OpenSearch

Penyimpanan multi-tier untuk Amazon OpenSearch Service adalah solusi manajemen data cerdas yang mengoptimalkan kinerja dan biaya dengan mengelola data di berbagai tingkatan penyimpanan. Arsitektur ini memungkinkan organisasi untuk secara efisien menyeimbangkan trade-off antara kinerja dan biaya dengan menyimpan data yang sering diakses dalam penyimpanan panas berkinerja tinggi sambil memindahkan data yang lebih jarang diakses ke penyimpanan hangat yang lebih hemat biaya.

Amazon OpenSearch Service menawarkan dua opsi arsitektur untuk tingkat hot/warm penyimpanan:

  • OpenSearch Arsitektur Penyimpanan Multi-tier

    • Menggabungkan Amazon S3 dengan penyimpanan instans lokal

    • Didukung oleh Instans yang OpenSearch Dioptimalkan

    • Mendukung operasi menulis di tingkat hangat

    • Mendukung migrasi data yang mulus antara tingkat panas dan hangat

    • Tersedia di OpenSearch 3.3 dan di atas

    • Tidak mendukung Cold Tier

  • UltraWarmberbasis Arsitektur

    • Menggabungkan Amazon S3 dengan penyimpanan instans lokal

    • Didukung oleh UltraWarm Instans

    • Dioptimalkan untuk beban kerja tingkat hangat hanya-baca

    • Tersedia di Elasticsearch versi 6.8 dan di atas dan semua versi OpenSearch

    • Mendukung Tingkat Dingin

catatan

Dokumentasi ini hanya berfokus pada arsitektur multi-tier. Untuk arsitektur penyimpanan Ultrawarm, lihat Ultrawarm dan Cold Storage

Arsitektur penyimpanan multi-tier

Manfaat utama

  • Writable Warm: Mendukung operasi penulisan pada indeks hangat

  • Migrasi Seamless: Perpindahan data yang mulus di seluruh tingkatan penyimpanan

  • Optimalisasi Biaya: Kurangi biaya penyimpanan dengan memindahkan data yang kurang aktif ke penyimpanan hangat yang hemat biaya

  • Peningkatan Kinerja: Pertahankan kinerja tinggi untuk data yang sering diakses di tingkat panas

  • Manajemen Data Fleksibel: Pilih arsitektur yang paling sesuai dengan kebutuhan beban kerja Anda

  • Manajemen Otomatis: Manajemen siklus hidup data yang disederhanakan di seluruh tingkatan penyimpanan

Prasyarat

  • Versi mesin: OpenSearch 3.3 atau yang lebih baru

  • Keluarga contoh:

    • Node panas: OR1, OR2, OM2, atau OI2

    • Node hangat: OI2

  • Keamanan: Node-to-node enkripsi, enkripsi saat istirahat, HTTPS diberlakukan

Batasan

  • Bekerja pada semua domain dengan instance yang OpenSearch dioptimalkan yang belum mengaktifkan Ultrawarm

  • Tidak ada dukungan untuk tingkat dingin

Hal yang perlu diperhatikan

  • Migrasi panas ke hangat tidak memicu penggabungan kekuatan dalam arsitektur mult-tier. Jika diperlukan, pengguna masih dapat mengatur penggabungan paksa menggunakan kebijakan Manajemen Indeks.

  • Selain pengindeksan, node hangat sekarang juga melakukan operasi penggabungan latar belakang (mirip dengan panas).

  • Semua permintaan pencarian pada indeks hangat dirutekan ke pecahan primer dan replika melayani hanya dibaca ketika pecahan utama mati.

  • Snapshot otomatis untuk indeks hangat juga didukung dengan arsitektur ini

  • Replikasi lintas klaster hanya didukung untuk indeks panas

  • Indeks APIs seperti Shrink, Split dan Clone tidak bekerja dengan indeks hangat.

Membuat domain multi-tier

Langkah 1: Buat domain

aws opensearch create-domain \ --domain-name my-domain \ --engine-version OpenSearch_3.3 \ --cluster-config InstanceCount=3,InstanceType=or2.large.search,DedicatedMasterEnabled=true,DedicatedMasterType=m6g.large.search,DedicatedMasterCount=3,WarmEnabled=true,WarmCount=3,WarmType=oi2.2xlarge.search \ --ebs-options EBSEnabled=true,VolumeType=gp2,VolumeSize=11 \ --node-to-node-encryption-options Enabled=true \ --encryption-at-rest-options Enabled=true \ --domain-endpoint-options EnforceHTTPS=true,TLSSecurityPolicy=Policy-Min-TLS-1-2-2019-07 \ --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"user_name","MasterUserPassword":"your_pass"}}' \ --access-policies '{"Version": "2012-10-17", "Statement":[{"Effect":"Allow","Principal":"*","Action":"es:*","Resource":"*"}]}' \ --region us-east-1

Langkah 2: Verifikasi node hangat

aws opensearch describe-domain-nodes --domain-name my-domain --region us-east-1

Sampel respon (kutipan):

{ "NodeType": "Warm", "InstanceType": "oi2.large.search", "NodeStatus": "Active" }

Mengelola migrasi tingkat

Dukungan domain multi-tier:

  • Tiering Baru APIs untuk pengalaman yang disederhanakan

  • Warisan UltraWarm APIs untuk kompatibilitas

Tiering baru APIs

Migrasikan indeks ke pemanasan:

curl -XPOST 'https://localhost:9200/index-name/_tier/warm'

Respons:

{"acknowledged": true}

Migrasikan indeks ke hot:

curl -XPOST 'https://localhost:9200/index-name/_tier/hot'

Respons:

{"acknowledged": true}

Periksa status tingkatan:

curl -XGET 'https://localhost:9200/index-name/_tier'

Contoh respons:

{ "tiering_status": { "index": "index-name", "state": "RUNNING_SHARD_RELOCATION", "source": "HOT", "target": "WARM", "start_time": 1745836500563, "shard_level_status": { "running": 0, "total": 100, "pending": 100, "succeeded": 0 } } }

Tampilan pecahan terperinci:

curl 'https://localhost:9200/index1/_tier?detailed=true'

Daftar semua migrasi yang sedang berlangsung (teks):

curl 'https://localhost:9200/_tier/all'

Daftar semua migrasi yang sedang berlangsung (JSON):

curl 'https://localhost:9200/_tier/all?format=json'

Filter berdasarkan tingkat target:

curl 'https://localhost:9200/_tier/all?target=_warm'

Warisan UltraWarm APIs untuk kompatibilitas

Migrasi ke hangat:

curl -XPOST localhost:9200/_ultrawarm/migration/index2/_warm

Migrasi ke panas:

curl -XPOST localhost:9200/_ultrawarm/migration/index2/_hot

Periksa status:

curl -XGET localhost:9200/_ultrawarm/migration/index2/_status

Konfigurasi keamanan

Jika Anda mengaktifkan penyimpanan multi-tier pada domain OpenSearch Layanan Amazon yang sudah ada sebelumnya, storage_tiering_manager peran tersebut mungkin tidak ditentukan pada domain. Pengguna non-admin harus dipetakan ke peran ini untuk mengelola indeks hangat pada domain menggunakan kontrol akses berbutir halus. Untuk membuat secara manual peran storage_tiering_manager, lakukan langkah-langkah berikut:

  1. Di OpenSearch Dasbor, buka Keamanan dan pilih Izin.

  2. Pilih Buat grup tindakan dan konfigurasi grup-grup berikut:

    Nama Grup Izin
    storage_tiering_cluster indeks:admin/_tier/all
    storage_tiering_index_read indeks:admin/_ tier/get, indices:admin/get
    storage_tiering_index_write indeks:admin/_ _to_hot tier/hot_to_warm, indices:admin/_tier/warm
  3. Pilih Peran dan Buat peran.

  4. Beri nama peran storage_tiering_manager.

  5. Untuk Izin klaster, pilih storage_tiering_cluster dan cluster_monitor.

  6. Untuk Indeks, ketik *.

  7. Untuk izin Indeks, pilihstorage_tiering_index_read, storage_tiering_index_write danindices_monitor.

  8. Pilih Buat.

  9. Setelah Anda membuat peran, petakan ke setiap pengguna atau peran backend yang akan mengelola indeks multi-tier.

Praktik terbaik

Saat Anda menerapkan penyimpanan multi-tier di domain OpenSearch Layanan Amazon, pertimbangkan praktik terbaik berikut:

  • Tinjau pola akses data Anda secara teratur untuk mengoptimalkan alokasi tingkat

  • Pantau metrik kinerja untuk memastikan pemanfaatan sumber daya yang efisien

  • Gunakan tiering baru APIs untuk kontrol granular atas migrasi data

Metrik pemantauan

Domain penyimpanan multi-tier menyediakan metrik tambahan untuk memantau kinerja tingkat hangat. Metrik ini mencakup metrik yang ada dan UltraWarm metrik baru yang spesifik untuk arsitektur Instans yang OpenSearch Dioptimalkan:

Metrik baru

Nama Metrik Statistik Tingkat Node Statistik Tingkat Cluster Granularitas
WarmIndexingLatency Rata-rata Rata-rata 1 menit
WarmIndexingRate Rata-rata Rata-rata, Maksimum, Jumlah 1 menit
WarmThreadpoolIndexingQueue Maksimum Jumlah, Maksimum, Rata-rata 1 menit
WarmThreadpoolIndexingRejected Maksimum Jumlah 1 menit
WarmThreadpoolIndexingThreads Maksimum Jumlah, Rata-rata 1 menit