SPARQLpetunjuk kueri - Amazon Neptune

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

SPARQLpetunjuk kueri

Anda dapat menggunakan petunjuk kueri untuk menentukan strategi pengoptimalan dan evaluasi untuk SPARQL kueri tertentu di Amazon Neptunus.

Petunjuk kueri diekspresikan menggunakan pola tiga tambahan yang disematkan dalam SPARQL kueri 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 saat tidak ada jaminan pemesanan yang diberikan—yaitu, ketika urutan hasil tidak diberlakukan secara eksplisit dengan menggunakan BY). ORDER

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

Lingkup petunjuk SPARQL kueri di Neptunus

Tabel berikut menunjukkan cakupan yang tersedia, petunjuk terkait, dan deskripsi untuk petunjuk SPARQL kueri di Amazon Neptunus. 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

menggunakan DFE

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 ke subquery bersarangSELECT. Subkueri dievaluasi secara independen, tanpa mempertimbangkan solusi dihitung sebelum subkueri.