Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memecahkan masalah pencarian teks lengkap Neptunus
catatan
Jika Anda telah mengaktifkankontrol akses berbutir haluspada AndaOpenSearchcluster, Anda perluaktifkan otentikasi IAMdalam database Neptunus Anda juga.
Untuk mendiagnosis masalah dengan replikasi dari Neptunus keOpenSearch, konsultasikan denganCloudWatchLog untuk fungsi poller Lambda Anda. Log ini memberikan rincian tentang jumlah catatan yang dibaca dari aliran dan jumlah catatan yang berhasil direplikasiOpenSearch.
Anda juga dapat mengubah tingkat LOGGING untuk fungsi Lambda Anda dengan mengubah variabel lingkungan LoggingLevel
.
catatan
DenganLoggingLevel
diatur keDEBUG
, Anda dapat melihat detail tambahan, seperti catatan aliran yang dijatuhkan dan alasan mengapa masing-masing dijatuhkan, sambil mereplikasi data denganStreamPollerdari Neptunus keOpenSearch. Ini dapat berguna jika Anda menemukan Anda kehilangan catatan.
Aplikasi konsumen aliran Neptunus menerbitkan dua metrikCloudWatchyang juga dapat membantu Anda mendiagnosis 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 diCloudWatchdi bawah nama yang sama sepertiApplicationName
disediakan ketika Anda instantiated aplikasi menggunakanCloudWatchTemplat.
Anda juga dapat memilih untuk membuatCloudWatchalarm 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:
https://
atau alias nya,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 keOpenSearch
Jika suatu proses gagal saat menulis catatan keOpenSearch, pastikan Anda memiliki yang berikut:
Versi Elasticsearch Anda 7.1 atau lebih tinggi, atau Opensearch 2.3 ke atas.
OpenSearchdapat diakses dari fungsi poller Lambda di VPC Anda.
Kebijakan keamanan yang dilampirkanOpenSearchmemungkinkan permintaan HTTP/HTTPS masuk.
Memperbaikiout-of-syncmasalah antara Neptunus danOpenSearchpada pengaturan replikasi yang ada
Anda dapat menggunakan langkah-langkah di bawah ini untuk mendapatkan database Neptunus danOpenSearchdomain kembali sinkron dengan data terbaru dalam kasusout-of-syncmasalah di antara mereka yang dihasilkan dariExpiredStreamException
atau korupsi data.
Perhatikan bahwa pendekatan ini menghapus semua data diOpenSearchdomain dan kembali menyinkronkannya dari keadaan database Neptunus saat ini, sehingga tidak ada data yang perlu dimuat ulang dalam database Neptunus.
Nonaktifkan proses replikasi seperti yang dijelaskan diMenonaktifkan (menjeda) proses poller aliran.
-
Hapus indeks Neptunus padaOpenSearchdomain menggunakan perintah berikut:
curl -X DELETE "
(your OpenSearch endpoint)
/amazon_neptune" Buat tiruan dari database (lihatKloning Database di Neptunus).
-
Dapatkan yang terbaru
eventID
untuk stream pada database kloning dengan menjalankan perintah semacam ini terhadap endpoint API Streams (lihatMemanggil REST API Neptunus Streamsuntuk informasi lebih lanjut):curl "https://
(your neptune endpoint)
:(port)
/(propertygraph or sparql)
/stream?iteratorType=LATEST"Buat catatan nilai-nilai di
commitNum
danopNum
bidang dilastEventId
objek dalam respon. Gunakanexport-neptune-to-elasticsearch
alat pada github untuk melakukan sinkronisasi satu kali dari database kloning keOpenSearchdomain. -
Pergi ke tabel DynamoDB untuk tumpukan replikasi. Nama tabel akan menjadiNama Aplikasiyang Anda tentukan dalamAWS CloudFormationtemplate (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 di tabel. Buat perubahan berikut menggunakan
commitNum
danopNum
nilai yang Anda catat di atas:Ubah nilai untuk
checkpoint
bidang dalam tabel dengan nilai yang Anda catatcommitNum
.Ubah nilai untuk
checkpointSubSequenceNumber
bidang dalam tabel dengan nilai yang Anda catatopNum
.
Aktifkan kembali proses replikasi seperti yang dijelaskan dalamMengaktifkan kembali proses poller stream.
Hapus database kloning danAWS CloudFormationstack dibuat untuk
export-neptune-to-elasticsearch
alat.