Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
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 kuerijoinOrder
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.
Topik
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 |
Petunjuk kueri berlaku untuk seluruh kueri. | |
hint:Query |
Nilai batas waktu berlaku untuk seluruh kueri. | |
hint:Query |
Promosi jenis dinonaktifkan untuk seluruh kueri. | |
hint:Query |
Nilai ID kueri berlaku untuk seluruh kueri. | |
hint:Query |
Penggunaan DFE diaktifkan (atau dinonaktifkan) untuk seluruh kueri. | |
hint:Group |
Permintaan kueri berlaku untuk elemen tingkat atas dalam grup tertentu, tetapi tidak untuk elemen nested (seperti subkueri) atau elemen induk. | |
hint:SubQuery |
Petunjuk ditentukan dan diterapkan untuk subkueri SELECT nested. Subkueri dievaluasi secara independen, tanpa mempertimbangkan solusi dihitung sebelum subkueri. |