שילוב עם Oracle EBS
השילוב של Oracle EBS (E-Business Suite) תומך במודלים של נתונים מסוג Order to Cash עם הטמעה של נתונים באמצעות Incorta. Incorta משתמשת במופע מארח או פרטי כדי להטמיע את הנתונים מ-Oracle במערך נתונים של CDC ב-BigQuery, ומטפלת בעיבוד של ה-CDC. משם, Cortex Framework הופך את נתוני ה-CDC לנכסי דיווח באמצעות Managed Service for Apache Airflow כדי לתזמר משימות ב-BigQuery.
בתרשים הבא מתואר איך נתונים של Oracle EBS זמינים דרך עומס העבודה התפעולי של Oracle EBS:

הגדרת התצורה של פריסה
בטבלה הבאה מפורטים הפרמטרים להגדרת עומס העבודה של Oracle EBS:
הקובץ config.json מגדיר את ההגדרות הנדרשות להעברת נתונים מכל מקור נתונים, כולל Oracle EBS. הקובץ הזה מכיל את הפרמטרים הבאים של Oracle EBS:
| פרמטר | משמעות | ערך ברירת המחדל | תיאור | שדה תואם במקור Oracle |
|---|---|---|---|---|
OracleEBS.itemCategorySetIDs |
קבוצות של קטגוריות פריטים | [1100000425] |
רשימה של קבוצות שישמשו לסיווג פריטים. | MTL_ITEM_CATEGORIES.CATEGORY_SET_ID |
OracleEBS.currencyConversionType |
סוג המרת מטבע | "Corporate" |
סוג המרת המטבע שרוצים להשתמש בו בטבלאות מצטברות. | GL_DAILY_RATES.CONVERSION_TYPE |
OracleEBS.currencyConversionTargets |
יעדים להמרת מטבעות | ["USD"] |
רשימה של מטבעות יעד שייכללו בטבלאות המצטברות. | GL_DAILY_RATES.TO_CURRENCY |
OracleEBS.languages |
שפות | ["US"] |
רשימת שפות שבהן יוצגו תרגומים של שדות כמו תיאורי פריטים. | FND_LANGUAGES.LANGUAGE_CODE |
OracleEBS.datasets.cdc |
מערך הנתונים CDC | - | מערך הנתונים של CDC. | - |
OracleEBS.datasets.reporting |
מערך נתונים לדיווח | "REPORTING_OracleEBS" |
מערך נתונים לדיווח. | - |
הטמעת נתונים
כדי לקבל פרטים על הטמעת נתונים מ-Oracle ל-BigQuery, אפשר לפנות לנציג של Incorta ולעיין במדריך ההגדרה של Oracle EBS ל-Google Cortex.
הגדרות מומלצות
למרות שב-Incorta יש תמיכה בתזמון של משימות הטמעת נתונים במרווחי זמן שונים, כדי להשיג ביצועים אופטימליים ועדכניות הנתונים, מומלץ לתזמן את משימות הטמעת הנתונים ב-Incorta להרצה יומית. אם בתרחיש השימוש שלכם נדרש טיפול בנתונים שנמחקו, הקפידו להפעיל את האפשרות הזו לפי ההוראות במסמכי התיעוד של Incorta, טיפול במחיקות במקור.
הגדרות דיווח
בקטע הזה מפורטות הגדרות הדיווח שנדרשות בסביבה שלכם.
Managed Airflow Airflow connection
יוצרים חיבור BigQuery Airflow בשם oracleebs_reporting_bq שישמש את האופרטור BigQuery כדי לבצע טרנספורמציות של דיווח. פרטים נוספים זמינים במאמר בנושא ניהול חיבורים ב-Airflow.
הגדרות של Materializer
הגדרות המימוש נמצאות בsrc/OracleEBS/config/reporting_settings.yaml.
כברירת מחדל, הטבלאות של המאפיין, הכותרת והצבירה מתעדכנות מדי יום. גם הטבלאות בשכבת הדיווח מחולקות למחיצות לפי תאריך.
אפשר להתאים אישית את החלוקה למחיצות ואת האשכולות לפי הצורך. מידע נוסף זמין במאמרים בנושא הגדרות של אשכול וחלוקה למחיצות בטבלה.
מודל נתונים
בקטע הזה מתואר מודל הנתונים הלוגי של Oracle EBS Order to Cash. בכל קטע משנה מוסבר התרשים הבא של קשרי ישויות ב-Oracle EBS (ERD).
תצוגות של עובדות בסיסיות
אלה האובייקטים הכחולים בתרשים ERD, והם תצוגות בטבלאות CDC ללא טרנספורמציות, מלבד כינויים מסוימים של שמות עמודות.
טבלאות מאפיינים
אלה האובייקטים הסגולים בתרשים ERD, והם מכילים את מאפייני המימד הרלוונטיים שמשמשים את טבלאות הדיווח. כברירת מחדל, המאפיינים האלה מסוננים על סמך ערכי הפרמטרים של הגדרות הפריסה, במקרים הרלוונטיים. השילוב הזה משתמש גם במאפיין התאריך של לוח השנה הגרגוריאני של Cortex K9, שמוטמע כברירת מחדל.
טבלאות כותרת
אלה האובייקטים הירוקים בתרשים ERD, והם מכילים את העובדות והמאפיינים המצורפים שמתארים ישויות עסקיות כמו הזמנות וחשבוניות ברמת הכותרת. טבלאות הכותרות מחולקות לפי תאריך האירוע הראשי שמתאים לכל ישות, לדוגמה ORDERED_DATE או INVOICE_DATE.
שורות בתוך שורות ושורות חוזרות
הטבלאות SalesOrders ו-SalesInvoices מכילות שדות חוזרים בתוך שדות בשם LINES. השדות האלה מקבצים את שורות ההזמנה השונות ואת שורות החשבונית מתחת לכותרות המשויכות שלהן. כדי לשלוח שאילתה לגבי השדות המקוננים האלה, צריך להשתמש באופרטור UNNEST כדי לשטח את הרכיבים לשורות, כמו שמוצג בסקריפטים לדוגמה שסופקו (src/OracleEBS/src/reporting/ddls/samples/).
מאפיינים בתוך מאפיינים ומאפיינים חוזרים
חלק מהטבלאות מכילות שדות חוזרים נוספים שמוטמעים בתוך שדות אחרים, כמו ITEM_CATEGORIES או ITEM_DESCRIPTIONS, שבהם יכולים להיות כמה ערכים של אותו מאפיין שרלוונטיים לישות. אם מבטלים את הקינון של המאפיינים החוזרים האלה, חשוב לסנן את ערך המאפיין היחיד כדי למנוע ספירה כפולה של המדדים.
Applied Receivables
SalesAppliedReceivables היא טבלה ייחודית שבה הישויות יכולות להפנות לחשבוניות בפני עצמן, או לחשבונית עם קבלה על תשלום במזומן. לכן יש שדות בתוך שדות (אבל לא שדות חוזרים) INVOICE ו-CASH_RECEIPT, כאשר השדה CASH_RECEIPT מאוכלס רק כאשר APPLICATION_TYPE = 'CASH'.
טבלאות מסכמות
אלה האובייקטים האדומים בתרשים ERD, והם מצטברים מטבלאות הכותרת ועד למדדים יומיים. כל אחת מהטבלאות האלה מחולקת גם לפי תאריך האירוע הראשי. הטבלאות המצטברות מכילות רק מדדים מצטברים (לדוגמה, ספירות, סכומים) ולא כוללות מדדים כמו ממוצעים ויחסים. המשמעות היא שהמשתמשים צריכים לגזור את המדדים הלא-מצטברים כדי לוודא שאפשר לגזור אותם בצורה מתאימה כשמבצעים צבירה לרמת פירוט גבוהה יותר, כמו חודשית.
אפשר לעיין בסקריפטים לדוגמה כמו src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql.
סכומים של המרת מטבעות
בכל טבלת צבירה נעשה שימוש במאפיין CurrencyRateMD כדי ליצור שדה חוזר מקונן של AMOUNTS שמכיל מדדי מטבע שהומרו לכל אחד ממטבעות היעד שצוינו בהגדרת הפריסה.
כשמשתמשים במדדים האלה, חשוב לסנן לפי מטבע יעד אחד או לפי קבוצה של מטבעות יעד כדי שהדיווח לא יכלול ספירה כפולה. אפשר לראות את זה גם בסקריפטים לדוגמה, כמו src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql.
מאפיינים ומדדים של פריטים בתוך פריטים
הטבלה SalesOrdersDailyAgg מכילה שדה חוזר מקונן בשם LINES, כדי להבדיל בין מאפיינים ומדדים ברמת השורה (לדוגמה, ITEM_CATEGORY_NAME ו-AMOUNTS) לבין מאפיינים ומדדים ברמת הכותרת (לדוגמה, BILL_TO_CUSTOMER_NAME ו-NUM_ORDERS). חשוב לשלוח שאילתות לגבי רמות הגרעיניות האלה בנפרד כדי למנוע ספירה כפולה.
למרות שגם בחשבוניות יש מושג של כותרות לעומת שורות, הטבלה
SalesInvoicesDailyAgg מכילה רק מדדים ברמת השורה, ולכן היא לא
פועלת לפי אותו מבנה כמו SalesOrdersDailyAgg.
מה השלב הבא?
- מידע נוסף על מקורות נתונים ועומסי עבודה אחרים זמין במאמר מקורות נתונים ועומסי עבודה.
- מידע נוסף על השלבים לפריסה בסביבות ייצור זמין במאמר דרישות מוקדמות לפריסת Cortex Framework Data Foundation.
