תורגם בבינה מלאכותית. הקהילה עוד לא בדקה את התרגום. לקריאה באנגלית

בלוג · 8 בספטמבר 2023 · Steve Simpson · ארכיטקטורת נתונים

Steve Data Modeling: שליטה באסטרטגיות לניהול גרסאות

מבוא:

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

האסטרטגיות האלה חיוניות למתכננים שעובדים על מודלים של אובייקטים שבהם ניהול גרסאות הוא קריטי.

הבנת הגישות לניהול גרסאות של רשומות

יש שתי גישות עיקריות לניהול גרסאות של רשומות:

  1. גישת הרשומות המקבילות
  2. גישת גרסאות הצאצא

בואו נצלול לכל גישה כדי להבין את המימוש, היתרונות והחסרונות שלה.

גישת הרשומות המקבילות

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

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

מימוש:

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

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

יתרונות:

חסרונות:

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

גישת גרסאות הצאצא

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

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

מימוש:

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

יתרונות:

חסרונות:

דוגמה למימוש ב-Salesforce

צילום מסך: דף הפרטים של Flow ב-Salesforce עם רשימת הגרסאות שלו, אחת מהן פעילה

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

המימוש הזה מבטיח שרק Flow אחד יהיה פעיל בכל רגע, ומספק מנגנון אמין ויעיל לניהול גרסאות.

חלק 5: סיכום

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

הישארו איתנו!

לתובנות ולטיפים נוספים, הישארו איתנו כאן ב-www.SteveTechArc.com ובערוץ ה-YouTube ‏@SteveTechArc (opens in a new tab). הירשמו ושדרגו איתנו את הברק שלכם במידול נתונים!

עוזרים לשנות את העולם בשיתוף רעיונות מגניבים עם עמיתים ארכיטקטים ועם מי שנמצאים במסע שלהם לארכיטקטורה!

תמלול בסיוע בינה מלאכותית

STA 2.1