Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
catatan
Jika Anda telah mengaktifkan kontrol akses berbutir halus di OpenSearch cluster Anda, Anda perlu mengaktifkan otentikasi IAM di database Neptunus Anda juga.
Untuk mendiagnosis masalah dengan replikasi dari Neptunus OpenSearch ke, lihat Log untuk fungsi Lambda CloudWatch poller Anda. Log ini memberikan rincian tentang jumlah catatan yang dibaca dari aliran dan jumlah catatan yang berhasil direplikasi. OpenSearch
Anda juga dapat mengubah tingkat LOGGING untuk fungsi Lambda Anda dengan mengubah variabel lingkungan LoggingLevel
.
catatan
Dengan LoggingLevel
set toDEBUG
, Anda dapat melihat detail tambahan, seperti catatan aliran yang dijatuhkan dan alasan mengapa masing-masing dijatuhkan, sambil mereplikasi data StreamPoller dari Neptunus ke. OpenSearch Ini dapat berguna jika Anda menemukan Anda kehilangan catatan.
Aplikasi konsumen streaming Neptunus menerbitkan dua metrik yang juga dapat membantu Anda mendiagnosis CloudWatch masalah:
StreamRecordsProcessed
— Jumlah catatan yang diproses oleh aplikasi per satuan waktu. Bermanfaat dalam melacak tingkat run aplikasi.StreamLagTime
— Perbedaan waktu dalam milidetik antara waktu saat ini dan waktu komit catatan aliran sedang diproses. Metrik ini menunjukkan berapa banyak aplikasi konsumen yang tertinggal.
Selain itu, semua metrik yang terkait dengan proses replikasi diekspos di dasbor di CloudWatch bawah nama yang sama dengan yang ApplicationName
disediakan saat Anda membuat instance aplikasi menggunakan templat. CloudWatch
Anda juga dapat memilih untuk membuat CloudWatch alarm yang dipicu setiap kali polling gagal lebih dari dua kali berturut-turut. Lakukan ini dengan menetapkan bidang CreateCloudWatchAlarm
ke true
ketika Anda menginisiasi aplikasi. Setelah itu, tentukan alamat email yang ingin Anda beri tahu saat alarm dipicu.
Pemecahan masalah proses yang gagal saat membaca catatan dari aliran
Jika proses gagal saat membaca catatan dari aliran, pastikan bahwa Anda memiliki hal berikut:
Aliran diaktifkan pada klaster Anda.
Titik akhir aliran Neptune menggunakan format yang benar:
Untuk Gremlin atau OpenCypher: atau aliasnya,
https://
your cluster endpoint
:your cluster port
/propertygraph/streamhttps://
your cluster endpoint
:your cluster port
/pg/streamUntuk SPARQL:
https://
your cluster endpoint
:your cluster port
/sparql/stream
Titik akhir DynamoDB dikonfigurasi untuk VPC Anda.
Titik akhir pemantauan dikonfigurasi untuk subnet VPC Anda.
Memecahkan masalah proses yang gagal saat menulis data OpenSearch
Jika proses gagal saat menulis catatan OpenSearch, pastikan Anda memiliki yang berikut ini:
Versi Elasticsearch Anda adalah 7.1 atau lebih tinggi, atau Opensearch 2.3 dan di atasnya.
OpenSearch dapat diakses dari fungsi poller Lambda di VPC Anda.
Kebijakan keamanan yang dilampirkan OpenSearch memungkinkan permintaan HTTP/HTTPS masuk.
Memperbaiki out-of-sync masalah antara Neptunus OpenSearch dan pengaturan replikasi yang ada
Anda dapat menggunakan langkah-langkah di bawah ini untuk mendapatkan database OpenSearch dan domain Neptunus kembali sinkron dengan data terbaru jika terjadi out-of-sync masalah di antara mereka yang disebabkan oleh korupsi ExpiredStreamException
atau data.
Perhatikan bahwa pendekatan ini menghapus semua data dalam OpenSearch domain dan menyinkronkannya kembali dari status database Neptunus saat ini, jadi tidak ada data yang perlu dimuat ulang dalam database Neptunus.
Nonaktifkan proses replikasi seperti yang dijelaskan dalam Menonaktifkan (menjeda) proses poller aliran.
-
Hapus indeks Neptunus pada domain menggunakan OpenSearch perintah berikut:
curl -X DELETE "
(your OpenSearch endpoint)
/amazon_neptune" Buat klon database (lihat Kloning Database di Neptunus).
-
Dapatkan yang terbaru
eventID
untuk aliran pada database kloning dengan menjalankan perintah semacam ini terhadap titik akhir Streams API (lihat Memanggil REST API Neptunus Streams untuk informasi selengkapnya):curl "https://
(your neptune endpoint)
:(port)
/(propertygraph or sparql)
/stream?iteratorType=LATEST"Catat nilai-nilai di
commitNum
danopNum
bidang dilastEventId
objek dalam respons. Gunakan export-neptune-to-elasticsearch
alat di github untuk melakukan sinkronisasi satu kali dari database kloning ke domain. OpenSearch -
Pergi ke tabel DynamoDB untuk tumpukan replikasi. Nama tabel akan menjadi Nama Aplikasi yang Anda tentukan dalam AWS CloudFormation template (defaultnya adalah
NeptuneStream
) dengan-LeaseTable
akhiran. Dengan kata lain, nama tabel default adalahNeptuneStream-LeaseTable
.Anda dapat menjelajahi baris tabel dengan memindai karena seharusnya hanya ada satu baris dalam tabel. Buat perubahan berikut menggunakan
commitNum
danopNum
nilai yang Anda rekam di atas:Ubah nilai untuk
checkpoint
bidang dalam tabel ke nilai yang Anda catatcommitNum
.Ubah nilai untuk
checkpointSubSequenceNumber
bidang dalam tabel ke nilai yang Anda catatopNum
.
Aktifkan kembali proses replikasi seperti yang dijelaskan dalam Mengaktifkan kembali proses poller aliran.
Hapus database kloning dan AWS CloudFormation tumpukan yang dibuat untuk
export-neptune-to-elasticsearch
alat ini.