BigQuery Graph ותקני ISO
במאמר הזה מוסבר איך BigQuery Graph תומך בשפת השאילתות הבינלאומית של ISO למסדי נתונים של גרפים.
BigQuery Graph מבוסס על שני תקני ISO:
- ISO/IEC 9075-16:2023 - Information technology — Database languages SQL Property Graph Queries (SQL/PGQ), מהדורה 1, 2023
- ISO/IEC 39075:2024 - Information technology — Database languages — GQL, מהדורה 1, 2024
בטבלאות הבאות מתואר הקשר ברמה גבוהה בין SQL/PGQ, GQL ובין האופן שבו BigQuery Graph תומך בתקנים האלה.
| רגילה | SQL/PGQ | GQL | BigQuery Graph | |
|---|---|---|---|---|
| שאילתה | יכולות של התאמת דפוסי גרפים | משתפת את הפונקציות הבסיסיות של Graph Pattern Matching Language (GPML) עם GQL. | משתף את הפונקציות העיקריות של GPML עם SQL/PGQ. | יש תמיכה בשני התקנים. מידע נוסף זמין במאמר בנושא תבניות GQL ב-BigQuery Graph. |
| שאילתה | תכונות נוספות של שפת השאילתות (לדוגמה, LIMIT, ORDER, צבירה) |
מבוסס על SQL. | בדומה ל-SQL, אבל התכונות של שאילתת GQL הן משפטי שאילתת גרף שניתנים להרכבה לינארית. | יש תמיכה בשני התקנים. מידע נוסף זמין במאמרים בנושא הצהרות של שאילתות GQL ותחביר של שאילתות ב-GoogleSQL. |
| שאילתה | יכולת פעולה הדדית של גרפים וטבלאות | יש תמיכה | לא נתמך. | יש תמיכה בשני התקנים. מידע נוסף זמין במאמר בנושא האופרטור GRAPH_TABLE. |
| סוגים | סוגי הנתונים, הפונקציות והביטויים ב-SQL/PGQ וב-GQL דומים. | סוגי הנתונים, הפונקציות והביטויים ב-SQL/PGQ וב-GQL דומים. | תומך ברוב סוגי הנתונים והביטויים ב-SQL/PGQ וב-GQL. מידע נוסף זמין במאמר בנושא סוגי נתונים ב-GoogleSQL. | |
| DML | SQL/PGQ יורש את DML מ-SQL. | יש תמיכה ב-DML מבוסס-גרף. | תמיכה ב-DML שמבוסס על טבלאות SQL. מידע נוסף זמין במאמר בנושא שפת טיפול בנתונים (DML) ב-GoogleSQL. | |
| סכימה | אפשר להשתמש ב-CREATE PROPERTY GRAPH מטבלאות. |
תומך בשימוש ב-CREATE PROPERTY GRAPH עם סוגים פתוחים וסגורים. |
יש תמיכה בשיטת SQL/PGQ. מידע נוסף זמין בהגדרה של CREATE PROPERTY GRAPH. |
תמיכה ב-SQL/PGQ
| רגילה | מזהה התכונה של SQL/PGQ | BigQuery Graph |
|---|---|---|
| שאילתה (יכולת פעולה הדדית של גרף וטבלה) | תכונה G900: GRAPH_TABLE |
יש תמיכה מידע נוסף זמין במאמר בנושא האופרטור GRAPH_TABLE. |
| סכימה | תכונה G924: סעיף מפתח מפורש לטבלאות רכיבים. המשמעות היא הצהרה על התאמה לתכונה G920: תרשימי מאפיינים של SQL מבוססי DDL. | יש תמיכה מידע נוסף זמין בדף החשבון של CREATE_PROPERTY_GRAPH. |
| סכימה | תכונה G925: סעיף מפורש של תווית ומאפיינים לטבלאות של רכיבים. המשמעות היא הצהרה על התאמה לתכונה G920: תרשימי מאפיינים של SQL מבוססי DDL. | יש תמיכה מידע נוסף זמין בדף החשבון של CREATE_PROPERTY_GRAPH. |
| שאילתה (GPML) | תכונה G001: מצב התאמה של רכיבים שניתנים לחזרה. | יש תמיכה מצב ההתאמה של רכיבים שניתן לחזור עליהם הוא ברירת המחדל הסמנטית. אין תמיכה בתחביר של סעיף מצב התאמה של רכיבים חוזרים מפורשים. |
| שאילתה (GPML) | תכונה G008: סעיף של דוגמת תרשים WHERE. המשמעות היא טענה של התאמה לתכונה G000: תבנית גרף. |
יש תמיכה מידע נוסף זמין במאמר בנושא דפוסים בגרף. |
| שאילתה (GPML) | תכונה G034: שרשור נתיבים. | יש תמיכה מידע נוסף זמין במאמר בנושא דפוסים בגרף. |
| שאילתה (GPML) | תכונה G040: תבנית Vertex. | יש תמיכה מידע נוסף מופיע במאמר בנושא תבנית רכיב. |
| שאילתה (GPML) | תכונה G042: דפוסים בסיסיים מלאים של קצוות. | יש תמיכה מידע נוסף מופיע במאמר בנושא תבנית רכיב. |
| שאילתה (GPML) | תכונה G070: ביטוי תוויות: הפרדה בין תוויות. | יש תמיכה מידע נוסף זמין במאמר בנושא ביטויים של תוויות. |
| שאילתה (GPML) | תכונה G073: ביטוי של תווית: שם של תווית ספציפית. | יש תמיכה מידע נוסף זמין במאמר בנושא ביטויים של תוויות. |
| שאילתה (GPML) | תכונה G090: הפניה לנכס. | יש תמיכה |
תמיכה ב-GQL
| רגילה | מזהה תכונה של GQL | BigQuery Graph |
|---|---|---|
| סכימה | תכונה GG02: תרשים עם סוג תרשים סגור. תאימות ללפחות אחד מהתקנים GG20, GG21, GG22 או GG23:
|
יש תמיכה אפשר לבחור תמיכה ב-GQL מתוך GG01: Graph with an open type או GG02. BigQuery Graph לא תומך באותה הצהרת CREATE_GRAPH_TYPE כמו GQL. עם זאת, הצהרת CREATE_PROPERTY_GRAPH שנתמכת על ידי BigQuery Graph קשורה קשר הדוק ל-GG02 (עם תמיכה דומה ב-GG20, GG21, GG22 ו-GG23). |
| מבנה לקסיקלי | "הצהרה על התאמה לגרסה ספציפית של תקן Unicode® ולגרסאות הסינכרוניות של התקן הטכני של Unicode מס' 10, נספח תקן Unicode מס' 15 ונספח תקן Unicode מס' 31. הגרסה שצוינה של תקן Unicode® לא יכולה להיות נמוכה מ-13.0.0". | ל-BigQuery Graph GQL יש בדיוק את אותו מבנה לקסיקלי כמו ל-GoogleSQL. לעיון בערכי escape של Unicode, אפשר לעבור אל Escape sequences for string and bytes literals. |
| סוגי הנתונים | "A claim of conformance to the set of all value types that are supported as the types of property values. לכל הפחות, המארז צריך לכלול:
|
יש תמיכה מידע נוסף זמין ברשימה המלאה של סוגי הנתונים שנתמכים על ידי BigQuery Graph GQL. |
תכונות נוספות
התכונות שמפורטות בקטעים הקודמים הן התכונות המינימליות של התקנים. BigQuery Graph תומך בתכונות נוספות בתקני ISO. מידע נוסף זמין במאמרים סקירה כללית של סכימת BigQuery Graph וסקירה כללית של GQL.