AlloyDB ל-PostgreSQL הוא שירות מנוהל של מסד נתונים שתואם ל-PostgreSQL. הוא משלב מנוע של מסד נתונים שפותח על ידי Google עם ארכיטקטורה מבוססת-ענן עם כמה צמתים, כדי לספק ביצועים, אמינות וזמינות ברמה שמתאימה לארגונים, גם לאפליקציות הכי תובעניות.
תרחישים לדוגמה ל-AlloyDB
AlloyDB מספק חלופה ניתנת להתאמה ל-PostgreSQL רגיל בניהול עצמי. אם אתם רוצים להשקיע פחות זמן בניהול התשתית ויותר זמן בפיתוח אפליקציות, כדאי לכם להשתמש ב-AlloyDB.
AlloyDB מיועד לעומסי עבודה תובעניים, כולל:
- עיבוד טרנזקציות וניתוח נתונים היברידי (HTAP): הרצת שאילתות ניתוח מורכבות על נתוני הטרנזקציות בזמן אמת, בלי להשפיע על הביצועים או הזמינות.
- אפליקציות AI עם זמן אחזור קצר: אתם יכולים לפתח אפליקציות של AI גנרטיבי באמצעות AlloyDB AI, שמשלב חיפוש וקטורי והפעלה של מודל למידת מכונה ישירות במנוע של מסד הנתונים, וכך אין צורך בהעברת נתונים חיצונית עם זמן אחזור ארוך.
- עומסי עבודה קריטיים ברמה שמתאימה לארגונים: פריסת אפליקציות שדורשות את הרמות הגבוהות ביותר של ביצועים, אמינות וזמינות, שנתמכות על ידי ארכיטקטורת מחשוב ואחסון מפורקת שמתפרסת על פני כמה אזורי זמינות.
מה AlloyDB מספק
ב-AlloyDB יש הרבה שירותים, כך שאתם לא צריכים לבנות ולתחזק אותם בעצמכם. אתם יכולים להתמקד בנתונים שלכם ולתת ל-AlloyDB לטפל בפעולות הבאות:
- גיבויים: הגנה על הנתונים באמצעות גיבויים על פי דרישה וגיבויים מתוזמנים אוטומטיים, ומערכת שחזור רציפה שמאפשרת שחזור מערכת מנקודה מסוימת בזמן (PITR).
- זמינות גבוהה: הבטחת המשכיות השירות באמצעות צמתים מיותרים שנמצאים באזורים שונים, עם מעבר אוטומטי לגיבוי במקרה של כשל ביניהם.
- ניהול משאבים: אופטימיזציה של הביצועים והיעילות באמצעות מערכות שמקצות ומשחררות זיכרון ואחסון באופן אוטומטי לפי הצורך.
- אופטימיזציה של שאילתות: שיפור הביצועים של מסד הנתונים באמצעות Index advisor שמציע שיפורים בסכימה, ומנוע מבוסס-עמודות שמאיץ שאילתות של ניתוח נתונים.
- אבטחה והצפנה: הגנה על נתונים באחסון באמצעות Google-owned and Google-managed encryption keys או מפתחות הצפנה בניהול הלקוח (CMEK), וניהול הגישה באמצעות ניהול זהויות והרשאות גישה (IAM) משולב.
ניהול מסדי נתונים
AlloyDB מנהל את התשתית הבסיסית של מסד הנתונים, כמו גיבויים אוטומטיים, תיקוני אבטחה והקצאת משאבים. עם זאת, AlloyDB הוא לא כלי עצמאי לניהול מסדי נתונים. עדיין צריך כלים ניהוליים כדי לנהל את הסכימות, הנתונים והמשתמשים במסדי הנתונים.
אתם יכולים להשתמש בכלים הבאים כדי להתחבר למסדי הנתונים ולנהל אותם:
- AlloyDB Studio: כלי מבוסס-אינטרנט שמובנה ישירות במסוף Google Cloud , שמאפשר לכם לחקור ולנהל את הנתונים באמצעות ממשק SQL אינטראקטיבי.
- לקוחות PostgreSQL: מכיוון ש-AlloyDB תואם באופן מלא ל-PostgreSQL, אתם יכולים להשתמש בכלים רגילים לניהול לקוחות ובכלי שורת הפקודה, כמו psql ו-pgAdmin, כדי לעבוד עם מסד הנתונים.
התמחור של AlloyDB
ב-AlloyDB משתמשים במודל תמחור שמבוסס על צריכה, כלומר החיוב הוא על המשאבים שבהם אתם משתמשים. התמחור של AlloyDB משתנה בהתאם להגדרות האישיות ולגורמים הבאים:
- משאבי המכונה: סוג המכונה (מספר יחידות ה-vCPU וכמות ה-RAM) שנבחר למכונות הראשיות ולמכונות של מאגר הקריאה.
- אחסון: כמות הנתונים שמאוחסנים בשכבת האחסון הגמישה של האשכול.
- רשת: כמות תעבורת הנתונים היוצאת (egress) מהמכונות שלכם.
למידע נוסף, ראו התמחור של AlloyDB ל-PostgreSQL.
איך AlloyDB פועל
אפליקציה מתחברת למכונות של AlloyDB באמצעות פרוטוקולים סטנדרטיים של PostgreSQL.
מתחת לפני השטח, AlloyDB משתמש בארכיטקטורה מפורקת ובהיררכיה של משאבים שנועדו למקסם את הזמינות והביצועים.
הבדלים בארכיטקטורה לעומת PostgreSQL רגיל
ב-PostgreSQL המסורתי, המנוע של מסד הנתונים שמעבד את השאילתות משולב עם האחסון באותו שרת. ב-AlloyDB נעשה שימוש בארכיטקטורה מפורקת, שבה שכבות המחשוב והאחסון נפרדות ומתרחבות באופן עצמאי.
- מחשוב: מכונות וירטואליות או צמתים שמעבדים את השאילתות.
- אחסון: מנוע אחסון מבוזר ומבוסס-ענן ששומר את הנתונים בכמה אזורי זמינות, ומתרחב אוטומטית ככל שהנתונים גדלים.
היררכיית המשאבים של AlloyDB
ב-AlloyDB המשאבים מאורגנים בשלוש רמות: אשכולות, מכונות וצמתים.
בתרשים הבא מוצגת היררכיית המשאבים של AlloyDB, עם אשכול שכולל מכונה ראשית וכמה מכונות של מאגר קריאה עם איזון עומסים:
- אשכול: משאב ברמה העליונה שמשמש כקונטיינר לוגי למסדי הנתונים, ליומנים ולמטא-נתונים אחרים באזור. אפשר ליצור כמה אשכולות באותו פרויקט ובאותו אזור.
- מכונה: אשכול מכיל מכונה אחת או יותר. מכונה מספקת את נקודת החיבור לאפליקציות.
- צומת: מכונה מופעלת על ידי צומת אחד או יותר. צומת הוא מכונה וירטואלית (VM) שמיועדת להפעלת המנוע של מסד הנתונים.
מהו מכונה ב-AlloyDB?
מכונה של AlloyDB היא נקודת הגישה למסד הנתונים. לכל מכונה יש כתובת IP סטטית פרטית ברשת של הענן הווירטואלי הפרטי (VPC). כשהאפליקציה שולחת שאילתה לכתובת ה-IP הזו, המכונה מנתבת את הבקשה לצמתים הבסיסיים שלה לעיבוד.
ב-AlloyDB יש שני סוגים של מכונות:
מכונה ראשית: מספקת גישת קריאה וכתיבה לנתונים. לכל אשכול יש בדיוק מכונה ראשית אחת. מכונה ראשית יכולה להיות בזמינות גבוהה (HA) או בסיסית.
זמינות גבוהה: מכיל שני צמתים, צומת פעיל וצומת המתנה, שנמצאים באזורים שונים לצורך יתירות כשל אוטומטית.
מכונה בסיסית: מכילה צומת יחיד לסביבות שאינן סביבות ייצור, שלא נדרשת בהן זמינות גבוהה. למכונה בסיסית יש רק צומת אחד, בלי צומת המתנה. מידע נוסף מופיע במאמר הפחתת עלויות באמצעות מכונות בסיסיות.
מופע ייעודי לשאילתות מסוג "קריאה-בלבד": מספק הרשאת קריאה בלבד כדי לשנות את קנה המידה של עומסי העבודה. אתם יכולים להוסיף מכונה אחת או יותר של מאגר קריאה, כשכל אחת מכילה עד 20 צמתים בסך הכול באשכול. AlloyDB מאזן באופן אוטומטי את העומסים של הבקשות בין הצמתים במאגר לקריאה בלבד.
תכונות עיקריות
AlloyDB נבדל מהתקנה רגילה של PostgreSQL בכמה דרכים, מעבר ליתרונות של התאמה לעומס (scaling) אנכית ואופקית שקיימים בארכיטקטורה מרובת הצמתים שתוארה קודם. בקטעים הבאים נסביר לעומק על התכונות העיקריות של AlloyDB.
תכונות אוטומטיות ודינמיות של מסד הנתונים
המנוע של מסד הנתונים שתואם באופן מלא ל-PostgreSQL ומפעיל כל צומת ב-AlloyDB, כולל כמה תכונות שמנתחות באופן רציף את המבנה והתדירות של השאילתות שהמכונות מטפלות בהן. המידע הזה משמש להצעת שיפורים בסכימה או להחלת אופטימיזציות באופן אוטומטי:
Index advisor עוזר לכם למצוא הזדמנויות לאופטימיזציה של סכימת מסד הנתונים באמצעות אינדקסים חדשים, על סמך דפוסי השימוש שלכם.
מנוע מבוסס-עמודות יכול לשפר את הביצועים של שאילתות לניתוח נתונים על ידי אחסון נתונים בזיכרון בפורמט מבוסס-עמודות. כך AlloyDB יכול להשתמש בטכניקות עיבוד מתקדמות כדי לסרוק ביעילות כמות גדולה של נתוני טבלה לפי הצורך.
גרסה מותאמת של התכונה autovacuum של נתונים לא עדכניים ב-PostgreSQL, שמתאימה באופן אוטומטי את הפרמטרים שקשורים ל-vacuum כך שיתאימו בצורה הטובה ביותר לעומס העבודה.
מערכות אוטומטיות לניהול הזיכרון והאחסון מנצלות את הסביבה מבוססת-הענן ש-AlloyDB פועל בה, שפותחה על ידי Google. המערכות האלה מקצות ומשחררות זיכרון ואחסון באופן רציף לפי הצורך, כדי שהאשכול ימשיך לפעול עם ביצועים אופטימליים וניצול יעיל של המשאבים.
זמינות גבוהה
כברירת מחדל, אשכול AlloyDB מציע זמינות גבוהה (HA) באמצעות הצמתים המיותרים של המכונה הראשית, שנמצאים בשני אזורים שונים, עם יתירות כשל אוטומטית.
באשכולות שפועלים בסביבות שהן לא סביבות ייצור ולא נדרשת בהן זמינות גבוהה, אפשר להשתמש במכונות ראשיות בסיסיות באזור יחיד.
הוספת מכונות של מאגר קריאה שמכילות לפחות שני צמתים יוצרת נקודות גישה נוספות לנתונים, עם איזון עומסים, בכמה אזורים ובזמינות גבוהה. כל המכונות של מאגר הקריאה פועלות בנפרד מהמכונה הראשית.
למידע נוסף על שיקולים ספציפיים לאזור, קראו את המאמר מיקום גיאוגרפי ואזורים.
גיבוי נתונים ותוכנית התאוששות מאסון (DR)
ב-AlloyDB יש מערכת גיבוי ושחזור רציפה שמאפשרת ליצור אשכול חדש על סמך כל נקודת זמן בתוך תקופת שמירה שניתנת להתאמה. כך תוכלו לשחזר במהירות נתונים שאבדו בטעות.
בנוסף, ב-AlloyDB אפשר ליצור ולשמור גיבויים מלאים של נתוני האשכול, על פי דרישה או לפי לוח זמנים קבוע. בכל שלב, אתם יכולים לשחזר מגיבוי לאשכול AlloyDB חדש שמכיל את כל הנתונים מהאשכול המקורי ברגע שבו הגיבוי נוצר.
מידע נוסף זמין במאמר מידע על גיבויים.
כשיטה נוספת לתוכנית התאוששות מאסון (DR), אתם יכולים ליצור רפליקציה בין אזורים על ידי יצירת אשכולות משניים באזורים נפרדים של Google Cloud. AlloyDB מעביר נתונים באופן אסינכרוני מאשכול ראשי ייעודי לכל אחד מהאשכולות המשניים שלו. בכל שלב אפשר לקדם אשכול משני לאשכול ראשי, או לבצע יתירות כשל (failover) בין אזורים (גרסת טרום-השקה (Preview)) כדי לשמור באופן אוטומטי על טופולוגיית הרפליקציה במהלך הפסקה זמנית בפעילות.
מידע נוסף זמין במאמר מידע על שכפול באזורים שונים.
אבטחה ובקרת גישה
אתם יכולים להגדיר אשכול כך שידרוש חיבור ל-AlloyDB Auth Proxy המאובטח, שמשתמש ב-IAM לבקרת גישה. מידע נוסף זמין במאמר בנושא הרשאה.
ב-AlloyDB נעשה שימוש במערכת הרגילה של תפקידי משתמשים ב-PostgreSQL לצורך אימות, ונוספו כמה תפקידים ספציפיים ל-AlloyDB. מידע נוסף זמין במאמר ניהול תפקידי משתמשים ב-AlloyDB.
הצפנה
כברירת מחדל, כל הנתונים במצב מנוחה ב-AlloyDB מוגנים באמצעות Google-owned and Google-managed encryption keys. אם אתם צריכים להצפין את הנתונים באמצעות מפתח שאתם מספקים, אתם יכולים לציין מפתח הצפנה בניהול הלקוח (CMEK) כשאתם יוצרים אשכול. לאחר מכן, AlloyDB משתמש במפתח CMEK כדי להצפין את כל הנתונים שנכתבים באשכול הזה.
מפתחות CMEK חלים גם על גיבויים. אתם יכולים לציין מפתח CMEK כשאתם יוצרים גיבוי על פי דרישה, מגדירים לוח זמנים לגיבוי או משחזרים מגיבוי.
מידע נוסף זמין במאמר מידע על CMEK.
תחזוקה ועדכונים
במהלך חיי אשכול AlloyDB, יכולים להתרחש שני סוגים של עדכונים:
- עדכוני מערכת: Google מבצעת עדכוני מערכת מדי פעם כדי לוודא שהחומרה והתוכנה הבסיסיות אמינות, מאובטחות ופועלות בצורה אופטימלית. העדכונים האלה כוללים תיקוני אבטחה, שדרוגים של מערכת ההפעלה ועדכוני גרסאות קלים של שרת PostgreSQL.
- עדכוני הגדרות: שינויים שאתם מבצעים באופן ידני באשכול או במכונות כדי לעמוד בדרישות המשתנות של עומס העבודה. לדוגמה, שינוי הגודל של ה-vCPU ומספר הזיכרון של מכונה, או שינוי דגלים לניהול מסד נתונים.
פעולות התחזוקה של AlloyDB מתוכננות כך שלא יפריעו לפעילות. כדי לעשות את זה, אנחנו מכינים שרתים חלופיים ומחליפים אותם במהירות בשרתים הפעילים כשהם מוכנים. במהלך התהליך הזה, זמן ההשבתה של המכונות הראשיות הוא בדרך כלל פחות משנייה, ומאגרי הקריאה נשארים זמינים כל הזמן. כל החיבורים הפעילים למסד הנתונים ינותקו לרגע, אבל תוכלו להמשיך להשתמש במסד הנתונים כרגיל במהלך התהליך.
כדי להחיל עדכון דגל מהר יותר, גם אם הוא גורם לזמן השבתה ארוך יותר, אתם יכולים להשתמש במצב העדכון FORCE_APPLY.
AlloyDB AI
AlloyDB AI משלב חבילה של תכונות AI ו-ML ישירות במסד הנתונים של AlloyDB. בעבר, כדי לפתח אפליקציות מבוססות-AI היה צריך להשתמש בפייפליינים מורכבים ובתהליכי ETL כדי להעביר נתונים ממסדי נתונים תפעוליים לפלטפורמות AI/ML ייעודיות. השיטה הזו גרמה לבעיות כמו זמן אחזור ארוך יותר בהעברת הנתונים, עלויות תפעול גבוהות יותר בגלל ניהול של מערכות שונות ואחסון כפול. היכולות של AI משולבות ישירות במסד הנתונים, ולכן AlloyDB AI מייתר את הצורך בהעברת נתונים חיצוניים בהיקף נרחב.
כדי להקל על פיתוח אפליקציות מבוססות-AI, ב-AlloyDB AI יש את התוספים הבאים:
-
vector(גרסה שלpgvectorשמותאמת ל-AlloyDB AI): מאחסן ומאנדקס הטמעות וקטורים לחיפוש סמנטי. תמיכה בהרצת שאילתות היברידיות וחיפושים לפי דמיון. כדי להתחיל להשתמש בחיפוש וקטורי, קראו את המאמר ביצוע חיפוש וקטורי. -
alloydb_scann: מספק חיפוש של השכן הקרוב ביותר (ANN) בביצועים גבוהים, על ידי הטמעה של אינדקס יעיל מאוד של השכן הקרוב ביותר שמבוסס על אלגוריתם ScaNN. מידע נוסף זמין במאמר יצירת אינדקס ScaNN. -
google_ml_integration: מספק גישה לפונקציות ה-AI, שמאפשרות להפעיל מודל ML מ-AlloyDB למשימות כמו יצירת הטמעות, דירוג סמנטי, מסננים וצירופים מבוססי-AI, ויצירה וסיכום של טקסט. ניהול נקודות קצה של מודלים מאפשר לרשום ולהפעיל מודלים של AI, כולל מודלים חיצוניים של OpenAI או Anthropic. מידע נוסף זמין במאמרים רישום נקודת קצה של מודל והערכת שאילתות סמנטיות באמצעות אופרטורים של AI. -
alloydb_ai_nl: מאפשר אינטראקציה עם מסד הנתונים באמצעות שפה טבעית. הוא מאפשר למפתחי אפליקציות ליצור שאילתות SQL מדויקות ומאובטחות בתגובה לשאלות של משתמשי קצה בשפה טבעית, וכך מאפשר למשתמשים שלא מכירים SQL לגשת לנתונים. מידע נוסף זמין במאמר סקירה כללית של שפה טבעית.
במאמר פיתוח אפליקציות מבוססות-AI גנרטיבי מפורטים תרחישים לדוגמה של יכולות AlloyDB AI.
תמיכה בתוספים
AlloyDB כולל תמיכה בכמה תוספים פופולריים של PostgreSQL. הרשימה המלאה מופיעה במאמר תוספים נתמכים למסדי נתונים.
חלופה באירוח עצמי: AlloyDB Omni
במקום להריץ את AlloyDB ב- Google Cloud, Google מציעה את AlloyDB Omni. הגרסה הזו של AlloyDB, שניתנת להורדה, מאפשרת לכם להריץ את המנוע החזק של מסד הנתונים בסביבת המחשוב שלכם שמבוססת על Linux, בכל מקום שבו היא נמצאת.
כדי לבדוק את אפשרויות הפריסה, ה-codelabs ולנהל את המינויים במסוףGoogle Cloud , נכנסים לדף המסוף של AlloyDB Omni.
מידע נוסף זמין במאמר סקירה כללית על AlloyDB Omni.