Mendapatkan laporan ringkasan singkat tentang grafik Anda - Amazon Neptune

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/summary

  • https://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.

      • nodeStructuresBidang ini hanya mode=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.

      • edgeStructuresBidang ini hanya mode=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.

      • subjectStructuresBidang ini hanya mode=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 atau alat lain yang berfungsi dengan dan. HTTPS IAM Lihat Menggunakan awscurl dengan kredensyal sementara untuk terhubung dengan aman ke cluster DB dengan otentikasi diaktifkan IAM untuk melihat cara mengatur kredensional yang tepat. Setelah Anda melakukannya, Anda kemudian dapat membuat permintaan seperti ini:

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

AccessDeniedException

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: (user ARN) tidak diizinkan untuk melakukan: neptune-db: pada sumber daya: GetGraphSummary (resource ARN).

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 GetGraphSummary tindakan.

BadRequestException

400

Statistik dinonaktifkan, jadi ringkasan grafik juga dinonaktifkan.

Mencoba mengambil ringkasan pada jenis instance burstable (t3ataut4g) di mana statistik dinonaktifkan.

Gunakan jenis instans di mana pembuatan statistik diaktifkan (semua instance yang didukung kecuali t3 dant4g).

400

Rute buruk: /rdf/statistics/summarypathapi

Permintaan dikirim ke jalur yang tidak valid.

Gunakan rute yang benar untuk titik akhir ringkasan grafik.

InvalidParameterException

400

Permintaan berisi parameter yang tidak diketahui: '(unknown parameter or parameters)'.

Ketika parameter yang tidak valid ditentukan dalam permintaan.

Hanya gunakan parameter yang valid (sepertimode) dalam permintaan.

InvalidParameterException

400

URIparameter kueri 'mode' memiliki nilai yang tidak didukung '(invalid value)'.

Ketika URL parameter 'mode' dalam permintaan diikuti oleh nilai yang tidak valid.

Gunakan nilai yang valid (seperti basic ataudetailed) saat menentukan URL parameter 'mode'.

MethodNotAllowedException

405

Metode Tidak Diizinkan.

Memanggil titik akhir ringkasan dengan HTTP metode apa pun selain GET (seperti POST atauDELETE).

Gunakan HTTP GET metode saat memanggil titik akhir ringkasan.

StatisticsNotAvailableException

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" }