Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mendapatkan laporan ringkasan singkat tentang grafik Anda
APIRingkasan grafik Neptunus mengambil informasi berikut tentang grafik Anda:
Untuk grafik properti (PG), ringkasan grafik API mengembalikan daftar read-only label node dan edge dan kunci properti, bersama dengan jumlah node, tepi, dan properti.
Untuk grafik kerangka kerja deskripsi sumber daya (RDF), ringkasan grafik API mengembalikan daftar kelas dan kunci predikat hanya-baca, bersama dengan jumlah paha depan, subjek, dan predikat.
catatan
Ringkasan grafik API diperkenalkan dalam rilis mesin Neptunus 1.2.1.0.
Dengan ringkasan grafikAPI, Anda dapat dengan cepat mendapatkan pemahaman tingkat tinggi tentang ukuran dan konten data grafik Anda. Anda juga dapat menggunakan API secara interaktif dalam notebook Neptunus menggunakan sihir Neptunus Workbench. %summary Dalam aplikasi grafik, API dapat digunakan untuk meningkatkan hasil pencarian dengan memberikan label node atau tepi yang ditemukan sebagai bagian dari pencarian.
Data ringkasan grafik diambil dari DFEstatistik yang dihitung oleh mesin DFENeptunus selama runtime, dan tersedia kapan pun statistik tersedia. DFE Statistik diaktifkan secara default saat Anda membuat cluster DB Neptunus baru.
catatan
Pembuatan statistik dinonaktifkan t3
dan tipe t4
instance (yaitu, tipe on db.t3.medium
dan db.t4g.medium
instance) untuk menghemat memori. Akibatnya, data ringkasan grafik juga tidak tersedia pada jenis instance tersebut.
Anda dapat memeriksa status DFE statistik menggunakan status statistik API. Selama pembuatan statistik secara otomatis belum dinonaktifkan, statistik diperbarui secara otomatis secara berkala.
Jika Anda ingin memastikan bahwa statistik seterbaru mungkin saat Anda meminta ringkasan grafik, Anda dapat memicu pembaruan statistik secara manual tepat sebelum mengambil ringkasan. Jika grafik berubah saat statistik sedang dihitung, mereka tentu akan sedikit tertinggal, tetapi tidak banyak.
Menggunakan ringkasan grafik API untuk mengambil informasi ringkasan grafik
Untuk grafik properti yang Anda kueri menggunakan Gremlin atauopenCypher, Anda dapat mengambil ringkasan grafik dari titik akhir ringkasan grafik properti. Ada panjang dan pendek URI untuk titik akhir ini:
https://
your-neptune-host
:port
/propertygraph/statistics/summaryhttps://
your-neptune-host
:port
/pg/statistics/summary
Untuk RDF grafik yang Anda kueri gunakanSPARQL, Anda dapat mengambil ringkasan grafik dari titik akhir RDF ringkasan:
https://
your-neptune-host
:port
/rdf/statistics/summary
Titik akhir ini hanya-baca, dan hanya mendukung operasi. HTTP GET
Jika $ GRAPH _ SUMMARY _ ENDPOINT diatur ke alamat titik akhir mana pun yang ingin Anda kueri, Anda dapat mengambil data ringkasan menggunakan dan sebagai berikut: curl
HTTP GET
curl -G "$GRAPH_SUMMARY_ENDPOINT"
Jika tidak ada statistik yang tersedia saat Anda mencoba mengambil ringkasan grafik, responsnya terlihat seperti ini:
{ "detailedMessage": "Statistics are not available. Summary can only be generated after statistics are available.", "requestId": "48c1f788-f80b-b69c-d728-3f6df579a5f6", "code": "StatisticsNotAvailableException" }
Parameter mode
URL kueri untuk ringkasan grafik API
Ringkasan grafik API menerima parameter URL kueri bernamamode
, yang dapat mengambil salah satu dari dua nilai, yaitu basic
(default) dandetailed
. Untuk RDF grafik, respons ringkasan grafik detailed
mode berisi subjectStructures
bidang tambahan. Untuk grafik properti, respons ringkasan grafik terperinci berisi dua bidang tambahan, yaitu nodeStructures
danedgeStructures
.
Untuk meminta respons ringkasan detailed
grafik, sertakan mode
parameter sebagai berikut:
curl -G "$GRAPH_SUMMARY_ENDPOINT?mode=detailed"
Jika mode
parameter tidak ada, basic
mode digunakan secara default, jadi meskipun dimungkinkan untuk menentukan secara ?mode=basic
eksplisit, ini tidak perlu.
Respons ringkasan grafik untuk grafik properti (PG)
Untuk grafik properti kosong, respons ringkasan grafik terperinci terlihat seperti ini:
{ "status" : "200 OK", "payload" : { "version" : "v1", "lastStatisticsComputationTime" : "2023-01-10T07:58:47.972Z", "graphSummary" : { "numNodes" : 0, "numEdges" : 0, "numNodeLabels" : 0, "numEdgeLabels" : 0, "nodeLabels" : [ ], "edgeLabels" : [ ], "numNodeProperties" : 0, "numEdgeProperties" : 0, "nodeProperties" : [ ], "edgeProperties" : [ ], "totalNodePropertyValues" : 0, "totalEdgePropertyValues" : 0, "nodeStructures" : [ ], "edgeStructures" : [ ] } } }
Respons ringkasan grafik properti (PG) memiliki bidang-bidang berikut:
-
status
— kode HTTP pengembalian permintaan. Jika permintaan berhasil, kodenya adalah 200.Lihat Kesalahan ringkasan grafik umum untuk daftar kesalahan umum.
-
payload
version
— Versi respons ringkasan grafik ini.lastStatisticsComputationTime
— Stempel waktu, dalam format ISO 8601, dari waktu di mana Neptunus terakhir menghitung statistik.-
graphSummary
numNodes
— Jumlah node dalam grafik.numEdges
— Jumlah tepi dalam grafik.numNodeLabels
— Jumlah label node yang berbeda dalam grafik.numEdgeLabels
— Jumlah label tepi yang berbeda dalam grafik.nodeLabels
— Daftar label node yang berbeda dalam grafik.edgeLabels
— Daftar label tepi yang berbeda dalam grafik.numNodeProperties
— Jumlah properti simpul yang berbeda dalam grafik.numEdgeProperties
— Jumlah properti tepi yang berbeda dalam grafik.nodeProperties
— Daftar properti node yang berbeda dalam grafik, bersama dengan jumlah node di mana setiap properti digunakan.edgeProperties
— Daftar properti tepi yang berbeda dalam grafik bersama dengan jumlah tepi di mana setiap properti digunakan.totalNodePropertyValues
— Jumlah total penggunaan semua properti node.totalEdgePropertyValues
— Jumlah total penggunaan semua properti tepi.-
nodeStructures
— Bidang ini hanyamode=detailed
ada ketika ditentukan dalam permintaan. Ini berisi daftar struktur simpul, yang masing-masing berisi bidang-bidang berikut:count
— Jumlah node yang memiliki struktur khusus ini.nodeProperties
— Daftar properti simpul yang ada dalam struktur khusus ini.distinctOutgoingEdgeLabels
— Daftar label tepi keluar yang berbeda hadir dalam struktur khusus ini.
-
edgeStructures
— Bidang ini hanyamode=detailed
ada ketika ditentukan dalam permintaan. Ini berisi daftar struktur tepi, yang masing-masing berisi bidang-bidang berikut:count
— Jumlah tepi yang memiliki struktur khusus ini.edgeProperties
— Daftar properti tepi yang ada dalam struktur khusus ini.
Respons ringkasan RDF grafik untuk grafik
Untuk RDF grafik kosong, respons ringkasan grafik terperinci terlihat seperti ini:
{ "status" : "200 OK", "payload" : { "version" : "v1", "lastStatisticsComputationTime" : "2023-01-10T07:58:47.972Z", "graphSummary" : { "numDistinctSubjects" : 0, "numDistinctPredicates" : 0, "numQuads" : 0, "numClasses" : 0, "classes" : [ ], "predicates" : [ ], "subjectStructures" : [ ] } } }
Respons ringkasan RDF grafik memiliki bidang-bidang berikut:
-
status
— kode HTTP pengembalian permintaan. Jika permintaan berhasil, kodenya adalah 200.Lihat Kesalahan ringkasan grafik umum untuk daftar kesalahan umum.
-
payload
version
— Versi respons ringkasan grafik ini.lastStatisticsComputationTime
— Stempel waktu, dalam format ISO 8601, dari waktu di mana Neptunus terakhir menghitung statistik.-
graphSummary
numDistinctSubjects
— Jumlah subjek yang berbeda dalam grafik.numDistinctPredicates
— Jumlah predikat yang berbeda dalam grafik.numQuads
— Jumlah paha depan dalam grafik.numClasses
— Jumlah kelas dalam grafik.classes
— Daftar kelas dalam grafik.predicates
— Daftar predikat dalam grafik, bersama dengan jumlah predikat.-
subjectStructures
— Bidang ini hanyamode=detailed
ada ketika ditentukan dalam permintaan. Ini berisi daftar struktur subjek, yang masing-masing berisi bidang-bidang berikut:count
— Jumlah kemunculan struktur khusus ini.predicates
— Daftar predikat yang ada dalam struktur khusus ini.
Contoh respons ringkasan grafik properti (PG)
Berikut adalah respon ringkasan rinci untuk grafik properti yang berisi contoh dataset rute udara grafik properti
{ "status" : "200 OK", "payload" : { "version" : "v1", "lastStatisticsComputationTime" : "2023-03-01T14:35:03.804Z", "graphSummary" : { "numNodes" : 3748, "numEdges" : 51300, "numNodeLabels" : 4, "numEdgeLabels" : 2, "nodeLabels" : [ "continent", "country", "version", "airport" ], "edgeLabels" : [ "contains", "route" ], "numNodeProperties" : 14, "numEdgeProperties" : 1, "nodeProperties" : [ { "desc" : 3748 }, { "code" : 3748 }, { "type" : 3748 }, { "country" : 3503 }, { "longest" : 3503 }, { "city" : 3503 }, { "lon" : 3503 }, { "elev" : 3503 }, { "icao" : 3503 }, { "region" : 3503 }, { "runways" : 3503 }, { "lat" : 3503 }, { "date" : 1 }, { "author" : 1 } ], "edgeProperties" : [ { "dist" : 50532 } ], "totalNodePropertyValues" : 42773, "totalEdgePropertyValues" : 50532, "nodeStructures" : [ { "count" : 3471, "nodeProperties" : [ "city", "code", "country", "desc", "elev", "icao", "lat", "lon", "longest", "region", "runways", "type" ], "distinctOutgoingEdgeLabels" : [ "route" ] }, { "count" : 161, "nodeProperties" : [ "code", "desc", "type" ], "distinctOutgoingEdgeLabels" : [ "contains" ] }, { "count" : 83, "nodeProperties" : [ "code", "desc", "type" ], "distinctOutgoingEdgeLabels" : [ ] }, { "count" : 32, "nodeProperties" : [ "city", "code", "country", "desc", "elev", "icao", "lat", "lon", "longest", "region", "runways", "type" ], "distinctOutgoingEdgeLabels" : [ ] }, { "count" : 1, "nodeProperties" : [ "author", "code", "date", "desc", "type" ], "distinctOutgoingEdgeLabels" : [ ] } ], "edgeStructures" : [ { "count" : 50532, "edgeProperties" : [ "dist" ] } ] } } }
Contoh respon ringkasan RDF grafik
Berikut adalah respon ringkasan rinci untuk RDF grafik yang berisi contoh dataset rute RDF udara
{ "status" : "200 OK", "payload" : { "version" : "v1", "lastStatisticsComputationTime" : "2023-03-01T14:54:13.903Z", "graphSummary" : { "numDistinctSubjects" : 54403, "numDistinctPredicates" : 19, "numQuads" : 158571, "numClasses" : 4, "classes" : [ "http://kelvinlawrence.net/air-routes/class/Version", "http://kelvinlawrence.net/air-routes/class/Airport", "http://kelvinlawrence.net/air-routes/class/Continent", "http://kelvinlawrence.net/air-routes/class/Country" ], "predicates" : [ { "http://kelvinlawrence.net/air-routes/objectProperty/route" : 50656 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/dist" : 50656 }, { "http://kelvinlawrence.net/air-routes/objectProperty/contains" : 7004 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/code" : 3747 }, { "http://www.w3.org/2000/01/rdf-schema#label" : 3747 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/type" : 3747 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/desc" : 3747 }, { "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : 3747 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/icao" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/lat" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/region" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/runways" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/longest" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/elev" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/lon" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/country" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/city" : 3502 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/author" : 1 }, { "http://kelvinlawrence.net/air-routes/datatypeProperty/date" : 1 } ], "subjectStructures" : [ { "count" : 50656, "predicates" : [ "http://kelvinlawrence.net/air-routes/datatypeProperty/dist" ] }, { "count" : 3471, "predicates" : [ "http://kelvinlawrence.net/air-routes/datatypeProperty/city", "http://kelvinlawrence.net/air-routes/datatypeProperty/code", "http://kelvinlawrence.net/air-routes/datatypeProperty/country", "http://kelvinlawrence.net/air-routes/datatypeProperty/desc", "http://kelvinlawrence.net/air-routes/datatypeProperty/elev", "http://kelvinlawrence.net/air-routes/datatypeProperty/icao", "http://kelvinlawrence.net/air-routes/datatypeProperty/lat", "http://kelvinlawrence.net/air-routes/datatypeProperty/lon", "http://kelvinlawrence.net/air-routes/datatypeProperty/longest", "http://kelvinlawrence.net/air-routes/datatypeProperty/region", "http://kelvinlawrence.net/air-routes/datatypeProperty/runways", "http://kelvinlawrence.net/air-routes/datatypeProperty/type", "http://kelvinlawrence.net/air-routes/objectProperty/route", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://www.w3.org/2000/01/rdf-schema#label" ] }, { "count" : 238, "predicates" : [ "http://kelvinlawrence.net/air-routes/datatypeProperty/code", "http://kelvinlawrence.net/air-routes/datatypeProperty/desc", "http://kelvinlawrence.net/air-routes/datatypeProperty/type", "http://kelvinlawrence.net/air-routes/objectProperty/contains", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://www.w3.org/2000/01/rdf-schema#label" ] }, { "count" : 31, "predicates" : [ "http://kelvinlawrence.net/air-routes/datatypeProperty/city", "http://kelvinlawrence.net/air-routes/datatypeProperty/code", "http://kelvinlawrence.net/air-routes/datatypeProperty/country", "http://kelvinlawrence.net/air-routes/datatypeProperty/desc", "http://kelvinlawrence.net/air-routes/datatypeProperty/elev", "http://kelvinlawrence.net/air-routes/datatypeProperty/icao", "http://kelvinlawrence.net/air-routes/datatypeProperty/lat", "http://kelvinlawrence.net/air-routes/datatypeProperty/lon", "http://kelvinlawrence.net/air-routes/datatypeProperty/longest", "http://kelvinlawrence.net/air-routes/datatypeProperty/region", "http://kelvinlawrence.net/air-routes/datatypeProperty/runways", "http://kelvinlawrence.net/air-routes/datatypeProperty/type", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://www.w3.org/2000/01/rdf-schema#label" ] }, { "count" : 6, "predicates" : [ "http://kelvinlawrence.net/air-routes/datatypeProperty/code", "http://kelvinlawrence.net/air-routes/datatypeProperty/desc", "http://kelvinlawrence.net/air-routes/datatypeProperty/type", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://www.w3.org/2000/01/rdf-schema#label" ] }, { "count" : 1, "predicates" : [ "http://kelvinlawrence.net/air-routes/datatypeProperty/author", "http://kelvinlawrence.net/air-routes/datatypeProperty/code", "http://kelvinlawrence.net/air-routes/datatypeProperty/date", "http://kelvinlawrence.net/air-routes/datatypeProperty/desc", "http://kelvinlawrence.net/air-routes/datatypeProperty/type", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://www.w3.org/2000/01/rdf-schema#label" ] } ] } } }
Menggunakan otentikasi AWS Identity and Access Management (IAM) dengan titik akhir ringkasan grafik
Anda dapat mengakses titik akhir ringkasan grafik secara aman dengan IAM otentikasi dengan menggunakan awscurl
awscurl "$GRAPH_SUMMARY_ENDPOINT" \ --region
(your region)
\ --service neptune-db
penting
IAMIdentitas atau peran yang menciptakan kredensi sementara harus memiliki IAM kebijakan yang dilampirkan yang memungkinkan tindakan. GetGraphSummaryIAM
Lihat Kesalahan Autentikasi IAM daftar IAM kesalahan umum yang mungkin Anda temui.
Kode kesalahan umum yang dapat dikembalikan oleh permintaan ringkasan grafik
Kode kesalahan layanan Neptunus | HTTPstatus | Pesan | Skenario Kesalahan | Mitigasi |
---|---|---|---|---|
|
403 |
Token Otentikasi Hilang. |
Permintaan yang tidak ditandatangani atau ditandatangani salah dikirim ke database Neptunus dengan diaktifkan. IAM |
Tanda tangani permintaan dengan SigV4 sebelum mengirim (lihatIAMdan ringkasan grafik). |
403 |
Pengguna: |
IAMpolicy tidak mengizinkan tindakan GetGraphSummarysaat permintaan ringkasan grafik dikirim ke database Neptunus dengan diaktifkan. IAM |
Pastikan bahwa IAM kebijakan yang dilampirkan pada pengguna atau peran yang membuat permintaan memungkinkan |
|
|
400 |
Statistik dinonaktifkan, jadi ringkasan grafik juga dinonaktifkan. |
Mencoba mengambil ringkasan pada jenis instance burstable ( |
Gunakan jenis instans di mana pembuatan statistik diaktifkan (semua instance yang didukung kecuali |
400 |
Rute buruk: |
Permintaan dikirim ke jalur yang tidak valid. |
Gunakan rute yang benar untuk titik akhir ringkasan grafik. |
|
|
400 |
Permintaan berisi parameter yang tidak diketahui: ' |
Ketika parameter yang tidak valid ditentukan dalam permintaan. |
Hanya gunakan parameter yang valid (seperti |
|
400 |
URIparameter kueri 'mode' memiliki nilai yang tidak didukung ' |
Ketika URL parameter 'mode' dalam permintaan diikuti oleh nilai yang tidak valid. |
Gunakan nilai yang valid (seperti |
|
405 |
Metode Tidak Diizinkan. |
Memanggil titik akhir ringkasan dengan HTTP metode apa pun selain |
Gunakan HTTP |
|
400 |
Statistik belum dihitung, ringkasan grafik akan tersedia setelah perhitungan statistik selesai. |
Tidak ada statistik yang tersedia saat permintaan dikirim ke titik akhir ringkasan. |
Tunggu sampai pembuatan statistik selesai. Anda dapat memeriksa status pembuatan statistik menggunakan status statistik API. |
400 |
Batas statistik tercapai, sehingga ringkasan grafik tidak tersedia. |
Generasi statistik telah berhenti karena mencapai batas ukuran statistik. |
Ringkasan grafik tidak tersedia pada grafik ini. |
Misalnya, jika Anda membuat permintaan untuk membuat grafik titik akhir ringkasan dalam database Neptunus yang IAM mengaktifkan autentikasi, dan izin yang diperlukan tidak ada dalam kebijakan pemohon, maka Anda akan mendapatkan IAM respons seperti berikut:
{ "detailedMessage": "User: arn:aws:iam::
(account ID)
:(user or user name)
is not authorized to perform: neptune-db:GetGraphSummary on resource: arn:aws:neptune-db:(region)
:(account ID)
:(cluster resource ID)
/*", "requestId": "7ac2b98e-b626-d239-1d05-74b4c88fce82", "code": "AccessDeniedException" }