אסטרטגיות בידוד נתונים ביישומים SaaS רב-תושבות
יישומי SaaS צריכים לבדד נתונים מהשונים. PostgreSQL מציע מספר אסטרטגיות לרב-תושביות.
אסטרטגיות בדידה
יש שלושה גישות עיקריות: בסיס נתונים לכל תושב, סכמה לכל תושב, או סכמה משותפת עם עמודת tenant_id.
סכמה לכל תושב
כל תושב יש לה סכמה משלו. זה מציע בדידה טובה עם עלויות מתונות.
CREATE SCHEMA tenant_123; SET search_path TO tenant_123;סכמה משותפת
כל הנתונים בסכמה אחת, מופרדים בעזרת tenant_id. יותר יעיל עבור רבים של תושבים קטנים.
הבחירה שלנו
אנו משתמשים בסכמות נפרדות לכל דומיין (בלוג, מזון, עסקאות) בתוך בסיס נתונים משותף. זה מאזן בדידה ויעילות.
מסקנה
הבחירה תלויה בגודל תושב, דרישות בדידה, ומורכבות תפעולית.