כשמחברים מכונה של ServiceNow ל-Datastream, אפשר לשכפל נתונים היסטוריים ושינויים מצטברים לצורך ניתוח ושילוב נתונים. ServiceNow היא פלטפורמה מבוססת-ענן שעוזרת לארגונים לנהל את הפעולות שלהם ולבצע אותן באופן אוטומטי.
לפני שאתם מגדירים מקור ServiceNow ב-Datastream, כדאי לעיין במונחי המפתח, בהתנהגות השכפול, בגרסאות הנתמכות, באובייקטים המשוכפלים ובמגבלות הידועות.
מונחי מפתח
ServiceNow פועלת באמצעות טבלאות, רשומות ושדות:
- מכונה של ServiceNow היא סביבת ענן ייעודית ומבודדת של ServiceNow, לדוגמה
company.service-now.com. - טבלה היא מבנה נתונים ראשי ב-ServiceNow, ששווה ערך לטבלה במסד נתונים.
- רשומה היא פריט בודד בטבלה, ששווה ערך לשורה במסד נתונים.
- שדה הוא רכיב נתונים ספציפי ברשומה, ששווה ערך לעמודה במסד נתונים.
- המחבר משתמש ב-Table API כממשק ה-RESTful הראשי כדי לגשת לנתונים ישירות מטבלאות ServiceNow.
- עימוד מבוסס-היסט הוא שיטה לניווט ברשומות בטבלה של ServiceNow, על ידי העברת מספר היסט ל-Table API. השיטה הזו רגישה למחיקות של רשומות במהלך חלוקה לדפים, מה שעלול לגרום למחבר לדלג על נתונים.
- עימוד מבוסס-Keyset היא שיטה שבה המחבר מנהל את העימוד על ידי מעקב אחרי ערכי רשומות ייחודיים, כמו מזהים או חותמות זמן, והסדר שלהם. השיטה הזו יעילה גם אם יש מחיקות של רשומות במהלך חלוקה לדפים.
התנהגות
התמיכה במקור ServiceNow ב-Datastream מסתמכת על ServiceNow REST Table API. כדי להבטיח את תקינות הנתונים והביצועים, Datastream תומך בשתי שיטות רפליקציה עיקריות.
מילוי חוסרים (backfill) היסטוריים
- כשמשכפלים נתוני שינויים ממופע של ServiceNow, Datastream מבצע סנכרון היסטורי מלא של כל הרשומות הקיימות בטבלה.
- כדי להבטיח עקביות בנתונים ולמנוע אובדן רשומות במהלך חילוצים גדולים, המחבר משתמש בחלוקה לדפים שמבוססת על קבוצת מפתחות. המחבר מנהל את התהליך הזה על ידי מעקב אחרי ערכי רשומות ייחודיים והסדר שלהם, מה שהופך את החילוץ לעמיד בפני מחיקות של רשומות ומונע מהמחבר לדלג על רשומות או לשכפל אותן.
- כדי לספק סדר יציב לטעינה הראשונית, Datastream ממיין את הנתונים לפי מאפייני הרשומות
sys_updated_onו-sys_id. בטבלהsys_journal_field, שמכילה רשומות שלא ניתנות לשינוי ואין בה שדהsys_updated_on, המחבר ממיין לפי המאפייניםsys_created_onו-sys_id.
סנכרון מצטבר
- כשיוצרים רפליקה של נתונים שהשתנו ממכונה של ServiceNow, Datastream מתעד שינויים, כמו הוספות ועדכונים, שמתרחשים אחרי המילוי החוזר הראשוני.
- סנכרון מצטבר בצד השרת: המחבר שולח שאילתה ל-ServiceNow API כדי לאתר רשומות שהשתנו מאז הסנכרון האחרון שהצליח, באמצעות מסנן במאפיינים
sys_updated_onו-sys_id(אוsys_created_onו-sys_idבטבלהsys_journal_field). - תהליך הסנכרון משתמש בסמן מורכב שמורכב מ-
sys_updated_on(אוsys_created_onלטבלהsys_journal_field) ומסמנים שלsys_id. הסמניםsys_updated_onו-sys_created_onמבטיחים שרק רשומות עם חותמת זמן ששווה לזמן שצוין או מאוחרת ממנו יסונכרנו במחזור הבא, והסמןsys_idמבטיח עקביות של רשומות עם חותמות זמן זהות.
גרסאות
המחבר של ServiceNow פועל עם Table API (V2) של ServiceNow REST. הפונקציונליות שנתמכת ב-Datastream מאומתת מול גרסת Zurich.
אובייקטים ששוכפלו
המחבר של ServiceNow משתמש במנגנון גילוי דינמי כדי לזהות את כל קבוצת הטבלאות (האובייקטים) בתוך מכונה. כדי לוודא שאתם משכפלים רק נתונים עסקיים בעלי ערך גבוה, המחבר מפעיל תהליך סינון רב-שכבתי כדי להחריג ארכיטקטורה פנימית, יומנים טכניים וטבלאות של מטא-נתונים של המערכת.
לוגיקת הסינון
- גישה לשירות אינטרנט: אתם יכולים לשכפל רק טבלאות שהגדרתם במפורש עם גישה לשירותי אינטרנט (
ws_access=true). אם ההגדרה הזו חסרה, המחבר לא יכול לאחזר נתוני רשומות מהטבלה. - מחלקות ראשיות שלא נכללות: המחבר לא כולל טבלאות שעוברות בירושה מטבלת הגדרות המערכת
sys_metadataאו שהן חלק מהיררכיית טבלאות מסובבת, כדי למנוע שכפול של מטא-נתונים טכניים או תמונות מצב לא עקביות. - קידומת של מערכת פנימית: המחבר מסנן טבלאות שמתחילות בקידומות טכניות ספציפיות שמייצגות תכונות מדור קודם או תכונות של פלטפורמה.
- רשימת הזהב (חריגים במערכת): המחבר מחריג את רוב הטבלאות של
sys_, אבל הוא מוסיף באופן מפורש לרשימת ההיתרים ישויות עסקיות קריטיות, כמוsys_user,sys_choiceו-sys_journal_field.
קידומות מערכת שמסוננות כברירת מחדל
| קטגוריה | קידומות | תיאור |
|---|---|---|
| רכיבים פנימיים עיקריים | v_, ts_, imp_, ecc_, wf_, sh$, bin_, var_, gs_ |
טבלאות וירטואליות, אינדקס החיפוש, שלבי ייבוא, תורי ECC והקשרים של תהליכי עבודה. |
| ניתוח נתונים ו-AI | pa_, ua_, ml_, ais_, promin_, di_ |
ציוני ניתוח ביצועים, נתוני טלמטריה של ספקים, וקטורים של למידת מכונה ופרופילים של חיפוש מבוסס-AI. |
| מודולים טכניים | sa_, sla_, atf_, cxs_, automation_, ids_ |
תבניות של מיפוי שירותים, יומנים של מנוע SLA ונתיבי ביקורת אבטחה. |
| גרסאות קודמות ואדמין | pf_, clone_, upgrade_, rollback_, expert_, dscy_ |
היסטוריית התיקונים של המכונה, יומני השדרוגים ומודולים מדור קודם שכבר לא בשימוש. |
טבלאות מערכת מותרות
- משתמשים ואבטחה:
sys_user, sys_user_group, sys_user_grmember,sys_user_role, sys_user_has_role. - Core reference:
sys_choice(אפשרויות בתפריט נפתח),sys_company,sys_domain,sys_location. - נתיבי ביקורת:
sys_journal_field(היסטוריית הערות ותגובות בעבודה).
מגבלות ידועות
המגבלות הידועות בשימוש ב-ServiceNow כמקור כוללות:
- Datastream לא תומך בקליטת רשומות שנמחקו.
- כברירת מחדל, Datastream לא כולל הרבה טבלאות פנימיות של הפלטפורמה, למשל טבלאות שמתחילות ב-
ts_, ב-v_או ב-imp_. - אפשר לשכפל רק טבלאות שהגדרתם במפורש עם גישה לשירותי אינטרנט (
ws_access=true). זוהי ברירת המחדל ברוב הטבלאות. - המחבר משכפל את ערכי השדות באופן שבו הם מופיעים במכונה של מסד הנתונים הבסיסי של ServiceNow. הערכים האלה נקראים ערכים בפועל. כלומר, יכול להיות שהערכים בפועל ש-Datastream משכפל ליעד יהיו שונים מהערכים שמוצגים בממשק המשתמש של ServiceNow (שנקראים ערכי תצוגה). מידע נוסף זמין במאגר הידע של ServiceNow.