פיתוח באמצעות Spanner Omni

פיתוח אפליקציות באמצעות Spanner Omni עם תכונות נתמכות של Spanner. למרות שיש הרבה יכולות משותפות עם Spanner, יש הבדלים בין Spanner Omni לבין Spanner בספריות הלקוח, בממשק שורת הפקודה (CLI) ובפונקציונליות של המסוף.

יכולות הפיתוח הנתמכות ב-Spanner כוללות:

ההבדלים העיקריים

למרות שחלק גדול מהניסיון בפיתוח ב-Spanner חל גם על Spanner Omni, יש הבדלים בתחומים הבאים:

  • ספריות לקוח נתמכות: Spanner Omni תומך בספריות הלקוח Java,‏ Go ו-Python.

  • ממשק שורת הפקודה (CLI): Spanner Omni CLI הוא כלי ייעודי ששונה מ-Google Cloud CLI. למרות שהתחביר דומה, לא צריך לציין את הדגל --instance כשמריצים פקודות.

  • מגבלות של המסוף: המסוף של Spanner Omni הוא לקריאה בלבד, כך שאי אפשר להשתמש בו כדי לשנות פריסות או מסדי נתונים.

התכונות והשיטות המומלצות הבאות של Spanner רלוונטיות ל-Spanner Omni.

שיטות מומלצות ותרחישי שימוש

השיטות המומלצות והתרחישים לדוגמה שמופיעים בהמשך יעזרו לכם לתכנן ולבצע אופטימיזציה של האפליקציות שלכם ל-Spanner Omni.

  • Spanner כמסד נתונים למשחקים: שימוש בסקלביליות ובאחידות של Spanner עבור קצה העורפי של משחקים.

  • שיטות מומלצות ל-SQL: אופטימיזציה של השאילתות לביצועים ולשימוש יעיל במשאבים. רוב המושגים רלוונטיים ל-Spanner Omni. מכיוון ש-Spanner Omni לא תומך באחסון מדורג, יכול להיות שמושגים כמו העברת פרדיקטים של חותמות זמן לא יחולו באופן מלא. בנוסף, ל-Spanner Omni אין יכולות להצגת תוכנית שאילתה.

מסגרות שפה

שילוב של Spanner Omni עם מסגרות שפה פופולריות:

Hibernate ORM

משתמשים ב-Hibernate Object-Relational Mapping‏ (ORM) כדי למפות את אובייקטי ה-Java לטבלאות Spanner Omni. למידע נוסף, קראו את המאמרים הבאים:

GORM

שילוב של Spanner Omni עם GORM, כלי למיפוי יחסי אובייקטים (ORM) לשפת התכנות Go. כדי להשתמש ביכולות של GORM למיפוי יחסי אובייקטים באפליקציות Go. מידע נוסף:

עסקאות ופעולות בו-זמניות

‫Spanner Omni תומך בתכונות הבאות לניהול טרנזקציות:

רמות בידוד

הסבר על רמות הבידוד השונות שנתמכות ב-Spanner Omni כדי להבטיח עקביות של הנתונים.

אופטימיזציה

אפשר להשתמש בטכניקות האלה כדי לבצע אופטימיזציה של ביצועי העסקאות ושל נפח התעבורה.

נעילה

איך משתמשים בנעילה מפורשת כדי לנהל גישה בו-זמנית לנתונים.

גישה לנתונים ושינוי שלהם

לגשת לנתונים ולשנות אותם באמצעות שיטות סטנדרטיות של Spanner, כולל ספריות לקוח, CLI ו-DML.

מידע על ניהול סשנים באמצעות ספריות לקוח מופיע במאמר בנושא סשנים. מושגי הסשן הבסיסיים חלים על Spanner Omni, אבל יש תמיכה רק בסשנים מרובי-ערוצים.

נתוני הקריאה

קריאת נתונים מ-Spanner Omni באמצעות שיטות שונות, כולל קריאות בעבר וקריאות ישירות.

שינוי נתונים

לשנות את הנתונים באמצעות DML, מוטציות או ה-CLI.

סוגי הנתונים

‫Spanner Omni תומך בסוגי הנתונים הבאים לייצוג הנתונים של האפליקציה:

פיתוח ובדיקה

הגדירו את סביבת הפיתוח ואת התנהגות האפליקציה כדי להבטיח ביצועים אמינים וטיפול בשגיאות.

הזרמת שינויים בנתונים

סנכרון שינויים בזרמי נתונים ב-Spanner עוקבים אחרי שינויים במסד הנתונים, כמו הוספות, עדכונים ומחיקות, כמעט בזמן אמת. הם מנוהלים באמצעות DDL, ומתעדים פרטים כמו מפתחות ראשיים וחותמות זמן של ביצוע פעולות (commit) עבור מסדי נתונים שלמים או טבלאות ספציפיות. הפונקציונליות כמעט זהה ב-Spanner וב-Spanner Omni, אבל אין תמיכה ב-Dataflow ב-Spanner Omni.

מידע נוסף זמין במאמרים הבאים:

אפשר להשתמש בחיפוש טקסט מלא (FTS) ב-Spanner כדי לחפש מילים, ביטויים או מספרים בטבלאות. ה-FTS קורא את הנתונים האחרונים שבוצעו לגביהם פעולות.

התכונות העיקריות של FTS כוללות:

כדי להשתמש ב-FTS, צריך ליצור אינדקסים של חיפוש בעמודות שרוצים לחפש. ‫Spanner מפרק את הנתונים בעמודות האלה למילים נפרדות. הוא מעדכן את האינדקס באופן מיידי כשמוסיפים נתונים חדשים.

חיפושי FTS מציעים יכולות מתקדמות מעבר להתאמת טקסט רגילה, כמו:

הפונקציונליות של FTS זהה ב-Spanner וב-Spanner Omni.

הבדלים בטקסט המלא ב-Spanner

‫Spanner תומך בפונקציונליות הליבה של FTS שקיימת ב-Spanner, עם ההבדלים הבאים:

המאמרים הבאים