בדף הזה מתוארים מנהלי ההתקנים שנתמכים ב-Spanner למסדי נתונים בניב GoogleSQL ולמסדי נתונים בניב PostgreSQL.
Google תומכת במנהלי התקנים של Spanner בקוד פתוח לכמה ספריות וסביבות פיתוח פופולריות של מיפוי אובייקטים יחסי (ORM). מנהלי ההתקנים האלה מאפשרים להשתמש במסדי נתונים של Spanner באמצעות ממשקי API שמוגדרים על ידי ה-frameworks האלה.
בטבלאות הבאות מפורטים כל מנהלי ההתקנים ורכיבי ה-ORM בקוד פתוח שנתמכים ב-Spanner, והתכונות שכל אחד מהם תומך בהן. יש טבלה אחת לכל דיאלקט SQL נתמך.
אפשר גם להשתמש בספריות הלקוח של Spanner כדי לגשת ל-Spanner API. מידע נוסף זמין במאמר ספריות לקוח של Spanner.
מנהלי התקנים ו-ORM של GoogleSQL
| תכונה | database/sql | GORM | Spanner JDBC | Hibernate | Spring Data | R2DBC* | ADO.NET | Entity Framework | Active Record | SQLAlchemy | Django |
|---|---|---|---|---|---|---|---|---|---|---|---|
| שפה | המשך | המשך | Java | Java | Java | Java | C# | C# | Ruby | Python | Python |
| רמזים להצהרות | * | ||||||||||
| מוטציות | |||||||||||
| Batch DML | |||||||||||
| Batch DDL | |||||||||||
| קריאות בעבר | |||||||||||
| טבלאות משולבות | |||||||||||
| DML מחולק למחיצות | |||||||||||
| תוויות לסשנים | |||||||||||
| עדיפות הבקשה | |||||||||||
| סוג JSON | |||||||||||
| תיוג בקשות | |||||||||||
| ניב GoogleSQL | |||||||||||
| דיאלקט PostgreSQL | |||||||||||
| מגבלות | לא רלוונטי | תצוגה | לא רלוונטי | תצוגה | לא רלוונטי | לא רלוונטי | לא רלוונטי | תצוגה | תצוגה | תצוגה | תצוגה |
* בעמודה הזו מתואר R2DBC כשמשתמשים בו באופן ספציפי עם Spring Data.
† זמין רק כששולחים שאילתות SQL מילוליות, באמצעות ההערה @Query של Spring Data.
מנהלי התקנים ו-ORM של PostgreSQL
כדי להפעיל את כל מנהלי ההתקנים של PostgreSQL, צריך להפעיל את שרת ה-proxy של PGAdapter. מידע נוסף זמין במאמר מידע על PGAdapter.
מנהלי התקנים נתמכים
| תכונה | Spanner JDBC | PostgreSQL JDBC | pgx | psycopg2 | psycopg3 | node-postgres | Npgsql | R2DBC | ADBC |
|---|---|---|---|---|---|---|---|---|---|
| שפה | Java | Java | Go | Python | Python | Node.js | .NET | Java | Python |
| רמזים להצהרות | |||||||||
| מוטציות | |||||||||
| Batch DML | |||||||||
| Batch DDL | |||||||||
| קריאות בעבר | |||||||||
| טבלאות משולבות | |||||||||
| DML מחולק למחיצות | |||||||||
| תוויות לסשנים | |||||||||
| עדיפות הבקשה | |||||||||
| תיוג בקשות | |||||||||
| מגבלות | לא רלוונטי | תצוגה | תצוגה | תצוגה | תצוגה | תצוגה | לא רלוונטי | לא רלוונטי | תצוגה |
מערכות ORM נתמכות
| תכונה | Hibernate | Spring Data | GORM | SQLAlchemy 2 |
|---|---|---|---|---|
| שפה | Java | Java | Go | Python |
| רמזים להצהרות | ||||
| מוטציות | ||||
| Batch DML | ||||
| Batch DDL | ||||
| קריאות בעבר | ||||
| טבלאות משולבות | ||||
| DML מחולק למחיצות | ||||
| תוויות לסשנים | ||||
| עדיפות הבקשה | ||||
| תיוג בקשות | ||||
| מגבלות | תצוגה | תצוגה | תצוגה | תצוגה |
סביבות פיתוח משולבות (IDE) ולקוחות SQL נתמכים
הכלים הבאים יכולים להתחבר למסדי נתונים בניב PostgreSQL באמצעות PGAdapter.
| כלי | מדריך | הערות |
|---|---|---|
| IntelliJ / DataGrip | מדריך הגדרה | נדרש PGAdapter. |
| DBeaver | מדריך הגדרה | נדרש PGAdapter. |
| psql | מדריך הגדרה | כלי שורת הפקודה הרגיל של PostgreSQL. |
שילובים אחרים
| כלי | שפה | מדריך | הערות |
|---|---|---|---|
| postgres_fdw | C / תוסף | דוגמה | Foreign Data Wrapper ל-PostgreSQL. |
| connectorx | Python או Rust | דוגמה | ספרייה לטעינת נתונים עם ביצועים גבוהים. |
| Liquibase | Java | דוגמה | ניהול שינויים בסכימה של מסד הנתונים. |