אפליקציה טיפוסית משתמשת בלקוח, כמו מנהל התקן ברמה נמוכה או מיפוי יחסי של אובייקטים (ORM), כדי להתחבר למסד הנתונים. Spanner תומך בלקוחות בכמה שפות שמאפשרות לכם להשתמש בספריות נפוצות, כמו JDBC, בסביבות פיתוח שונות. מידע נוסף זמין במאמר סקירה כללית של מנהלי התקנים.
בנוסף לניהול החיבור של האפליקציה ל-Spanner, צריך גם לנהל את השאילתות שנשלחות ואת התחביר שבו השאילתות משתמשות. Spanner תומך בשני דיאלקטים של SQL, שניהם מבוססים על תקן ANSI SQL. אתם יכולים לבחור להשתמש בממשק GoogleSQL או בממשק PostgreSQL עבור Spanner, בהתאם למערכת האקולוגית שבה אתם רוצים לפעול. מידע נוסף זמין במאמר בנושא בחירת הניב המתאים למסד הנתונים של Spanner. בגלל ההבדלים בארכיטקטורה בין מסד הנתונים של Spanner לבין מסד הנתונים של המקור, יכול להיות שהתחביר שמשמש ב-Spanner לא יהיה זהה לתחביר של מסד הנתונים של המקור.
כדי להעביר את האפליקציה ל-Spanner, צריך לבצע את השלבים הבאים באופן ידני:
Spanner לא תומך בהרצת קוד משתמש במסד הנתונים, ולכן צריך להעביר את כל הפרוצדורות והטריגרים שמאוחסנים ברמת מסד הנתונים לאפליקציה.
שימוש בספריות לקוח וב-ORM של Spanner. מידע נוסף זמין במאמר סקירה כללית של ממשקי API, ספריות לקוח ומנהלי התקנים של ORM.
חשוב לשים לב לחלוקת DML ב-Spanner, לטרנזקציות לקריאה בלבד, לחותמות זמן של ביצוע פעולות ולחותמות זמן של קריאה, ואיך אפשר להשתמש בהן כדי לשפר את ביצועי האפליקציה.
יכול להיות שתצטרכו גם לבצע שינויים בטיפול בעסקאות. כמה נקודות שכדאי לחשוב עליהן:
- המגבלה על מספר השינויים לכל פעולת commit היא 80,000. כל אינדקס משני בטבלה הוא מוטציה נוספת לכל שורה. כדי לשנות נתונים באמצעות מוטציות, אפשר לעיין במאמר בנושא הוספה, עדכון ומחיקה של נתונים באמצעות מוטציות. כדי לשנות כמות גדולה של נתונים, משתמשים ב-partitioned DML.