Petunjuk kueri SPARQL - Amazon Neptune

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Petunjuk kueri SPARQL

Gunakan petunjuk kueri untuk menentukan optimasi dan evaluasi strategi untuk kueri SPARQL tertentu di Amazon Neptune.

Petunjuk kueri dinyatakan menggunakan pola triple tambahan yang tertanam dalam kueri SPARQL dengan bagian-bagian berikut:

scope hint value
  • lingkup – Menentukan bagian dari kueri yang petunjuk kuerinya diberlakukan padanya, seperti grup tertentu dalam kueri atau kueri lengkap.

  • petunjuk – Mengidentifikasi jenis petunjuk yang akan diterapkan.

  • nilai – Menentukan perilaku aspek sistem yang sedang dipertimbangkan.

Petunjuk dan cakupan kueri dipaparkan sebagai istilah yang telah ditetapkan dalam namespace Amazon Neptune http://aws.amazon.com/neptune/vocab/v01/QueryHints#. Contoh dalam bagian ini menyertakan namespace sebagai awalan hint yang didefinisikan dan disertakan dalam kueri:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#>

Sebagai contoh, hal berikut ini menunjukkan bagaimana cara memasukkan petunjuk joinOrder dalam kueri SELECT:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#> SELECT ... { hint:Query hint:joinOrder "Ordered" . ... }

Kueri sebelumnya menginstruksikan mesin Neptune untuk mengevaluasi gabungan dalam kueri dalam urutan yang diberikan dan menonaktifkan pengurutan ulang otomatis apa pun.

Saat menggunakan petunjuk kueri, pertimbangkan hal berikut:

  • Anda dapat menggabungkan petunjuk kueri yang berbeda dalam satu kueri. Misalnya, Anda dapat menggunakan petunjuk kueri bottomUp untuk menganotasi subkueri untuk evaluasi bottom-up dan petunjuk kueri joinOrder untuk memperbaiki urutan gabungan dalam subkueri.

  • Anda dapat menggunakan petunjuk kueri yang sama beberapa kali, dalam cakupan yang tidak tumpang tindih yang berbeda.

  • Petunjuk kueri adalah petunjuk. Meskipun mesin kueri umumnya bertujuan untuk mempertimbangkan petunjuk kueri yang diberikan, mesin mungkin juga mengabaikannya.

  • Petunjuk kueri adalah pelestarian semantik. Menambahkan petunjuk kueri tidak mengubah output kueri (kecuali untuk urutan hasil potensial ketika tidak ada jaminan pengurutan yang diberikan—yaitu, ketika urutan hasil tidak secara eksplisit ditegakkan menggunakan ORDER BY).

Bagian berikut menyediakan informasi selengkapnya tentang petunjuk kueri yang tersedia dan penggunaannya di Neptune.

Cakupan petunjuk kueri SPARQL di Neptune

Tabel berikut menampilkan cakupan yang tersedia, petunjuk terkait, dan deskripsi untuk petunjuk kueri SPARQL di Amazon Neptune. Awalan hint dalam entri ini mewakili namespace Neptune untuk petunjuk:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#>
Cakupan Petunjuk yang Didukung Deskripsi
hint:Query

JoinOrder

Petunjuk kueri berlaku untuk seluruh kueri.
hint:Query

queryTimeout

Nilai batas waktu berlaku untuk seluruh kueri.
hint:Query

rangeSafe

Promosi jenis dinonaktifkan untuk seluruh kueri.
hint:Query

queryId

Nilai ID kueri berlaku untuk seluruh kueri.
hint:Query

useDFE

Penggunaan DFE diaktifkan (atau dinonaktifkan) untuk seluruh kueri.
hint:Group

JoinOrder

Permintaan kueri berlaku untuk elemen tingkat atas dalam grup tertentu, tetapi tidak untuk elemen nested (seperti subkueri) atau elemen induk.
hint:SubQuery

evaluationStrategy

Petunjuk ditentukan dan diterapkan untuk subkueri SELECT nested. Subkueri dievaluasi secara independen, tanpa mempertimbangkan solusi dihitung sebelum subkueri.