טעינת נתונים מ-ServiceNow ל-BigQuery
אפשר לטעון נתונים מ-ServiceNow ל-BigQuery באמצעות המחבר של שירות העברת הנתונים ל-BigQuery ב-ServiceNow. שירות העברת הנתונים ל-BigQuery מאפשר לתזמן משימות העברה חוזרות שמוסיפות את הנתונים העדכניים מ-ServiceNow ל-BigQuery.
מגבלות
העברות נתונים ב-ServiceNow כפופות למגבלות הבאות:
- המחבר של ServiceNow תומך רק ב-ServiceNow table API.
- לא מומלץ להפעיל העברות נתונים בו-זמנית באותו מופע של ServiceNow. הדבר עלול לגרום לעיכובים או לכשלים בגלל העומס על מופע ServiceNow.
- מומלץ לתזמן את זמני ההתחלה של ההעברות כך שלא יהיה חפיפה בין ההעברות.
- כדי לשפר את הביצועים של העברת הנתונים, מומלץ להגביל את מספר הנכסים ל-20 פריטים לכל העברת נתונים.
- מרווח הזמן המינימלי בין העברות נתונים חוזרות הוא 15 דקות. מרווח ברירת המחדל להעברה חוזרת הוא 24 שעות.
- כל הגדרה של העברת נתונים יכולה לתמוך רק בהרצה אחת של העברת נתונים בכל זמן נתון. אם מתוכננת העברת נתונים שנייה לפני שההעברה הראשונה מסתיימת, רק ההעברה הראשונה תושלם. כל העברת נתונים אחרת שחופפת להעברה הראשונה תדלג.
- כדי להימנע מדילוג על העברות במסגרת הגדרת העברה יחידה, מומלץ להגדיר את תדירות החזרה כדי להגדיל את משך הזמן בין העברות של נתונים בכמות גדולה.
- כדי להשתמש בצירוף רשת בהעברת הנתונים הזו, צריך קודם ליצור צירוף רשת על ידי הגדרת כתובת IP סטטית.
לפני שמתחילים
לפני שיוצרים העברת נתונים של ServiceNow, צריך לבצע את הפעולות הבאות ב-ServiceNow וב-BigQuery.
דרישות מוקדמות ל-ServiceNow
- כדי לגשת אל ServiceNow APIs, צריך ליצור פרטי כניסה של OAuth.
צריך להפעיל את כל האפליקציות הבאות של ServiceNow במופע ServiceNow:
כדי להתחיל בהעברה של ServiceNow, צריך להיות לכם את פרטי הכניסה הנכונים כדי להתחבר למופע של ServiceNow.
- כדי לקבל את פרטי הכניסה למופע של ServiceNow Developer, צריך להתחבר לפורטל ServiceNow Developer. אפשר להשתמש בשם המשתמש ובסיסמה שמופיעים בדף ניהול סיסמה של מופע. מידע על איפוס הסיסמה ב-ServiceNow זמין במאמר איפוס סיסמה.
- כדי לקבל את פרטי הכניסה למופע ייצור או למופע משני של ServiceNow, צריך לפנות לאדמין הלקוח של ServiceNow ולבקש את שם המשתמש והסיסמה.
דרישות מוקדמות ל-BigQuery
- מבצעים את כל הפעולות שנדרשות כדי להפעיל את שירות העברת נתונים ל-BigQuery.
- יוצרים מערך נתונים ב-BigQuery לאחסון הנתונים.
- אם אתם מתכוונים להגדיר התראות על הפעלת העברה ב-Pub/Sub, ודאו שיש לכם הרשאה לניהול זהויות והרשאות גישה (IAM)
pubsub.topics.setIamPolicy. אם הגדרתם רק התראות באימייל, לא נדרשות הרשאות Pub/Sub. מידע נוסף זמין במאמר בנושא התראות על הפעלת שירות העברת נתונים ל-BigQuery.
התפקידים הנדרשים ב-BigQuery
כדי לקבל את ההרשאות שנדרשות ליצירת העברת נתונים באמצעות שירות העברת נתונים ל-BigQuery, צריך לבקש מהאדמין להקצות לכם את תפקיד BigQuery Admin (roles/bigquery.admin) ב-IAM בפרויקט.
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקיד המוגדר מראש הזה כולל את ההרשאות שנדרשות ליצירת העברת נתונים בשירות העברת נתונים ל-BigQuery. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי ליצור העברת נתונים באמצעות שירות העברת הנתונים ל-BigQuery, נדרשות ההרשאות הבאות:
-
הרשאות של שירות העברת נתונים ל-BigQuery:
-
bigquery.transfers.update -
bigquery.transfers.get
-
-
הרשאות ב-BigQuery:
-
bigquery.datasets.get -
bigquery.datasets.getIamPolicy -
bigquery.datasets.update -
bigquery.datasets.setIamPolicy -
bigquery.jobs.create
-
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
מידע נוסף מופיע במאמר בנושא מתן גישה ל-bigquery.admin.
הגדרת העברת נתונים מ-ServiceNow
כדי להוסיף נתונים מ-ServiceNow ל-BigQuery, צריך להגדיר העברה באמצעות אחת מהאפשרויות הבאות:
המסוף
עוברים לדף 'העברות נתונים' במסוף Google Cloud .
לוחצים על Create transfer (יצירת העברה).
בקטע Source type, בשדה Source, בוחרים באפשרות ServiceNow.
בקטע Data source details (פרטים של מקור הנתונים):
- (אופציונלי) באפשרות Network attachment (צירוף רשת), בוחרים צירוף רשת מהתפריט הנפתח או לוחצים על Create Network Attachment (יצירת צירוף רשת).
- בוחרים את רכיב הרשת לחיבור כדי להגדיר את העברת הנתונים הזו לשימוש בכתובת IP אחת ועקבית. אפשר להשתמש באפשרות הזו אם מופע ServiceNow שלכם מוגדר לקבל תעבורה רק מכתובות IP ספציפיות.
- מידע נוסף על יצירת קובץ מצורף לרשת זמין במאמר הגדרת חיבורים באמצעות קבצים מצורפים לרשת
- מידע נוסף על הגדרת כתובות IP ב-ServiceNow זמין במאמר בנושא הגדרת כתובות IP פנימיות מותרות ב-ServiceNow.
- בשדה Instance ID, מזינים את מזהה המופע של ServiceNow.
אפשר למצוא את זה בכתובת ה-URL של ServiceNow, לדוגמה
https://INSTANCE_ID.service-now.com. - (אופציונלי) בסוג הענן של ServiceNow, בוחרים את סוג הענן של חשבון ServiceNow:
- בוחרים באפשרות מסחרי אם כתובת ה-URL של מופע ServiceNow
שלכם תואמת לתבנית
https://INSTANCE_ID.service-now.com. זה ערך ברירת המחדל. - בוחרים באפשרות Government Community Cloud (GCC) אם כתובת ה-URL של מופע ServiceNow שלכם תואמת לתבנית
https://INSTANCE_ID.servicenowservices.com.
- בוחרים באפשרות מסחרי אם כתובת ה-URL של מופע ServiceNow
שלכם תואמת לתבנית
- בשדה שם משתמש, מזינים את שם המשתמש ב-ServiceNow שבו רוצים להשתמש לחיבור.
- בשדה Password (סיסמה), מזינים את הסיסמה של ServiceNow.
- בקטע Client ID (מזהה לקוח), מזינים את מזהה הלקוח מפרטי הכניסה של OAuth. הוראות ליצירת פרטי כניסה זמינות במאמר יצירת פרטי כניסה של OAuth.
- בקטע Client secret, מזינים את סוד הלקוח מפרטי הכניסה של OAuth.
- בשדה ServiceNow tables to transfer (טבלאות ServiceNow להעברה), מזינים את השמות של טבלאות ServiceNow שרוצים להעביר, או לוחצים על Browse (עיון) ובוחרים את הטבלאות שרוצים להעביר.
- בקטע Value type (סוג הערך), בוחרים אחת מהאפשרויות הבאות:
- כדי להעביר את הערכים שמאוחסנים במסד הנתונים, בוחרים באפשרות בפועל.
- כדי להעביר את ערכי התצוגה של העמודות, בוחרים באפשרות תצוגה.
- (אופציונלי) באפשרות Network attachment (צירוף רשת), בוחרים צירוף רשת מהתפריט הנפתח או לוחצים על Create Network Attachment (יצירת צירוף רשת).
בקטע הגדרות יעד, בשדה מערך נתונים, בוחרים את מערך הנתונים שיצרתם לאחסון הנתונים.
בקטע Transfer config name, בשדה Display name, מזינים שם להעברת הנתונים.
בקטע Schedule options:
- ברשימה Repeat frequency, בוחרים אפשרות כדי לציין באיזו תדירות תתבצע העברת הנתונים הזו. כדי לציין תדירות חזרה מותאמת אישית, בוחרים באפשרות בהתאמה אישית. אם בוחרים באפשרות על פי דרישה, העברת הנתונים הזו תפעל כשמפעילים את ההעברה באופן ידני.
- אם רלוונטי, בוחרים באפשרות התחלה מיידית או התחלה בשעה שנקבעה, ומזינים תאריך התחלה ומשך זמן הפעלה.
אופציונלי: בקטע אפשרויות התראות, מבצעים את הפעולות הבאות:
- כדי להפעיל התראות באימייל, לוחצים על המתג התראות באימייל. כשמפעילים את האפשרות הזו, האדמין של ההעברה מקבל הודעה באימייל אם ההעברה נכשלת.
- כדי להפעיל התראות על הרצת העברה ב-Pub/Sub להעברת הנתונים הזו, לוחצים על המתג התראות Pub/Sub. אפשר לבחור את שם הנושא או ללחוץ על יצירת נושא כדי ליצור נושא.
לוחצים על Save.
BQ
מזינים את הפקודה bq mk ומספקים את הדגל ליצירת העברה, --transfer_config:
bq mk
--transfer_config
--project_id=PROJECT_ID
--data_source=DATA_SOURCE
--display_name=DISPLAY_NAME
--target_dataset=DATASET
--params='PARAMETERS'
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID(אופציונלי): מזהה הפרויקט ב- Google Cloud . אם לא מציינים מזהה פרויקט, המערכת משתמשת בפרויקט שמוגדר כברירת מחדל. -
DATA_SOURCE: מקור הנתונים (לדוגמה,servicenow). -
DISPLAY_NAME: השם המוצג של הגדרות ההעברה. שם העברת הנתונים יכול להיות כל ערך שיאפשר לכם לזהות את ההעברה אם תצטרכו לשנות אותה בהמשך. DATASET: מערך הנתונים היעד להגדרת ההעברה.
PARAMETERS: הפרמטרים של הגדרת ההעברה שנוצרה בפורמט JSON. לדוגמה:--params='{"param":"param_value"}'. אלה הפרמטרים להעברת נתונים ב-ServiceNow:פרמטר של ServiceNow חובה או אופציונלי תיאור connector.instanceIdחובה מזהה המופע של מופע ServiceNow connector.authentication.usernameחובה שם המשתמש של פרטי הכניסה connector.authentication.passwordחובה הסיסמה של פרטי הכניסה connector.authentication.oauth.clientIdחובה מזהה הלקוח של OAuth שנוצר connector.authentication.oauth.clientSecretחובה הסוד של הלקוח ב-OAuth שנוצר connector.valueTypeאופציונלי ActualאוDisplay(ברירת מחדל:Actual)connector.instanceCloudTypeאופציונלי מציינים את סוג הענן של חשבון ServiceNow. ערכים נתמכים: -
COMMERCIAL_CLOUD, אם כתובת ה-URL של מופע ServiceNow שלכם תואמת לתבניתhttps://INSTANCE_ID.service-now.com -
GOVERNMENT_COMMUNITY_CLOUDאם כתובת ה-URL של מופע ServiceNow שלכם תואמת לדפוסhttps://INSTANCE_ID.servicenowservices.com
connector.networkAttachmentאופציונלי כדי להגדיר את העברת הנתונים הזו כך שתשתמש בכתובת IP אחת ועקבית, צריך לציין חיבור לרשת. אפשר להשתמש באפשרות הזו אם מופע ServiceNow שלכם מאובטח כך שהוא מקבל תנועה רק מכתובות IP ספציפיות. מידע נוסף על הגדרת כתובות IP ב-ServiceNow זמין במאמר בנושא הגדרת כתובות IP פנימיות מותרות ב-ServiceNow. לדוגמה, הפקודה הבאה יוצרת העברת נתונים של ServiceNow בפרויקט ברירת המחדל עם כל הפרמטרים הנדרשים:
bq mk --transfer_config --target_dataset=mydataset --data_source=servicenow --display_name='My Transfer' --params='{"connector.authentication.oauth.clientId": "1234567890", "connector.authentication.oauth.clientSecret":"ABC12345", "connector.authentication.username":"user1", "connector.authentication.password":"abcdef1234", "connector.instanceId":"https://dev-instance.service-now.com", "connector.networkAttachment": "projects/dev-project1/regions/us-central1/networkattachments/na1"}'-
API
משתמשים בשיטה projects.locations.transferConfigs.create ומספקים מופע של המשאב TransferConfig.
כדי להפעיל העברת נתונים ידנית מחוץ ללוח הזמנים הרגיל, אפשר להתחיל הפעלה של מילוי חוסרים.
מיפוי סוגי נתונים
בטבלה הבאה מפורט המיפוי של סוגי הנתונים בהעברת נתונים ב-ServiceNow:
| סוג הנתונים של ServiceNow | סוג נתונים ב-BigQuery |
|---|---|
decimal |
FLOAT64 |
integer |
INTEGER |
boolean |
BOOLEAN |
glide_date |
DATE |
glide_date_time |
DATETIME |
glide_time |
INT64 |
reference |
STRING |
currency |
STRING |
sys_class_name |
STRING |
domain_id |
STRING |
domain_path |
STRING |
guid |
STRING |
translated_html |
STRING |
journal |
STRING |
string |
STRING |
פתרון בעיות בהעברה
בקטעים הבאים מפורטות בעיות נפוצות שמתרחשות כשמגדירים העברת נתונים ב-ServiceNow.
מידע נוסף מופיע במאמר פתרון בעיות בהגדרות של העברות.
ההעברה נכשלת בגלל הפעלת ServiceNow
בעיה שגורמת להעברות נתונים להיכשל מתרחשת כשהאפליקציות Procurement, Product Catalog או Contract Management לא מופעלות ב-ServiceNow. כדי לפתור את הבעיה, צריך להפעיל את כל שלוש האפליקציות:
- Procurement
- קטלוג מוצרים
- Contract Management (ניהול חוזים) (מופעל כברירת מחדל)
הבעיה מתרחשת במהלך הפעלת ההעברה
מתרחשת בעיה שגורמת לכך שהרצת ההעברה לא נוצרת כמתוכנן. כדי לפתור את הבעיה:
- בודקים שפרטי הכניסה לחשבון ServiceNow, כמו הערכים של שם המשתמש, הסיסמה, מספר הלקוח והסוד של הלקוח, תקינים.
- בודקים שמזהה המכונה הוא המזהה התקין של מכונת ServiceNow.
שגיאות אחרות
מידע על שגיאות אחרות שהתרחשו במהלך העברת נתונים ב-ServiceNow זמין במאמר בעיות בהעברה ב-ServiceNow
תמחור
מידע על המחירים של העברות מ-ServiceNow זמין במאמר בנושא מחירים של השירות להעברת נתונים.
המאמרים הבאים
- סקירה כללית של שירות העברת נתונים ל-BigQuery זמינה במאמר מבוא לשירות העברת נתונים ל-BigQuery.
- מידע על שימוש בהעברות, כולל קבלת מידע על הגדרות העברה, הצגת רשימה של הגדרות העברה וצפייה בהיסטוריית ההרצה של העברה, זמין במאמר עבודה עם העברות.
- איך טוענים נתונים באמצעות פעולות בין עננים