הגדרת תוספים ל-PostgreSQL

אפשר להרחיב את PostgreSQL על ידי איגוד אובייקטים של SQL לחבילה ושימוש בהם כיחידה אחת. בדף הזה מוסבר איך להגדיר את התוספים של PostgreSQL שנתמכים ב-Cloud SQL.

שימוש בתוספים של PostgreSQL

אפשר להתקין רק את התוספים ש-Cloud SQL תומך בהם. מידע נוסף זמין במאמר בנושא תוספים ל-PostgreSQL שנתמכים על ידי Cloud SQL.

התקנה של תוסף

לפני שמשתמשים בתוסף, צריך להתקין אותו:

דרישה להרשאות של משתמש-על

ב-Cloud SQL, רק משתמשים ששייכים לתפקיד cloudsqlsuperuser יכולים ליצור תוספים. כשיוצרים מופע חדש של PostgreSQL, נוצר בשבילכם משתמש ברירת המחדל postgres (אבל אתם צריכים להגדיר את הסיסמה של המשתמש). המשתמש postgres שמוגדר כברירת מחדל הוא חלק מהתפקיד cloudsqlsuperuser. מידע נוסף זמין במאמר בנושא משתמשי PostgreSQL.

חיבורים בין מסדי נתונים

מכונות היעד לחיבורים צריכות להיות באותה רשת VPC כמו המכונה שממנה מתבצע החיבור.

במקרים של מופעי אשכולות, אי אפשר לבחור באפשרות Require trusted client certificates (נדרשים אישורי לקוח מהימנים) במסוףGoogle Cloud . בנוסף, כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח ל-localhost או ל-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע שלכם במסוף Google Cloud .

בקשת תמיכה בתוסף חדש

אי אפשר ליצור תוספים משלכם ב-Cloud SQL.

כדי לבקש תמיכה בתוסף, לוחצים על +1 בבעיה הפתוחה או יוצרים בעיה חדשה. רשימת הבעיות הפתוחות בנושא Cloud SQL ומידע על יצירת בעיות חדשות זמינים במאמר איך מחפשים או יוצרים דיווחים על בעיות ואיך שולחים בקשות למאפיינים חדשים לפי מוצר.

תוספי PostgreSQL שנתמכים על ידי Cloud SQL

בטבלאות שבהמשך מופיע קישור לתיעוד שבו אפשר לקבל מידע על שימוש בתוסף ספציפי.

התמיכה בתוספים של PostgreSQL ב-Cloud SQL מתחלקת לקטגוריות הבאות:

PostGIS

התוסף PostGIS נתמך ב-Cloud SQL ל-PostgreSQL בכל הגרסאות העיקריות.

בטבלה הבאה מפורטות הגרסאות של תוסף PostGIS לכל גרסה של Cloud SQL ל-PostgreSQL:

גרסת Cloud SQL ל-PostgreSQL תוסף PostGIS
‫PostgreSQL 9.6 3.2.5
‫PostgreSQL 10 3.2.5
‫PostgreSQL 11 3.2.5
‫PostgreSQL 12 3.4.4
‫PostgreSQL 13 3.5.2
‫PostgreSQL 14 3.5.2
‫PostgreSQL 15 3.5.2
‫PostgreSQL 16 3.5.2
‫PostgreSQL 17 3.5.2

עבור גרסה ראשית ספציפית של PostgreSQL, בפקודה CREATE EXTENSION, אפשר לציין גרסה של תוסף PostGIS באמצעות התנאי VERSION.

התוסף PostGIS כולל את הפריטים הבאים:

מידע נוסף זמין במאמר בנושא התקנת PostGIS.

בנוסף, Cloud SQL ל-PostgreSQL כולל את גרסה 3.6.2 של התוסף pgRouting, שמרחיב את PostGIS. התוסף pgRouting משפר את העיבוד הגיאו-מרחבי באמצעות ניתוח וניתוב ברשת.

אפשר לשדרג את PostGIS ואת התוספים שקשורים אליו לגרסה האחרונה באופן ידני. מידע נוסף על שדרוג תוספי PostGIS זמין במאמר שדרוג PostGIS.

הרחבות של סוגי נתונים

תוסף תיאור
btree_gin מספקת מחלקות לדוגמה של אופרטורים של GIN שמטמיעות התנהגות שוות ערך של B-tree.
ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.0. ב-PostgreSQL 10 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 11 ואילך נעשה שימוש בגרסה 1.3.
btree_gist מספקת מחלקות אופרטורים של אינדקס GiST שמטמיעות התנהגות שוות ערך של עץ B.
‫PostgreSQL 9.6 משתמש בגרסה 1.2. ב-PostgreSQL 10,‏ 11,‏ 12 ו-13 נעשה שימוש בגרסה 1.5. ‫PostgreSQL 14 משתמש בגרסה 1.6. ב-PostgreSQL 15,‏ 16 ו-17 נעשה שימוש בגרסה 1.7. ‫PostgreSQL 18 משתמש בגרסה 1.8.
chkpass מטמיע סוג נתונים chkpass שמיועד לאחסון סיסמאות מוצפנות.
ב-PostgreSQL בגרסאות 9.6 ו-10 נעשה שימוש בגרסה 1.0. אין תמיכה בגרסאות אחרות.
citext מספק סוג מחרוזת תווים לא תלוית-רישיות citext.
ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.3. ב-PostgreSQL 10 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 11 נעשה שימוש בגרסה 1.5. ב-PostgreSQL בגרסאות 12,‏ 13,‏ 14,‏ 15,‏ 16 ו-17 נעשה שימוש בגרסה 1.6. ‫PostgreSQL 18 משתמש בגרסה 1.8.
cube מטמיע סוג נתונים cube לייצוג קוביות רב-ממדיות.
ב-PostgreSQL 9.6 וב-PostgreSQL 10 נעשה שימוש בגרסה 1.2. ‫PostgreSQL 11 משתמש בגרסה 1.3. ב-PostgreSQL 12 ו-13 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.5.
hstore מטמיעה את סוג הנתונים hstore לאחסון של קבוצות של צמדי מפתח/ערך בתוך ערך יחיד של PostgreSQL.
ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 11 נעשה שימוש בגרסה 1.5. ב-PostgreSQL 12 נעשה שימוש בגרסה 1.6. ב-PostgreSQL 13 נעשה שימוש בגרסה 1.7. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.8.
ip4r מספק סוגי נתונים לכתובות IPv4/v6 ולטווח כתובות, וגם תמיכה באינדקס.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 2.4.2.
isn מספק סוגי נתונים עבור חלק מהתקנים הבינלאומיים למספור מוצרים. ‫
ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.1. ב-PostgreSQL בגרסאות 11,‏ 12,‏ 13,‏ 14,‏ 15,‏ 16 ו-17 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 18 נעשה שימוש בגרסה 1.3.
lo תמיכה בניהול אובייקטים גדולים (נקראים גם LO או BLOB).
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1.
ltree מיישם סוג נתונים ltree לייצוג תוויות של נתונים שאוחסנו במבנה היררכי דמוי עץ. ‫
ב-PostgreSQL בגרסאות 9.6,‏ 10,‏ 11 ו-12 נעשה שימוש בגרסה 1.1. ב-PostgreSQL בגרסאות 13, 14, 15 ו-16 נעשה שימוש בגרסה 1.2. ב-PostgreSQL 17 נעשה שימוש בגרסה 1.3.
postgresql-hll הוספנו סוג נתונים חדש, hll, שהוא מבנה נתונים של HyperLogLog. מידע נוסף מופיע גם בקטע postgresql-hll במסמך הזה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 2.18.
prefix הוא מספק התאמה של תחיליות ותמיכה באינדקס.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.0.

תוספים לשפה

תוסף תיאור
plpgsql שפה פרוצדורלית שאפשר לטעון כדי ליצור פונקציות, פרוצדורות וטריגרים. אפשר גם להשתמש בשפה הזו כדי להריץ קוד ישירות בבלוקים של DO.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
plv8 מספק שפה פרוצדורלית להפעלת JavaScript.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 3.2.2, שמשתמשת בתורה בגרסה 11.5 של מנוע V8 JavaScript.

תוספים שונים

תוסף תיאור
amcheck ההרחבה מספקת פונקציות לאימות העקביות הלוגית של מבנה היחסים, ומאפשרת לאפליקציית pg_amcheck לבדוק אם יש נתונים פגומים.
auto_explain ההגדרה מאפשרת רישום אוטומטי ביומן של תוכניות ביצוע של הצהרות איטיות, לצורך פתרון בעיות ועוד. הפונקציה מספקת דרך אוטומטית לבצע את הפעולות של הפקודה EXPLAIN. אפשר לעיין גם בauto_explain במסמך הזה.
autoinc מספק פונקציות להגדלת שדות באופן אוטומטי. הטריגר הזה מאחסן את הערך הבא ברצף בשדה של מספר שלם.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
bloom מספק שיטה לגישה לאינדקסים שמבוססים על מסנני בלום. מסנן בלום הוא מבנה נתונים יעיל מבחינת נפח האחסון, שאפשר להשתמש בו כדי לבדוק אם רכיב מסוים הוא חלק מקבוצה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
dblink הפונקציות מאפשרות להתחבר למסדי נתונים של PostgreSQL מתוך סשן של מסד נתונים. מידע נוסף מופיע בקטע dblink במאמר הזה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.
decoderbufs מפענח לוגי של PostgreSQL שמספק נתוני פלט כמאגרי פרוטוקולים, מותאם ל-Debezium.
dict_int תבנית מילון של תוסף לחיפוש טקסט מלא, ששולטת באינדוקס של מספרים שלמים.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
earthdistance הפונקציה מספקת שתי גישות לחישוב מרחקים לאורך מעגל גדול על פני כדור הארץ.‫
ב-PostgreSQL בגרסאות 9.6,‏ 10,‏ 11,‏ 12,‏ 13,‏ 14,‏ 15 ו-16 נעשה שימוש בגרסה 1.1. ב-PostgreSQL 17 ו-18 נעשה שימוש בגרסה 1.2.
fuzzystrmatch הפונקציה מספקת כמה פונקציות לקביעת הדמיון והמרחק בין מחרוזות.‫
ב-PostgreSQL 9.6, ‏ 10, ‏ 11, ‏ 12, ‏ 13, ‏ 14 ו-15 נעשה שימוש בגרסה 1.1. ב-PostgreSQL 16 ואילך נעשה שימוש בגרסה 1.2
google_ml_integration יצירת הטמעות וקטוריות כדי לתרגם הנחיות טקסט לווקטורים מספריים באמצעות מודל שפה גדול (LLM).
ב-PostgreSQL 12 ואילך נעשה שימוש בגרסה 1.4.3. אין תמיכה בגרסאות אחרות.
insert_username מספק פונקציות לאחסון השם של המשתמש הנוכחי בשדה טקסט. אפשר להשתמש בזה כדי לעקוב אחרי מי ערך לאחרונה שורה בטבלת מסד נתונים.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
intagg מספק אגרגטור של מספרים שלמים ומונה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1.
intarray הפונקציה מספקת קבוצה של פונקציות ואופרטורים לשינוי מערכים של מספרים שלמים שלא מכילים ערכי null, ולביצוע חיפושים עם אינדקסים במערכים האלה.‫
ב-PostgreSQL בגרסאות 9.6,‏ 10,‏ 11 ו-12 נעשה שימוש בגרסה 1.2. ‫PostgreSQL 13 משתמש בגרסה 1.3. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.5.
moddatetime מספק פונקציות לאחסון השעה הנוכחית בשדה timestamp. אפשר להשתמש בזה כדי לעקוב אחרי הפעם האחרונה שבה שורה בטבלת מסד נתונים משתנה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
oracle_fdw מספקת עטיפת נתונים חיצוניים (fdw) לגישה קלה ויעילה למסדי נתונים של Oracle.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.

אם אתם משתמשים ב-Private Service Connect כדי להתחבר למופע Cloud SQL, אתם צריכים להפעיל קישוריות יוצאת של Private Service Connect כדי להשתמש בתוסף הזה.
orafce מספק פונקציות ואופרטורים שמדמים קבוצת משנה של פונקציות וחבילות ממסד נתונים של Oracle. אפשר להשתמש בפונקציות האלה כדי להעביר אפליקציות של Oracle ל-PostgreSQL.
ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 3.25. ב-PostgreSQL 11 ואילך נעשה שימוש בגרסה 4.13.
pageinspect בודק את התוכן של דפי מסד נתונים ברמה נמוכה. אפשר לעיין גם בpageinspect במסמך הזה.
‫PostgreSQL 9.6 משתמש בגרסה 1.5. ב-PostgreSQL 10 נעשה שימוש בגרסה 1.6. ב-PostgreSQL 11 וב-PostgreSQL 12 נעשה שימוש בגרסה 1.7. ב-PostgreSQL 13 וב-PostgreSQL 14 נעשה שימוש בגרסה 1.8. ב-PostgreSQL 15 נעשה שימוש בגרסה 1.11. ב-PostgreSQL 16 ו-17 נעשה שימוש בגרסה 1.12. ב-PostgreSQL 18 נעשה שימוש בגרסה 1.13.
pgAudit איסוף נתוני ביקורת.

הערכים האפשריים להגדרה של קובצי יומן הביקורת בכל הגרסאות של pgAudit הם READ, WRITE, FUNCTION, ROLE, DDL, MISC ו-ALL. בגרסה 1.4.2 ואילך, אפשר גם להגדיר את הערך של MISC_SET.

מידע נוסף על השימוש בתוסף הזה עם Cloud SQL זמין במאמר ביקורת ב-PostgreSQL באמצעות pgAudit.

pg_background מאפשר להריץ פקודות שרירותיות ב-worker ברקע.
ב-PostgreSQL 17 ובגרסאות מוקדמות יותר נעשה שימוש בגרסה 1.3. ב-PostgreSQL 18 נעשה שימוש בגרסה 1.4.
pg_bigm מאפשר חיפוש טקסט מלא, ויוצר אינדקס של שני גרמים (ביגרם) לחיפוש טקסט מלא מהיר יותר. אפשר לעיין גם ב-pg_bigm במסמך הזה.
pg_buffercache הכלי מאפשר לבדוק בזמן אמת מה קורה במטמון של מאגר הנתונים המשותף.
‫PostgreSQL 9.6 משתמש בגרסה 1.2. ב-PostgreSQL 10, ‏ 11, ‏ 12, ‏ 13, ‏ 14 ו-15 נעשה שימוש בגרסה 1.3. ב-PostgreSQL 16 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 17 ואילך נעשה שימוש בגרסה 1.5.
pg_cron מספק מתזמן משימות מבוסס-cron. התוסף הזה מאפשר להשתמש בתחביר של cron כדי לתזמן פקודות של PostgreSQL ישירות ממסד הנתונים. מידע נוסף על התוסף זמין בקטע pg_cron במסמך הזה. ‫
ב-PostgreSQL בגרסה 10 ואילך נעשה שימוש בגרסה 1.6.4.
pgcrypto מספק פונקציות קריפטוגרפיות ל-PostgreSQL.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.3.
pglogical מספקת שכפול לוגי ל-PostgreSQL. מידע נוסף זמין במאמר בנושא הגדרה של שכפול לוגי ופענוח.
ב-PostgreSQL 17 ובגרסאות קודמות נעשה שימוש בגרסה 2.4.5. ‫PostgreSQL 18 משתמש בגרסה 2.4.6.
pgfincore קבוצה של פונקציות לניהול דפים בזיכרון המטמון של הדיסק במערכת ההפעלה מ-PostgreSQL. מידע נוסף מופיע בקטע pgfincore במסמך הזה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.3.1.
pg_freespacemap בודק את מפת השטח הפנוי (FSM). אפשר לעיין גם ב-pg_freespacemap במסמך הזה.‫
ב-PostgreSQL 17 ובגרסאות קודמות נעשה שימוש בגרסה 1.2. ב-PostgreSQL 18 נעשה שימוש בגרסה 1.3.
pg_hint_plan התכונה הזו מאפשרת לשפר את תוכניות ההפעלה של PostgreSQL באמצעות רמזים, שהם תיאורים פשוטים בתגובות של SQL. אפשר לעיין גם בpg_hint_plan במסמך הזה.
pgoutput התוסף הזה משמש שכפול לוגי לסימון נתונים שהשתנו (CDC). ‫pgoutput הוא פלאגין שמוגדר כברירת מחדל, ולכן הוא נתמך בכל הגרסאות של Cloud SQL ל-PostgreSQL.
pg_ivm מאפשרת לכם לעדכן תצוגות חומריות שבהן מחושבים ומיושמים רק שינויים מצטברים בתצוגות, במקום לחשב מחדש את התוכן מאפס.
ב-PostgreSQL גרסה 13 ואילך יש תמיכה בגרסה 1.9.
pg_partman מאפשר ליצור ולנהל קבוצות של מחיצות בטבלה על סמך זמן וסדר. מידע נוסף זמין גם בקטע pg_partman במאמר הזה.
ב-PostgreSQL בגרסה 14 ואילך יש תמיכה בגרסה 5.2.4, וב-PostgreSQL בגרסאות קודמות ל-14 יש תמיכה רק עד גרסה 4.7.4.
pg_prewarm מספק דרך נוחה לטעינת נתונים יחסיים למטמון של מערכת ההפעלה או למטמון של PostgreSQL.
ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.1. ב-PostgreSQL 11 ואילך נעשה שימוש בגרסה 1.2.
pg_qualstats הכלי אוסף נתונים סטטיסטיים על פרדיקטים, שיכולים לעזור לכם לגלות אילו אינדקסים חסרים.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 2.1.2.
plpgsql_check כלי לינטר לניתוח סטטי של PL/pgSQL, שפת הפרוצדורות המאוחסנות המקורית ב-PostgreSQL.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 2.8.
התוסף הזה נתמך ב-PostgreSQL מגרסה 14 ואילך.
pg_proctab מאפשר להשתמש ב-pg_top עם Cloud SQL ל-PostgreSQL, וליצור דוחות מטבלת התהליכים של מערכת ההפעלה. אפשר לעיין גם ב-pg_proctab במסמך הזה.
pg_repack מאפשרת להסיר נתונים מיותרים מטבלאות ומאינדקסים. אופציונלי, מאפשר לבצע CLUSTER אונליין (סידור טבלאות לפי אינדקס אשכול). בנוסף, אפשר לעיין במידע על pg_repack במסמך הזה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.5.2.
pg_roaringbitmap התוסף pg_roaringbitmap מציג סוג נתונים של מפת סיביות (bitmap) שמאפשר אחסון יעיל מאוד ופעולות מהירות על קבוצות גדולות של מספרים שלמים. הוא מאחסן מספרים שלמים באופן דינמי בפורמטים דחוסים (מערכים, מפות סיביות או קונטיינרים של רצפים) על סמך הצפיפות שלהם, וכך מצמצם באופן משמעותי את נפח האחסון ומאיץ פעולות נפוצות כמו איחוד, חיתוך וחישובים של עוצמת הקבוצה.
זמין ב-PostgreSQL מגרסה 12 ואילך. ‫Cloud SQL ל-PostgreSQL משתמש בגרסה 0.5 של pg_roaringbitmap.
pgrowlocks מספק מידע על נעילת שורות בטבלה שצוינה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.
pgstattuple מספקת פונקציות שונות לקבלת נתונים סטטיסטיים ברמת ה-tuple.
ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.4. בכל שאר הגרסאות נעשה שימוש בגרסה 1.5.
pg_similarity מספק תמיכה בשאילתות דמיון ב-PostgreSQL.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
pg_squeeze הפונקציה מסירה רווחים לא בשימוש מטבלה, ויש לה אפשרות להשתמש באינדקס כדי למיין רשומות או שורות (טפלים) בטבלה. מידע נוסף על התוסף הזה זמין במאמר הזה בקטע pg_squeeze.
ב-PostgreSQL 11 נעשה שימוש בגרסה 1.5. ‫PostgreSQL 12,‏ 13,‏ 14,‏ 15,‏ 16 ו-17 משתמשים בגרסה 1.8.
‫PostgreSQL 18 משתמש בגרסה 1.9.
pg_stat_statements האפשרות הזו מאפשרת לעקוב אחרי נתוני הביצוע של כל הצהרות ה-SQL שהופעלו.
ב-PostgreSQL 9.6 נעשה שימוש בגרסה 1.4. ‫PostgreSQL 10 ו-11 משתמשים בגרסה 1.6. ‫PostgreSQL 12 משתמש ב-1.7. ‫PostgreSQL 13 משתמש ב-1.8. ‫PostgreSQL 14 משתמש ב-1.9. ב-PostgreSQL 15 ו-16 נעשה שימוש ב-1.10. ב-PostgreSQL 17 נעשה שימוש ב-1.11. ‫PostgreSQL 18 משתמש ב-1.12.
pgTAP מספק מסגרת לבדיקות יחידה (unit testing) ל-PostgreSQL, שנכתבה ב-PL/pgSQL וב-PL/SQL.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.3.0.
pg_trgm המודול מספק פונקציות ואופרטורים לקביעת הדמיון של טקסט אלפאנומרי על סמך התאמה של טריגרמות, וגם מחלקות של אופרטורים לאינדקס שתומכות בחיפוש מהיר של מחרוזות דומות.
ב-PostgreSQL 9.6 וב-10 נעשה שימוש בגרסה 1.3. ב-PostgreSQL 11 ו-12 נעשה שימוש בגרסה 1.4. ב-PostgreSQL 13 נעשה שימוש ב-1.5. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.6.
pgtt

יוצר ומנהל טבלאות זמניות גלובליות בסגנון DB2 או Oracle במסד נתונים של PostgreSQL.
ב-PostgreSQL 9.6, ‏ 10 ו-11 נעשה שימוש בגרסה 3.0. ב-PostgreSQL 12 ואילך נעשה שימוש בגרסה 4.0.

pgvector

תוסף בקוד פתוח לאחסון ולחיפוש של הטמעות וקטורים במסדי נתונים של PostgreSQL.
ב-PostgreSQL בגרסה 13 ואילך יש תמיכה בגרסה 0.8.0, ב-PostgreSQL בגרסה 12 יש תמיכה עד גרסה 0.7.4, וב-PostgreSQL בגרסה 11 יש תמיכה עד גרסה 0.5.1.

pg_visibility הדוח מאפשר לבדוק את מפת החשיפה (VM) ואת נתוני החשיפה ברמת הדף של טבלה. אפשר לעיין גם בpg_visibility במסמך הזה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.
pg_wait_sampling הכלי אוסף נתונים סטטיסטיים של דגימת אירועי המתנה, ומספק נתוני אירועי המתנה לתהליכים בשרתים. ‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1.5.
PL/Proxy מטפל בשפה פרוצדורלית שמאפשר קריאות לפרוצדורות מרוחקות בין מסדי נתונים של PostgreSQL, עם אפשרות לשיתוף נתונים. אפשר לעיין גם בקטע PL/Proxy במסמך הזה.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 2.11.0.
postgres_fdw מאפשר ליצור עטיפות נתונים חיצוניות בתוך מופעים או בין מופעים. אפשר לעיין גם בקטע postgres_fdw במסמך הזה.‫
ב-PostgreSQL בגרסאות 9.6,‏ 10,‏ 11,‏ 12 ו-13 נעשה שימוש בגרסה 1.0. ב-PostgreSQL 14 ואילך נעשה שימוש בגרסה 1.1.
postgresql_anonymizer

מטשטש או מחליף פרטים אישיים מזהים (PII) או נתונים רגישים ממסד נתונים של PostgreSQL. מידע נוסף זמין בקטע postgresql_anonymizer.

‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.0.

postgresql_hll

מספק מבנה נתונים של HyperLogLog ‏(hll) שמבצע הערכה של העוצמה (cardinality) של קבוצה.

‫Cloud SQL ל-PostgreSQL משתמש בגרסה 2.18.

rdkit אוסף של תוכנות לכימואינפורמטיקה ולמידת מכונה. אתם יכולים להשתמש בתוסף הזה כדי להשוות מבנים מולקולריים, לשנות אותם ולזהות אותם.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 4.6.1.
refint כולל פונקציות לבדיקת אילוצים של מפתח זר, הטבלה המפנה והטבלה שאליה מתבצעת ההפניה. התוסף הזה מדגים גם את ממשק תכנות השרת (SPI). ‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
sslinfo מספק מידע על אישור ה-SSL שהלקוח הנוכחי סיפק כשהוא התחבר למופע.
ב-Cloud SQL ל-PostgreSQL נעשה שימוש בגרסה 1.2.
tablefunc כולל פונקציות שונות שמחזירות טבלאות (כמה שורות).
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
tcn מספק פונקציית טריגר ששולחת התראות למאזינים על שינויים בתוכן של טבלאות במסד נתונים.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
tds_fdw מספק עטיפת נתונים חיצוניים (fdw) לגישה למסדי נתונים, כמו Microsoft SQL Server ו-Sybase, שמשתמשים בפרוטוקול Tabular Data Stream ‏ (TDS). ‫Cloud SQL ל-PostgreSQL משתמש בגרסה 2.0.4. לקוח Postgres יכול להתחבר למקור שרת SQL באמצעות הצפנת SSL. עם זאת, אימות אישור השרת לא נאכף.
temporal_tables מספק תמיכה בטבלאות זמניות. בטבלה זמנית מתועד פרק הזמן שבו שורה תקפה מנקודת המבט של מסד הנתונים.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.2.2.
tsm_system_rows מספקת את שיטת הדגימה של הטבלה SYSTEM_ROWS, שאפשר להשתמש בה בסעיף TABLESAMPLE של פקודת SELECT.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
tsm_system_time מספקת את שיטת הדגימה של הטבלה SYSTEM_TIME, שאפשר להשתמש בה במשפט TABLESAMPLE של פקודת SELECT.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.0.
unaccent מילון לחיפוש טקסט שמסיר סימני הטעמה (סימנים דיאקריטיים) מלקסמות.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1.
uuid-ossp הפונקציות האלה יוצרות מזהים ייחודיים אוניברסליים (UUID) באמצעות אחד מכמה אלגוריתמים סטנדרטיים.
‫Cloud SQL ל-PostgreSQL משתמש בגרסה 1.1.

מידע נוסף על חלק מהתוספים של PostgreSQL

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

auto_explain

כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_auto_explain ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.

כדי לראות את נתוני הרישום ביומן ואת האירועים שמשויכים ליומנים של תוכניות ההרצה שהתוסף הזה מאפשר, אפשר לעיין במסמכי התיעוד של Cloud Logging.

לחלופין, אם למשתמש יש רק את התפקיד cloudsqlsuperuser, אפשר להשתמש בפקודה load כדי לטעון את התוסף הזה לסשן אחד.

במהלך סשן של מסד נתונים, אפשר להשתמש בתוסף הזה כדי להתחבר למסדי נתונים של PostgreSQL ולהריץ שאילתות.

נכון לעכשיו, התוסף הזה פועל בשני מקרים: כשמדובר בשני מופעים של Cloud SQL עם כתובות IP פרטיות באותה רשת VPC, או כשמדובר במסדי נתונים שונים באותו מופע.

מידע נוסף זמין במאמר dblink במסמכי התיעוד של PostgreSQL.

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


  SELECT * FROM dblink (
    'dbname=name port=1234 host=host user=user password=password',
    'select id, name from table' \
  ) AS t(id int, name text);

לחלופין, כדי להגדיר רק חיבור, הנה קטע קוד לדוגמה (לא לשימוש בסביבת ייצור):

  SELECT dblink_connect('dbname=dblinktest user=postgres host=name_or_ip password=xxx');

כדי להתחבר לאותו מופע כאותו משתמש, אפשר להתחבר בלי סיסמה. לדוגמה:

  1. מגדירים את דגל מסד הנתונים הבא כדי להפעיל חיבורים מקומיים ללא סיסמה
    cloudsql.allow_passwordless_local_connections

  2. התחברות בלי לציין מארח, מה שאומר התחברות לאותו מופע. לדוגמה:

    SELECT *
      FROM dblink('dbname=finance user=alice',
                  'select income from revenue')
        AS revenue(income integer);
    

    התוצאה יכולה להיראות כך:

          income
          --------
          1000
          (1 row)
    

כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח כ-localhost או כ-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע במסוף Google Cloud .

כדאי לעיין גם בpostgres_fdw ובPL/Proxy במסמך הזה.

pageinspect

התוסף הזה בודק את התוכן של דפי מסד הנתונים ברמה נמוכה. מידע נוסף זמין במאמר בנושא pageinspect במאמרי העזרה של PostgreSQL.

pg_bigm

התוסף הזה מאפשר חיפוש טקסט מלא, וכולל אינדקס של שני גרמים (ביגרם) לחיפוש מהיר יותר של טקסט מלא.

כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_pg_bigm ל-on. יש תמיכה גם בדגלים הבאים:

  • pg_bigm.enable_recheck
  • pg_bigm.gin_key_limit
  • pg_bigm.similarity_limit

מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.

pg_cron

כדי להתחיל להשתמש ב-pg_cron במופע, מגדירים את הדגל cloudsql.enable_pg_cron לערך on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר בנושא הגדרת דגלים של מסד נתונים.

העבודות מוגדרות כעובדים ברקע, ולכן יכול להיות שתצטרכו להשתמש בטכניקות סטנדרטיות של PostgreSQL (כמו הדגל max_worker_processes) כדי לשנות את מספר העובדים ברקע.

בתוסף הזה, Cloud SQL תומך במצב של עובד ברקע, אבל לא בממשק libpq. לכן, לא נדרש אימות מהימן ישירות בתוסף הזה.

pgfincore

התוסף הזה מכיל פונקציות לניהול דפים בזיכרון המטמון של הדיסק במערכת ההפעלה מ-PostgreSQL. מידע נוסף זמין במסמכי התיעוד של pgfincore.

pg_freespacemap

התוסף הזה בודק את מפת הנפח הפנוי (FSM). מידע נוסף זמין במאמר pg_freespacemap במסמכי התיעוד של PostgreSQL.

pg_hint_plan

כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_pg_hint_plan ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.

לחלופין, אם רוצים להשתמש בתוסף רק עבור משתמש עם התפקיד cloudsqlsuperuser, אפשר להשתמש בפקודה load כדי לטעון את התוסף לסשן אחד.

pg_partman

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

ב-Cloud SQL, התוסף הזה לא כולל את העובד ברקע לתחזוקה אוטומטית של מחיצות. במקום זאת, אפשר להשתמש, לדוגמה, ב-pg_cron או ב-Cloud Scheduler כדי להפעיל תחזוקה על ידי קריאה לפונקציות תחזוקה במרווחי זמן קבועים.

pg_proctab

כדי להפעיל את כלי השירות pg_top, צריך להשתמש בתוסף pg_proctab. הנה השלבים:

  1. בכלי psql, מריצים את הפקודה CREATE EXTENSION עבור pg_proctab.
  2. מורידים ומריצים את pg_top.
  3. כשמתחברים למופע של Cloud SQL ל-PostgreSQL, מוסיפים את האפשרות -r כדי להתחבר למסד נתונים מרוחק ולקבל מדדים.

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

  • ממוצע עומס
  • מצבי מעבד (CPU) (% user, nice, system, idle, and iowait)
  • זיכרון (בשימוש, פנוי ובמטמון)

pg_repack

התוסף הזה מאפשר לכם להסיר נתונים מיותרים מטבלאות ומאינדקסים. אפשר גם להשתמש בתוסף הזה כדי לבצע CLUSTER אונליין (סידור טבלאות לפי אינדקס אשכול). מידע נוסף מופיע במאמרי העזרה בנושא pg_repack. בנוסף, כדי להשתמש בתוסף הזה ב-Cloud SQL, צריך לבצע הליך מיוחד להוספת הרשאות למשתמש.

אם משתמש שלא נכלל בתפקיד cloudsqlsuperuser רוצה להשתמש בתוסף, צריך להעניק לו הרשאות cloudsqlsuperuser. דרישה להרשאות סופר-משתמש בדוגמה הבאה משתמשים בפקודה GRANT כדי להוסיף את ההרשאות הנדרשות.

דוגמה להוספת הרשאות

לדוגמה, csuper1 הוא cloudsqlsuperuser ו-testdb הוא מסד נתונים בבעלות של testuser. כדי ליצור את התוסף pg_repack ב-testdb, מריצים בהתחלה את הפקודות הבאות:

  1. התחברות אל testdb בתור cloudsqlsuperuser:

    psql -U csuper1 -d testdb;
    
  2. צריך להעניק לבעלים של מסד הנתונים, שהוא testuser,, את ההרשאות הבאות ל-csuper1:

    GRANT testuser TO csuper1;
    
  3. יוצרים את התוסף:

    CREATE EXTENSION pg_repack;
    
  4. מריצים את הפקודה pg_repack בטבלה, כמו t1 ב-testdb, בתור csuper1:

    pg_repack -h <hostname> -d testdb -U csuper1 -k -t t1
    
  5. אחרי שהמשימה pg_repack מסתיימת, מבטלים את ההרשאה שביצעתם בשלב 2:

     REVOKE testuser FROM csuper1;
    

יכול להיות שהפקודה pg_repack תיכשל עם השגיאה הבאה:
"ERROR: query failed: SSL SYSCALL error: EOF detected"

אם השגיאה הזו מתרחשת, מנסים להגדיר את הערך של TCP keepalives לערך קטן יותר ואז מריצים את הפקודה pg_repack. מידע נוסף זמין במאמר בנושא פסק זמן של חיבורים (מ-Compute Engine).

pg_squeeze

התוסף הזה מסיר רווחים לא בשימוש מטבלה, ויש לו אפשרות להשתמש באינדקס כדי למיין את הטפלים של הטבלה. כדי להתחיל להשתמש בתוסף במופע, מגדירים את הדגל cloudsql.enable_pg_squeeze לערך on.

התוסף הזה תומך גם בפענוח לוגי על ידי כתיבת מידע נוסף ליומן הפעולות (WAL). כדי להפעיל את הפונקציונליות הזו בתוסף, צריך להגדיר את פרמטר ההגדרה wal_level לערך logical ומעלה על ידי הגדרת הדגל cloudsql.logical_decoding לערך on.

צריך להגדיר ערך לדגל max_replication_slots של התוסף. אם לא ציינתם ערך לדגל הזה, צריך להגדיר את הערך 1. אחרת, מוסיפים 1 לערך שמוגדר לדגל.

מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.

pgtt

כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל pgtt.enabled ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.

pg_visibility

התוסף הזה מאפשר לבדוק את מפת החשיפה (VM) ואת פרטי החשיפה ברמת הדף של טבלה. מידע נוסף זמין במאמר בנושא pg_visibility במאמרי העזרה של PostgreSQL.

PL/Proxy

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

מידע נוסף מופיע במאמרי העזרה בנושא PL/Proxy.

מכונות היעד לחיבורים צריכות להיות באותה רשת VPC כמו המכונה שממנה מתבצע החיבור. בנוסף, אי אפשר לבחור במסוףGoogle Cloud את הלחצן Allow only SSL connections (אישור חיבורי SSL בלבד) עבור מופעי אשכול.

כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח כ-localhost או כ-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע במסוף Google Cloud .

במסמך הזה מופיעים גם postgres_fdw ו-dblink.

postgresql_anonymizer

כדי להתחיל להשתמש בתוסף הזה במופע, צריך להגדיר את הדגל cloudsql.enable_anon ל-on. מידע על הגדרת דגלים ועל הדגלים שנתמכים בתוסף הזה זמין במאמר הגדרת דגלים של מסד נתונים.

postgres_fdw

התוסף הזה מאפשר לחשוף טבלאות ממסדי נתונים אחרים ("חיצוניים") של PostgreSQL כטבלאות "חיצוניות" במסד הנתונים הנוכחי. אחר כך אפשר להשתמש בטבלאות האלה, כמעט כאילו הן טבלאות מקומיות. מידע נוסף זמין במאמר postgres_fdw במסמכי התיעוד של PostgreSQL.

התוסף הזה פועל בשני מופעים של כתובות IP פרטיות ב-Cloud SQL באותה רשת VPC, או במסדי נתונים שונים באותו מופע.

כדי להתחבר למסדי נתונים באותו מופע, אי אפשר להגדיר את המארח כ-localhost או כ-127.0.0.1. במקום זאת, צריך להשתמש בכתובת ה-IP שמוצגת עבור המופע שלכם במסוף Google Cloud .

בנוסף, במקרים שבהם מאוחסנים נתונים זרים, אפשר לבחור באפשרות Allow only SSL connections [אפשר רק חיבורי SSL] במסוף Google Cloud . אי אפשר לבחור באפשרות נדרשים אישורי לקוח מהימנים. רק cloudsqlsuperuser יכול להיות הבעלים של postgres_fdw foreign data wrapper.

מידע נוסף זמין גם בקטע בנושא PL/Proxy ובקטע בנושא dblink במאמר הזה.

postgresql-hll

התוסף הזה מציג סוג נתונים חדש, hll, שהוא מבנה נתונים של HyperLogLog. מידע נוסף זמין בתיעוד של postgresql-hll.