Grafik BigQuery dan standar ISO
Dokumen ini menjelaskan cara BigQuery Graph mendukung bahasa kueri standar internasional ISO untuk database grafik.
BigQuery Graph didasarkan pada dua standar ISO:
- ISO/IEC 9075-16:2023 - Teknologi informasi — Bahasa database SQL Property Graph Queries (SQL/PGQ), Edisi 1, 2023
- ISO/IEC 39075:2024 - Information technology — Database languages — GQL, Edisi 1, 2024
Tabel berikut menjelaskan hubungan tingkat tinggi antara SQL/PGQ, GQL, dan cara BigQuery Graph mendukung standar ini.
| Standar | SQL/PGQ | GQL | Grafik BigQuery | |
|---|---|---|---|---|
| Kueri | Kemampuan pencocokan pola grafik | Berbagi fungsi inti Graph Pattern Matching Language (GPML) dengan GQL. | Membagikan fungsi GPML inti dengan SQL/PGQ. | Kedua standar tersebut didukung. Untuk mengetahui informasi selengkapnya, lihat pola GQL BigQuery Graph. |
| Kueri | Fitur bahasa kueri lainnya (misalnya, LIMIT, ORDER, agregasi) |
Berbasis SQL. | Mirip dengan SQL, tetapi fitur kueri GQL adalah pernyataan kueri grafik yang dapat disusun secara linear. | Kedua standar tersebut didukung. Untuk mengetahui informasi selengkapnya, lihat pernyataan kueri GQL BigQuery Graph dan Sintaksis kueri di GoogleSQL. |
| Kueri | Interoperabilitas grafik dan tabel | Didukung. | Tidak didukung. | Kedua standar tersebut didukung. Untuk mengetahui informasi selengkapnya, lihat operator GRAPH_TABLE. |
| Jenis | Jenis data, fungsi, dan ekspresi di SQL/PGQ dan GQL serupa. | Jenis data, fungsi, dan ekspresi di SQL/PGQ dan GQL serupa. | Mendukung sebagian besar jenis data dan ekspresi di SQL/PGQ dan GQL. Untuk mengetahui informasi selengkapnya, lihat Jenis data di GoogleSQL. | |
| DML | SQL/PGQ mewarisi DML dari SQL. | DML berbasis grafik didukung. | Mendukung DML berbasis tabel SQL. Untuk mengetahui informasi selengkapnya, lihat Bahasa manipulasi data GoogleSQL. | |
| Skema | Mendukung penggunaan CREATE PROPERTY GRAPH dari tabel. |
Mendukung penggunaan CREATE PROPERTY GRAPH dengan jenis terbuka dan jenis tertutup. |
Mendukung metode SQL/PGQ. Untuk mengetahui informasi selengkapnya, lihat definisi CREATE PROPERTY GRAPH. |
Dukungan SQL/PGQ
| Standar | ID fitur SQL/PGQ | Grafik BigQuery |
|---|---|---|
| Kueri (Interoperabilitas grafik dan tabel) | Fitur G900: GRAPH_TABLE |
Didukung. Untuk mengetahui informasi selengkapnya, lihat operator GRAPH_TABLE. |
| Skema | Fitur G924: Klausa kunci eksplisit untuk tabel elemen. Hal ini menyiratkan klaim kesesuaian dengan Fitur G920: Grafik properti SQL berbasis DDL. | Didukung. Untuk mengetahui informasi selengkapnya, lihat pernyataan CREATE_PROPERTY_GRAPH. |
| Skema | Fitur G925: Label eksplisit dan klausa properti untuk tabel elemen. Hal ini menyiratkan klaim kesesuaian dengan Fitur G920: Grafik properti SQL berbasis DDL. | Didukung. Untuk mengetahui informasi selengkapnya, lihat pernyataan CREATE_PROPERTY_GRAPH. |
| Kueri (GPML) | Fitur G001: Mode pencocokan elemen yang dapat diulang. | Didukung. Mode pencocokan elemen yang dapat diulang adalah semantik default. Sintaksis klausa mode pencocokan elemen berulang eksplisit tidak didukung. |
| Kueri (GPML) | Fitur G008: Klausul pola grafik WHERE. Hal ini menyiratkan klaim kesesuaian dengan Fitur G000: Pola grafik. |
Didukung. Untuk mengetahui informasi selengkapnya, lihat Pola grafik. |
| Kueri (GPML) | Fitur G034: Penggabungan jalur. | Didukung. Untuk mengetahui informasi selengkapnya, lihat Pola grafik. |
| Kueri (GPML) | Fitur G040: Pola verteks. | Didukung. Untuk mengetahui informasi selengkapnya, lihat Pola elemen. |
| Kueri (GPML) | Fitur G042: Pola tepi penuh dasar. | Didukung. Untuk mengetahui informasi selengkapnya, lihat Pola elemen. |
| Kueri (GPML) | Fitur G070: Ekspresi label: disjungsi label. | Didukung. Untuk mengetahui informasi selengkapnya, lihat Ekspresi label. |
| Kueri (GPML) | Fitur G073: Ekspresi label: nama label individual. | Didukung. Untuk mengetahui informasi selengkapnya, lihat Ekspresi label. |
| Kueri (GPML) | Fitur G090: Referensi properti. | Didukung. |
Dukungan GQL
| Standar | ID fitur GQL | Grafik BigQuery |
|---|---|---|
| Skema | Fitur GG02: Grafik dengan jenis grafik tertutup. Kesesuaian dengan setidaknya salah satu dari GG20, GG21, GG22, atau GG23:
|
Didukung. Dukungan GQL dapat dipilih dari GG01: Grafik dengan jenis terbuka atau GG02. BigQuery Graph tidak mendukung pernyataan CREATE_GRAPH_TYPE yang sama persis dengan GQL. Namun, pernyataan CREATE_PROPERTY_GRAPH yang didukung oleh BigQuery Graph terkait erat dengan GG02 (dengan dukungan serupa untuk GG20, GG21, GG22, dan GG23). |
| Struktur leksikal | "Klaim kesesuaian dengan versi tertentu dari The Unicode® Standard dan versi sinkron dari Unicode Technical Standard #10, Unicode Standard Annex #15, dan Unicode Standard Annex #31. Versi yang diklaim dari The Unicode® Standard tidak boleh kurang dari 13.0.0." | GQL BigQuery Graph memiliki struktur leksikal yang sama persis dengan GoogleSQL. Untuk referensi nilai escape unicode, lihat Urutan escape untuk literal string dan byte. |
| Jenis data | "Klaim kesesuaian dengan kumpulan semua jenis nilai yang didukung sebagai jenis nilai properti. Setidaknya, set ini harus mencakup:
|
Didukung. Untuk mengetahui informasi selengkapnya, lihat daftar lengkap jenis data yang didukung oleh BigQuery Graph GQL. |
Fitur tambahan
Fitur yang tercantum di bagian sebelumnya adalah fitur kesesuaian minimal standar. BigQuery Graph mendukung fitur tambahan dalam standar ISO. Untuk mempelajari lebih lanjut, lihat Ringkasan skema BigQuery Graph dan ringkasan GQL.