יצירה וניהול של מערך נתונים

מערכי נתונים מאפשרים להעלות נתונים גיאו-מרחביים מקובץ מקומי או מ-Google Cloud Storage לפלטפורמה של מפות Google. לאחר מכן תוכלו לשייך מערך נתונים לסגנון מפה אחד או יותר במסוף Cloud. אחרי שמקשרים את מערך הנתונים לסגנון של מפות, משתמשים ב-API של עיצוב מבוסס-נתונים כדי לעצב באופן דינמי את אפליקציית המפות.

אפשר גם להשתמש ב-API ל-REST כדי להעלות את הנתונים הגיאו-מרחביים למערך נתונים. למידע נוסף, ראו Maps Datasets API

הגדרת תפקידים

כדי ליצור ולנהל מערכי נתונים בפרויקט ב-Google Cloud, צריך להיות לכם תפקיד IAM של בעלים או עריכה ב-IAM.

לחלופין, אפשר להקצות את תפקידי ה-IAM הבאים לחשבון משתמש או לחשבון שירות שבהם אתם משתמשים כדי לנהל מערכי נתונים:

  • התפקיד Maps Platform Datasets Admin מעניק למשתמש או לחשבון השירות גישת קריאה/כתיבה למערכי נתונים בפרויקט. התפקיד הזה מאפשר למשתמש לבצע את כל הפעולות במערך נתונים.
  • התפקיד Maps Platform Datasets Viewer מעניק הרשאת קריאה בלבד למערכי נתונים בפרויקט. התפקיד הזה מאפשר לבצע פעולות של רשימה, אחזור והורדה במערך נתונים.

מידע נוסף מופיע במאמר הענקת תפקיד ב-IAM באמצעות מסוף Google Cloud.

מקור הנתונים של מערך הנתונים

אחרי שיוצרים מערך נתונים, מעלים את הנתונים למערך הנתונים מ-Google Cloud Storage או מקובץ מקומי.
  • כשמעלים נתונים מ-Cloud Storage, צריך לציין את הנתיב של הקובץ למשאב שמכיל את הנתונים ב-Cloud Storage. הנתיב הזה מופיע בפורמט gs://GCS_BUCKET/FILE.

    למשתמש ששולח את הבקשה נדרש התפקיד Storage Object Viewer או כל תפקיד אחר שכולל את ההרשאה storage.objects.get. למידע נוסף על ניהול הגישה ל-Cloud Storage, קראו את המאמר סקירה כללית על בקרת הגישה.

  • כשמעלים נתונים מקובץ מקומי, צריך לציין את הנתיב לקובץ GeoJSON, KML או CSV שמכיל את הנתונים להעלאה.

דרישות מוקדמות

כשיוצרים מערך נתונים:

  • השמות המוצגים חייבים להיות ייחודיים בפרויקט שלכם ב-Google Cloud.
  • השמות לתצוגה צריכים להיות קטנים מ-64 בייטים (מכיוון שהתווים האלה מיוצגים ב-UTF-8, בשפות מסוימות כל תו יכול להיות מיוצג על ידי מספר בייטים).
  • התיאורים חייבים להיות קטנים מ-1,000 בייטים.

כשמעלים נתונים:

  • סוגי הקבצים הנתמכים הם CSV , GeoJSON ו-KML.
  • גודל הקובץ המקסימלי הנתמך הוא 350MB.
  • השמות של עמודות המאפיינים לא יכולים להתחיל במחרוזת "?_".
  • אין תמיכה בגיאומטריה תלת ממדית. הנתונים האלה כוללים את הסיומת 'Z' בפורמט WKT ואת קואורדינטות הגובה בפורמט GeoJSON.

שיטות מומלצות להכנת נתונים

אם נתוני המקור מורכבים או גדולים, כמו נקודות צפופות, מחרוזות שורות ארוכות או פוליגונים (בדרך כלל קובצי מקור בגודל של יותר מ-50MB נכללים בקטגוריה הזו), כדאי לפשט את הנתונים לפני ההעלאה כדי להשיג את הביצועים הטובים ביותר במפה חזותית.

ריכזנו כאן כמה שיטות מומלצות להכנת הנתונים:

  1. מזעור המאפיינים של התכונות. צריך לשמור רק את מאפייני התכונות שנדרשים כדי לעצב את המפה, למשל 'id' ו-'category'. אפשר לצרף מאפיינים נוספים לתכונה באפליקציית לקוח באמצעות סגנונות מבוססי-נתונים במפתח מזהה ייחודי. לדוגמה, אפשר לעיין במאמר הצגת הנתונים בזמן אמת בעזרת סגנון מבוסס-נתונים.
  2. אם אפשר, כדאי להשתמש בסוגי נתונים פשוטים לאובייקטים של המאפיינים, כמו מספרים שלמים, כדי להקטין את גודל המשבצות ולשפר את ביצועי המפה.
  3. לפני העלאת קובץ, הגדירו צורות גיאומטריות מורכבות. אפשר לעשות את זה בכלי גיאו-מרחבי לבחירתכם, כמו כלי הקוד הפתוח Mapshaper.org, או ב-BigQuery באמצעות ST_Simplify עם צורות גיאומטריות מורכבות של פוליגונים.
  4. לאסוף נקודות צפופות מאוד לפני העלאת קובץ. אפשר לעשות את זה בכלי גיאו-מרחבי לבחירתך, כמו הפונקציות של אשכול turf.js בקוד פתוח, או ב-BigQuery באמצעות ST_CLUSTERDBSCAN על צורות גיאומטריות של נקודות צפופות.

הנחיות נוספות לגבי שיטות מומלצות במערכי נתונים מפורטות במאמר המחשה חזותית של נתונים באמצעות מערכי נתונים ו-BigQuery.

דרישות לגבי GeoJSON

JavaScript API של מפות Google תומך במפרט GeoJSON הנוכחי. JavaScript API של מפות Google תומך גם בקובצי GeoJSON שמכילים כל אחד מסוגי האובייקטים הבאים:

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

ב-JavaScript API של מפות Google אין תמיכה בקובצי GeoJSON שמכילים נתונים במערכת עזר לקואורדינטות (CRS), מלבד WGS84.

מידע נוסף על GeoJSON זמין במאמר תאימות ל-RFC 7946.

דרישות KML

JavaScript API של מפות Google כולל את הדרישות הבאות:

  • כל כתובות ה-URL חייבות להיות מקומיות (או יחסיות) לקובץ עצמו.
  • תמיכה גיאומטרית של נקודות, קווים ופוליגונים.
  • כל מאפייני הנתונים נחשבים למחרוזות.
תכונות ה-KML הבאות לא נתמכות:
  • סמלים או <styleUrl> שמוגדרים מחוץ לקובץ.
  • קישורי רשת, כמו <NetworkLink>
  • שכבות-על של קרקע, כמו <GroundOverlay>
  • צורות גיאומטריות תלת-ממדיות או כל תג שקשור לגובה כמו <altitudeMode>
  • מפרטי מצלמה כמו <LookAt>
  • סגנונות שהוגדרו בתוך קובץ ה-KML.

דרישות לגבי CSV

לקובצי CSV, שמות העמודות הנתמכים מפורטים למטה לפי סדר עדיפות:

  • latitude, longitude
  • lat, long
  • x, y
  • wkt (טקסט ידוע)
  • address, city, state, zip
  • address
  • עמודה אחת שמכילה את כל פרטי הכתובת, כמו 1600 Amphitheatre Parkway Mountain View, CA 94043

לדוגמה, הקובץ מכיל עמודות בשם x, y ו-wkt. מכיוון שהעדיפות של x ו-y גבוהה יותר, לפי סדר השמות של העמודות הנתמכות ברשימה שלמעלה, המערכת משתמשת בערכים בעמודות x ו-y ומתעלמת מהעמודה wkt.

כמו כן:

  • כל שמות של עמודות צריכים להשתייך לעמודה אחת. כלומר, לא יכולה להיות עמודה בשם xy שמכילה גם נתוני קואורדינטות x וגם y. הקואורדינטות x ו-y חייבות להיות בעמודות נפרדות.
  • שמות העמודות הם לא תלויי-רישיות.
  • הסדר של שמות העמודות לא משנה. לדוגמה, אם קובץ ה-CSV מכיל עמודות lat ו-long, הן יכולות להופיע בכל סדר שתרצו.

טיפול בשגיאות בהעלאת נתונים

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

שגיאות GeoJSON

דוגמאות לשגיאות נפוצות ב-GeoJSON:

  • השדה type חסר, או שהשדה type אינו מחרוזת. קובץ הנתונים GeoJSON שמעלים צריך להכיל שדה מחרוזת בשם type כחלק מכל אובייקט של תכונה והגדרה של אובייקט גיאומטרי.

שגיאות KML

דוגמאות לכמה שגיאות KML נפוצות:

  • קובץ הנתונים לא יכול להכיל אף אחת מתכונות ה-KML שלא נתמכות שצוינו למעלה, אחרת ייבוא הנתונים עלול להיכשל.

שגיאות CSV

דוגמאות לכמה שגיאות CSV נפוצות:

  • בחלק מהשורות חסרים ערכים של עמודה בגיאומטריה. כל השורות בקובץ CSV צריכות להכיל ערכים שאינם ריקים בעמודות הגיאומטריה. העמודות בגיאומטריה כוללות את:
    • latitude, longitude
    • lat, long
    • x, y
    • wkt
    • address, city, state, zip
    • address
    • עמודה אחת שמכילה את כל פרטי הכתובת, כמו 1600 Amphitheatre Parkway Mountain View, CA 94043
  • אם x ו-y הן עמודות גיאומטריות, צריך לוודא שהיחידות הן קו אורך וקו רוחב. חלק ממערכי הנתונים הציבוריים משתמשים במערכות קואורדינטות שונות מתחת לכותרות x ו-y. אם נעשה שימוש ביחידות הלא נכונות, יכול להיות שהייבוא של מערך הנתונים יסתיים, אבל הנתונים שעברו רינדור עשויים להציג את הנקודות של מערך הנתונים במיקומים לא צפויים.

יצירת מערך נתונים

כדי ליצור מערך נתונים:

  1. במסוף Google Cloud, עוברים לדף Datasets.
  2. לוחצים על יצירת מערך נתונים.
  3. מזינים את השם של מערך הנתונים. השם חייב להיות ייחודי בכל מערכי הנתונים.
  4. אפשר גם להזין Description של מערך נתונים.
  5. לוחצים על המשך. הדף ייבוא נתונים יופיע.
  6. בוחרים את Upload source של הנתונים שמשמשים לאכלוס מערך הנתונים בתור Desktop, כלומר קובץ מקומי במערכת, או קטגוריה של Google Cloud Storage.
    • במחשב, לוחצים על Browse ואז בוחרים את הקובץ מבורר הקבצים.
    • בשביל Google Cloud Storage bucket, לוחצים על Browse ובוחרים את הקטגוריה והקובץ שמכילים את הנתונים.
  7. בוחרים את פורמט הקובץ.
  8. לוחצים על המשך כדי לבדוק את ההגדרות.
  9. לוחצים על יצירה. יופיע הדף Datasets שבו מוצג מערך הנתונים החדש. הסטטוס צריך להיות בעיבוד.
  10. ממתינים עד שמערך הנתונים יהיה בסטטוס הושלם.

הצגה או שינוי של מערך נתונים

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

כדי להציג את מערך הנתונים או לשנות אותו:

  1. במסוף Google Cloud, עוברים לדף Datasets.
  2. לוחצים על השם של מערך הנתונים. הדף פרטי מערך הנתונים יופיע.
    1. לוחצים על הכרטיסייה פרטים כדי להציג מידע על מערך הנתונים. בכרטיסייה הזו אפשר גם לערוך את השם ואת התיאור של מערך הנתונים.
    2. לוחצים על הכרטיסייה תצוגה מקדימה כדי להציג את מערך הנתונים במפה.
    3. לוחצים על הכרטיסייה נתוני טבלה כדי לראות את כל המאפיינים של מערך הנתונים. אלה המאפיינים שבהם אפשר להשתמש כדי לעצב את מערך הנתונים במפה.
    4. לוחצים על הלחצן הורדה כדי להוריד את הנתונים לקובץ מקומי.
    5. כדי למחוק את מערך הנתונים, לוחצים על הלחצן Delete.
    6. לוחצים על הלחצן ייבוא קובץ נתונים כדי להעלות נתונים חדשים למערך הנתונים.

      העלאת נתונים חדשים למערך הנתונים יוצרת גרסה חדשה של מערך הנתונים. אם הנתונים החדשים יועלו בהצלחה:

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

      אם יש שגיאה בהעלאה:

      • הסטטוס של הגרסה החדשה של מערך הנתונים מוגדר לסטטוס שאינו הושלם. לדוגמה, אם יש גרסה קודמת 'פעילה', הסטטוס של מערך הנתונים יהיה ReVERTED.
      • הגרסה הקודמת של מערך הנתונים ה'פעילה' נשארת כגרסה ה'פעילה' והיא הגרסה שמשמשת את האפליקציה שלך.