Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Cari titik waktu di OpenSearch Layanan Amazon
Point in Time (PIT) adalah jenis penelusuran yang memungkinkan Anda menjalankan kueri berbeda terhadap kumpulan data yang diperbaiki tepat waktu. Biasanya, ketika Anda menjalankan kueri yang sama pada indeks yang sama pada titik waktu yang berbeda, Anda menerima hasil yang berbeda karena dokumen terus-menerus diindeks, diperbarui, dan dihapus. Dengan PIT, Anda dapat melakukan kueri terhadap status konstan kumpulan data Anda.
Penggunaan utama pencarian PIT adalah memasangkannya dengan search_after
fungsionalitas. Ini adalah metode pagination yang disukai OpenSearch, terutama untuk deep pagination, karena beroperasi pada dataset yang dibekukan dalam waktu, tidak terikat pada kueri, dan mendukung pagination yang konsisten maju dan mundur. Anda dapat menggunakan PIT dengan domain yang menjalankan OpenSearch versi 2.5.
catatan
Topik ini memberikan ikhtisar PIT dan beberapa hal yang perlu dipertimbangkan saat menggunakannya di domain OpenSearch Layanan Amazon yang dikelola, bukan OpenSearch kluster yang dikelola sendiri. Untuk dokumentasi lengkap PIT, termasuk referensi API yang komprehensif, lihat Point in Time
Pertimbangan
Pertimbangkan hal berikut saat Anda mengonfigurasi pencarian PIT Anda:
-
Jika Anda memutakhirkan dari domain yang menjalankan OpenSearch versi 2.3 dan memerlukan kontrol akses halus pada tindakan PIT, Anda perlu menambahkan tindakan dan peran tersebut secara manual.
-
Tidak ada ketahanan untuk PIT. Node reboot, penghentian node, penerapan biru/hijau, dan OpenSearch proses restart menyebabkan semua data PIT hilang.
-
Jika pecahan berpindah selama penerapan biru/hijau, hanya segmen data langsung yang ditransfer ke node baru. Segmen pecahan yang dipegang oleh PIT (baik secara eksklusif maupun yang dibagikan dengan data hidup) tetap berada di simpul lama.
-
Pencarian PIT saat ini tidak berfungsi dengan pencarian asinkron.
Buat PIT
Untuk menjalankan kueri PIT, kirim permintaan HTTP untuk _search/point_in_time
menggunakan format berikut:
POST
opensearch-domain
/my-index
/_search/point_in_time?keep_alive=time
Anda dapat menentukan opsi PIT berikut:
Opsi | Deskripsi | Nilai default | Diperlukan |
---|---|---|---|
keep_alive |
Jumlah waktu untuk menyimpan PIT. Setiap kali Anda mengakses PIT dengan permintaan pencarian, masa pakai PIT diperpanjang dengan jumlah waktu yang sama dengan |
Ya | |
preference |
Sebuah string yang menentukan node atau shard yang digunakan untuk melakukan pencarian. |
Acak | Tidak |
routing |
String yang menentukan untuk merutekan permintaan pencarian ke pecahan tertentu. | Dokumen _id |
Tidak |
expand_wildcards |
Sebuah string yang menentukan jenis indeks yang dapat cocok dengan pola wildcard. Mendukung nilai yang dipisahkan koma. Nilai yang valid adalah sebagai berikut:
|
open |
Tidak |
allow_partial_pit_creation |
Sebuah boolean yang menentukan apakah akan membuat PIT dengan kegagalan sebagian. | true |
Tidak |
Sampel respon
{ "pit_id": "o463QQEPbXktaW5kZXgtMDAwMDAxFnNOWU43ckt3U3IyaFVpbGE1UWEtMncAFjFyeXBsRGJmVFM2RTB6eVg1aVVqQncAAAAAAAAAAAIWcDVrM3ZIX0pRNS1XejE5YXRPRFhzUQEWc05ZTjdyS3dTcjJoVWlsYTVRYS0ydwAA", "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "creation_time": 1658146050064 }
Saat Anda membuat PIT, Anda menerima ID PIT dalam respons. Ini adalah ID yang Anda gunakan untuk melakukan pencarian dengan PIT.
Izin titik waktu
PIT mendukung kontrol akses berbutir halus. Jika Anda memutakhirkan ke domain OpenSearch versi 2.5 dan memerlukan kontrol akses halus, Anda perlu membuat peran secara manual dengan izin berikut:
# Allows users to use all point in time search search functionality point_in_time_full_access: reserved: true index_permissions: - index_patterns: - '*' allowed_actions: - "indices:data/read/point_in_time/create" - "indices:data/read/point_in_time/delete" - "indices:data/read/point_in_time/readall" - "indices:data/read/search" - "indices:monitor/point_in_time/segments" # Allows users to use point in time search search functionality for specific index # All type operations like list all PITs, delete all PITs are not supported in this case point_in_time_index_access: reserved: true index_permissions: - index_patterns: - 'my-index-1' allowed_actions: - "indices:data/read/point_in_time/create" - "indices:data/read/point_in_time/delete" - "indices:data/read/search" - "indices:monitor/point_in_time/segments"
Untuk domain dengan OpenSearch versi 2.5 ke atas, Anda dapat menggunakan point_in_time_full_access
peran bawaan. Untuk informasi selengkapnya, lihat Model keamanan
Pengaturan PIT
OpenSearch memungkinkan Anda mengubah semua pengaturan PIT_cluster/settings
API. Di OpenSearch Layanan, saat ini Anda tidak dapat mengubah pengaturan.
Pencarian lintas klaster
Anda dapat membuat PITs, mencari dengan ID PIT, daftar PITs, dan menghapus PITs di seluruh cluster dengan batasan kecil berikut:
-
Anda dapat mencantumkan semua dan menghapus semua PIT hanya di domain sumber.
-
Anda tidak dapat meminimalkan perjalanan putaran jaringan sebagai bagian dari kueri pencarian lintas-klaster.
Untuk informasi selengkapnya, lihat Pencarian lintas-cluster di Layanan Amazon OpenSearch .
UltraWarm
Pencarian PIT dengan UltraWarm indeks terus bekerja. Untuk informasi selengkapnya, lihat UltraWarm penyimpanan untuk Amazon OpenSearch Service.
catatan
Anda dapat memantau statistik pencarian PIT di CloudWatch. Untuk daftar lengkap metrik, lihat Metrik titik waktu.