התוסף SAP ODP מאפשר שילוב של נתונים בכמות גדולה מאפליקציות SAP עם BigQuery או עם מערכות יעד נתמכות אחרות באמצעות Cloud Data Fusion. התוסף כולל את התכונות העיקריות הבאות:
- משתמש ב-SAP ECC, SAP S4/HANA או SAP BW כמערכת מקור
- משתמש ב-SAP CDC (סימון נתונים שהשתנו) כדי לעקוב אחרי נתונים חדשים ונתוני דלתא במקורות הנתונים ולחלץ אותם
- שימוש במצב חילוץ של קבוצות
- תמיכה במקורות נתונים של SAP ובתצוגות ABAP CDS כמקורות נתונים
גרסאות תוכנה נתמכות
| תוכנה | גרסאות |
|---|---|
| SAP S4/HANA | SAP S4/HANA 1909 ואילך |
| SAP ECC | SAP ERP6 NW 7.31 SP16 ואילך |
| SAP JCo | SAP JCo גרסה 3.0.20 ואילך |
| Cloud Data Fusion | 6.3 ואילך |
מידע נוסף על SAP ב- Google Cloudזמין בסקירה הכללית על SAP ב- Google Cloud.
לפני שמתחילים
מגדירים את המערכות והשירותים הבאים שמשמשים את הפלאגין SAP ODP:
- הגדרת מערכת SAP ERP
התהליך הזה כולל את השלבים הבאים:
- מתקינים את קובצי ההעברה של SAP.
- מגדירים את ההרשאות והתפקידים הנדרשים ב-SAP.
- מגדירים את SAP Java Connector.
פריסת הפלאגין ODP ב-Cloud Data Fusion.
- חשוב: צריך לבחור גרסת פלאגין שתואמת לגרסת Cloud Data Fusion.
- אם משדרגים את הגרסה של מופע או פלאגין של Cloud Data Fusion, צריך להעריך את ההשפעה של השינויים על היקף הפונקציונליות והביצועים של צינור הנתונים.
הגדרת קישוריות RFC בין Cloud Data Fusion ל-SAP.
- מוודאים שהתקשורת מופעלת בין מכונת Cloud Data Fusion לבין שרת SAP.
- למכונות פרטיות, צריך להגדיר קישור בין רשתות שכנות (peering) של רשת VPC.
- מערכת SAP ומופע Cloud Data Fusion צריכים להיות באותו פרויקט.
הגדרת הפלאגין
- עוברים לממשק האינטרנט של Cloud Data Fusion ולוחצים על Studio.
- מוודאים שהאפשרות Data Pipeline - Batch (צינור נתונים – אצווה) נבחרה (ולא Realtime (זמן אמת)).
- בתפריט מקור, לוחצים על SapODP. צומת SAP ODP מופיע בצינור העיבוד.
- כדי להגדיר את המקור, עוברים לצומת SAP ODP ולוחצים על Properties (מאפיינים).
מזינים את המאפיינים הבאים. רשימה מלאה זמינה במאמר בנושא מאפיינים.
- מזינים תווית לצומת SAP ODP – לדוגמה,
SAP ODP tables. מזינים את פרטי החיבור. אתם יכולים להגדיר חיבור חדש וחד-פעמי או חיבור קיים שאפשר להשתמש בו שוב.
חיבור חדש
כדי להוסיף חיבור חד-פעמי ל-SAP, פועלים לפי השלבים הבאים:
- משאירים את ההגדרה שימוש בחיבור מושבתת.
בקטע Connection (חיבור), מזינים את הפרטים הבאים מחשבון SAP בשדות האלה:
- בשדה שם הפניה, מזינים שם לחיבור שמזהה את המקור הזה לצורך מעקב אחר מקורות נתונים.
- בשדה SAP client (לקוח SAP), מזינים את שם הלקוח של מופע או סביבה ספציפיים ב-SAP. אדמין SAP יכול לספק את שם הלקוח.
- בשדה SAP language (שפת SAP), מזינים את שפת הכניסה ל-SAP. ברירת המחדל היא EN (אנגלית).
בוחרים באחד מסוגי החיבור הבאים.
- ישיר (דרך שרת האפליקציות של SAP). אם בוחרים בסוג ברירת המחדל הזה, מזינים מידע בשדות הבאים: SAP application server host, SAP system number ו-SAP router.
- מאוזן עומסים (דרך שרת ההודעות של SAP). אם בוחרים בסוג הזה, צריך להזין מידע בשדות הבאים: SAP Message Server host, SAP Message Server service or port number, SAP System ID (SID) ו-SAP logon group name.
בשדה הקשר, בוחרים את סוג מקור הנתונים שבו משתמשים.
בשדה שם מקור SAP ODP, מזינים את השם של מקור הנתונים שבו אתם משתמשים.
בשדה סוג החילוץ, בוחרים את סוג חילוץ הנתונים. ברירת המחדל היא מלא (כל הנתונים).
מבקשים מאדמין SAP את שם המשתמש לכניסה ל-SAP ואת הסיסמה.
בשדה JCo Library Cloud Storage path (נתיב ספריית JCo ב-Cloud Storage), מזינים את הנתיב של SAP Java Connector (SAP JCo) ב-Cloud Storage שמכיל את קובצי ספריית SAP JCo שהעליתם.
כדי ליצור סכימה על סמך המטא-נתונים מ-SAP שממפה את סוגי הנתונים של SAP לסוגי הנתונים התואמים של Cloud Data Fusion, לוחצים על Get schema (קבלת סכימה). מידע נוסף זמין במאמר בנושא מיפוי סוגי נתונים.
אופציונלי: כדי לבצע אופטימיזציה של עומס ההטמעה מ-SAP, מזינים מידע בשדות הבאים:
- בשדה SAP ODP subscriber name, מציינים את המנוי לחילוץ הנתונים ממקור נתונים תקין.
- באמצעות אפשרויות הסינון אפשר לחלץ רשומות על סמך תנאי בחירה.
- בשדה Number of splits (מספר הפיצולים), אפשר ליצור מחיצות כדי לחלץ רשומות נתונים במקביל, וכך לשפר את הביצועים. מספר הפיצולים יכול להשפיע על תהליכי העבודה של SAP, ולכן צריך לבחור אותו בקפידה.
- בשדה גודל החבילה, מציינים את מספר הרשומות לחילוץ בקריאה יחידה לרשת SAP. גודל החבילה משפיע על הביצועים ועל המשאבים הזמינים, ולכן צריך לבחור אותו בקפידה.
חיבור לשימוש חוזר
כדי לעשות שימוש חוזר בחיבור קיים, פועלים לפי השלבים הבאים:
- מפעילים את האפשרות שימוש בחיבור.
- לוחצים על Browse connections (עיון בחיבורים).
לוחצים על שם החיבור.
אם לא קיים חיבור, כדי ליצור חיבור שאפשר להשתמש בו שוב, פועלים לפי השלבים הבאים:
- לוחצים על הוספת חיבור > SapOdp.
- בדף יצירת חיבור ל-SapOdp שנפתח, מזינים שם ותיאור לחיבור.
- בשדה SAP client (לקוח SAP), מזינים את שם הלקוח של מופע או סביבה ספציפיים ב-SAP. אדמין SAP יכול לספק את שם הלקוח.
- בשדה SAP language (שפת SAP), מזינים את שפת הכניסה ל-SAP. ברירת המחדל היא EN (אנגלית).
בוחרים באחד מסוגי החיבור הבאים.
האפשרות המומלצת.- ישיר (דרך שרת האפליקציות של SAP). אם בוחרים בסוג ברירת המחדל הזה, מזינים מידע בשדות הבאים: SAP application server host, SAP system number ו-SAP router.
- מאוזן עומסים (דרך שרת ההודעות של SAP). אם בוחרים בסוג הזה, צריך להזין מידע בשדות הבאים: SAP Message Server host, SAP Message Server service or port number, SAP System ID (SID) ו-SAP logon group name.
בשדה 'שם מקור SAP ODP', מזינים את שם מקור הנתונים של ODP מ-SAP.
מזינים את פרטי הכניסה ל-SAP: מבקשים מאדמין SAP את הערכים של שם המשתמש לכניסה ל-SAP והסיסמה.
בשדה JCo Library Cloud Storage path (נתיב ספריית JCo ב-Cloud Storage), מזינים את הנתיב של SAP Java Connector (SAP JCo) ב-Cloud Storage שמכיל את קובצי ספריית SAP JCo שהעליתם.
בשדה זמן המתנה, מזינים את זמן ההמתנה (בשניות) לפני הניסיון החוזר הבא – לדוגמה,
60.בשדה מספר הניסיונות החוזרים, מזינים את המספר המקסימלי של ניסיונות חוזרים – לדוגמה,
3.אופציונלי: בשדה Additional SAP connection properties (מאפייני חיבור נוספים של SAP), מזינים צמדים של מפתח/ערך שצריכים לבטל את ברירות המחדל של SAP JCo.
לוחצים על יצירה.
- מזינים תווית לצומת SAP ODP – לדוגמה,
מאפיינים
| מאפיין (property) | יכולות מאקרו | מאפיין חובה | תיאור |
|---|---|---|---|
| תווית | לא | כן | השם של הצומת בצינור הנתונים. |
| שימוש בחיבור | לא | לא | שימוש בחיבור שאפשר לעשות בו שימוש חוזר. אם נעשה שימוש בחיבור, לא צריך לספק את פרטי הכניסה. מידע נוסף זמין במאמר בנושא ניהול קישורים. |
| שם | לא | כן | השם של החיבור שאפשר לעשות בו שימוש חוזר. |
| SAP client | כן | כן | המופע או הסביבה הספציפיים במערכת SAP. |
| שפה של SAP | כן | כן | השפה שבה מוצגים ומעובדים ממשק המשתמש והנתונים של SAP. |
| סוג החיבור | לא | כן | סוג החיבור ל-SAP: Direct או Load balanced. |
| מארח שרת האפליקציות של SAP | כן | לא | רק עבור סוג החיבור Direct, שם המארח הזה הוא משרת האפליקציות של SAP, שמשמש כשכבת ביניים בין לקוחות SAP (כמו ממשק האינטרנט של SAP, דפדפני אינטרנט או אפליקציות לנייד) לבין מסד הנתונים הבסיסי. |
| מספר מערכת SAP | כן | לא | רק עבור סוג החיבור Direct, המספר הזה הוא המזהה הייחודי שמוקצה לכל מערכת SAP. לדוגמה,
00. |
| נתב SAP | כן | לא | רק עבור סוג החיבור Direct, זהו מחרוזת הנתב של שרת ה-proxy, שמספק ערוץ מאובטח לתקשורת בין מערכות SAP לבין לקוחות או שותפים חיצוניים. |
| מארח של שרת הודעות SAP | כן | לא | רק עבור סוג החיבור Load balanced, זהו שם המארח, שמקל על איזון העומסים בין כמה שרתים של אפליקציות ב-SAP. |
| מספר היציאה או השירות של שרת ההודעות של SAP | כן | לא | רק עבור סוג החיבור Load balanced, זוהי יציאת הרשת שבה שרת ההודעות של SAP מאזין לחיבורים נכנסים מלקוחות SAP ומשרתי אפליקציות בתוך SAP. |
| מזהה מערכת SAP (SID) | כן | לא | רק לסוג החיבור Load balanced, המזהה הזה מוקצה לכל מערכת SAP. |
| שם קבוצת הכניסה של SAP | כן | לא | השם של הקיבוץ הלוגי או ההגדרה של כמה שרתים של אפליקציות SAP. ערך ברירת המחדל הוא PUBLIC. |
| סוג האובייקט | לא רלוונטי | לא רלוונטי | סוגי האובייקטים הנתמכים: DataSources/Extractors או ABAP Core Data Services. |
| שם המקור של SAP ODP | כן | כן | השם של SAP DataSources או של תצוגת ה-CDS (לדוגמה, 2LIS_02_ITM). |
| סוג החילוץ | כן | כן | התוסף תומך בשני סוגים של חילוץ נתונים:
|
| שם המשתמש בכניסה ל-SAP | כן | כן | שם המשתמש ב-SAP מומלץ: אם שם המשתמש משתנה מדי פעם, כדאי להשתמש במאקרו. |
| סיסמה לכניסה ל-SAP | כן | כן | סיסמה ל-SAP. מומלץ: להשתמש בפקודות מאקרו מאובטחות. |
| מזהה הפרויקט ב-GCP | כן | כן | מזהה הפרויקט (Google Cloud ). |
| נתיב GCS של ספריית SAP JCo | כן | כן | הנתיב ל-Cloud Storage שאליו העליתם את קובצי הספרייה של SAP JCo. |
| קבלת סכימה | לא רלוונטי | לא רלוונטי | התוסף יוצר סכימה על סמך המטא-נתונים מ-SAP, שממפה את סוגי הנתונים של SAP לסוגי הנתונים התואמים של Cloud Data Fusion. מיפוי סוגי נתונים |
| שם המנוי של SAP ODP | כן | כן | המנוי ל-ODP לחילוץ הנתונים מ-SAP DataSource תקין
או מתצוגת CDS. היא צריכה לכלול את הפרטים הבאים:
|
| זמן המתנה | כן | לא | המאפיין הזה מאפשר למהנדסי נתונים לבחור זמן המתנה מתאים אחרי כל קריאה לרשת מ-Cloud Data Fusion אל SAP. |
| מספר הניסיונות החוזרים | כן | לא | מספר הניסיונות החוזרים בזמן ההמתנה לסיום השיחה ברשת. |
| אפשרויות סינון (שווה) | כן | לא | הערך שצריך להיות בשדה כדי שהמערכת תוכל לקרוא אותו. אפשרויות הסינון הן רשימות של שמות שדות מטא-נתונים וזוגות של ערכים שלהם. הם מגדירים את תנאי הסינון שיחול כשקוראים נתונים מ-SAP DataSource. רק רשומות שעומדות בתנאים מחולצות. מפתח המסנן תואם לשדה בסכימה. הוא צריך להיות מסוג פשוט (לא ARRAY, RECORD או UNION). דוגמה לשימוש:שם השדה: MTARTערך: FERT |
| אפשרויות סינון (טווח) | כן | לא | הגבולות התחתון והעליון מגדירים את הערך ששדה צריך להכיל כדי שניתן יהיה לקרוא אותו. אפשרויות הסינון הן רשימות של שמות שדות מטא-נתונים וזוגות של ערכים שלהם. הם מגדירים את תנאי הסינון שיחול כשקוראים נתונים מ-SAP DataSource. רק רשומות שעומדות בתנאים מחולצות. מפתח המסנן תואם לשדה בסכימה. הפורמט הוא low AND high. דוגמה לשימוש: שם השדה: ERDATערך נמוך: 2023-11-01ערך גבוה: 2023-11-30 |
| אפשרויות סינון (קטן או שווה) | כן | לא | הערך ששדה צריך להיות קטן ממנו או שווה לו. אפשרויות הסינון הן רשימות של שמות שדות מטא-נתונים וזוגות של ערכים שלהם. הם מגדירים את תנאי הסינון שיחול כשקוראים נתונים מ-SAP DataSource. רק רשומות שעומדות בתנאים מחולצות. מפתח המסנן תואם לשדה בסכימה. הוא צריך להיות מסוג פשוט (לא ARRAY, RECORD או UNION). דוגמה לשימוש:שם השדה: MATNRערך: 10008 |
| אפשרויות סינון (גדול או שווה) | כן | לא | הערך ששדה צריך להיות גדול ממנו כדי שייקרא. אפשרויות הסינון הן רשימות של שמות שדות מטא-נתונים וזוגות של ערכים שלהם. הם מגדירים את תנאי הסינון שיחול כשקוראים נתונים מ-SAP DataSource. רק רשומות שעומדות בתנאים מחולצות. מפתח המסנן תואם לשדה בסכימה. הוא צריך להיות מסוג פשוט (לא ARRAY, RECORD או UNION). דוגמה לשימוש:שם השדה: MATNRערך: 10008 |
| אפשרויות סינון (לא שווה) | כן | לא | הגדרה של הערך שאליו השדה לא יכול להיות שווה כדי שיהיה אפשר לקרוא אותו. אפשרויות הסינון הן רשימות של שמות שדות מטא-נתונים וזוגות של ערכים שלהם. הם מגדירים את תנאי הסינון שיחול כשקוראים נתונים מ-SAP DataSource. רק רשומות שעומדות בתנאים מחולצות. מפתח המסנן תואם לשדה בסכימה. הוא צריך להיות מסוג פשוט (לא ARRAY, RECORD או UNION). דוגמה לשימוש:שם השדה: MTARTערך: FERT |
| מספר הפיצולים ליצירה | כן | לא | יוצרת מחיצות כדי לחלץ רשומות במקביל. מנוע זמן הריצה יוצר את מספר המחיצות שצוין (ואת החיבורים ל-SAP) במהלך חילוץ הרשומות. חשוב להפעיל שיקול דעת כשמגדילים את הערך הזה, כי הוא מגדיל את מספר החיבורים בו-זמנית עם SAP. מומלץ: לתכנן את החיבורים ל-SAP לכל צינור עיבוד נתונים ואת המספר הכולל של צינורות עיבוד נתונים שפועלים בו-זמנית. אם הערך הוא 0 או אם השדה נשאר ריק, Cloud Data Fusion בוחר ערך מתאים, על סמך מספר המבצעים הזמינים, הרשומות לחילוץ וגודל החבילה. |
| גודל החבילה (ב-KB) | כן | לא | מספר הרשומות לחילוץ בקריאה אחת לרשת SAP. זהו מספר הרשומות ש-SAP מאחסנת בזיכרון במהלך כל קריאה לחילוץ נתונים מהרשת. חשוב לנקוט משנה זהירות כשמגדירים את המאפיין הזה. צינורות נתונים מרובים שמחלצים נתונים יכולים להגדיל את השימוש בזיכרון, ולגרום לכשלים בגלל שגיאות Out of memory.
|
| מאפיינים נוספים של חיבור SAP | כן | לא | מגדירים מאפייני SAP JCo נוספים כדי לשנות את ברירות המחדל של SAP JCo.
לדוגמה, הגדרה של jco.destination.pool_capacity = 10
מבטלת את קיבולת ברירת המחדל של מאגר החיבורים. |
מיפוי של סוגי נתונים
בטבלה הבאה מפורטים סוגי הנתונים של SAP עם הסוגים התואמים של Cloud Data Fusion.
| סוג הנתונים ב-SAP | סוג ABAP | תיאור של SAP | סוג הנתונים ב-Cloud Data Fusion |
|---|---|---|---|
INT1 (מספרי) |
b | מספר שלם של בייט אחד | int |
INT2 (מספרי) |
s | מספר שלם באורך 2 בייטים | int |
INT4 (מספרי) |
i | מספר שלם בן 4 בייטים | int |
INT8 (מספרי) |
8 | מספר שלם בגודל 8 בייט | ארוך |
DEC (מספרי) |
p | מספר ארוז בפורמט BCD (DEC) | עשרוני |
DF16_DEC, DF16_RAW (מספרי) |
a | נקודה צפה עשרונית 8 בייט IEEE 754r | double |
DF34_DEC, DF34_RAW (מספרי) |
e | נקודה צפה עשרונית 16 בייט IEEE 754r | double |
FLTP (מספרי) |
f | מספר בשיטת נקודה צפה בינארית | double |
CHAR, LCHR (תו) |
c | מחרוזת תווים | מחרוזת |
SSTRING, GEOM_EWKB (תו) |
מחרוזת | מחרוזת תווים | מחרוזת |
STRING (תו) |
מחרוזת | מחרוזת תווים CLOB | בייטים |
NUMC, ACCP (תו) |
n | טקסט מספרי | מחרוזת |
RAW, LRAW (בייט) |
x | נתונים בינאריים | בייטים |
RAWSTRING (בייט) |
xstring | BLOB של מחרוזת בייטים | בייטים |
DATS (Date/Time) |
d | תאריך | תאריך |
TIMS (Date/Time) |
t | שעה | פעם |
TIMS (Date/Time) |
utcl | Utclong), TimeStamp | חותמת זמן |
מגבלות
כדי לוודא שצינורות העיבוד מוגדרים ומופעלים בצורה נכונה, כדאי לעיין במגבלות הבאות של הפלאגין:
- אין תמיכה בגדלים של חבילות שגדולים מ-50,000.
- מקורות נתונים שלא תומכים בחילוץ דלתא נכשלים במצב סנכרון.
- במקור נתונים מותאם אישית, אם לא מטפלים בגודל החבילה, צינור העיבוד נכשל בחילוץ נתונים גדולים.
תרחישים לדוגמה
יש תמיכה בשני הקשרים לחילוץ:
- מקורות נתונים או כלי חילוץ (SAPI)
- הקשר של ODP ABAP CDS (ABAP_CDS)
התוסף ODP תומך במקורות הנתונים הרגילים והמותאמים אישית הבאים בשני ההקשרים:
| מקור נתונים של ODP | הקשר | חילוץ מלא | חילוץ דלתא |
|---|---|---|---|
| SAP Standard pre-delivered | SAPI | נתמך | נתמך |
| בהתאמה אישית (Z*) | SAPI | נתמך | נתמך |
| SAP Standard pre delivered | ABAP_CDS | נתמך | נתמך |
| בהתאמה אישית (Z*) | ABAP_CDS | נתמך | נתמך |