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

בחירת פלטפורמה: Android iOS JavaScript

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

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

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

כדי ליצור ולנהל מערכי נתונים בפרויקט ב-Google Cloud, צריך להיות לכם תפקיד 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.objects.get. למידע נוסף על ניהול הגישה ל-Cloud Storage, ראו סקירה כללית על בקרת גישה.

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

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

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

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

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

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

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

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

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

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

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

דרישות GeoJSON

ב-SDK של מפות ל-iOS יש תמיכה במפרט הנוכחי של GeoJSON. ב-SDK של מפות ל-iOS יש גם תמיכה בקובצי GeoJSON שמכילים את סוגי האובייקטים הבאים:

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

ב-SDK של מפות ל-iOS אין תמיכה בקובצי GeoJSON שיש בהם נתונים במערכת צירים (CRS) שאינה WGS84.

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

דרישות ל-KML

הדרישות ל-SDK של מפות ל-iOS הן:

  • כל כתובות ה-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 כחלק מכל הגדרה של אובייקט Feature ואובייקט Geometry.

שגיאות 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. לוחצים על Create Dataset.
  3. מזינים את שם מערך הנתונים. השם חייב להיות ייחודי בכל מערכי הנתונים.
  4. אפשר גם להזין תיאור למערך הנתונים.
  5. לוחצים על המשך. יופיע הדף ייבוא נתונים.
  6. בוחרים את מקור ההעלאה של הנתונים ששימשו לאכלוס מערך הנתונים בתור מחשב, כלומר קובץ מקומי במערכת, או קטגוריה ב-Google Cloud Storage.
    • ב-Desktop, לוחצים על Browse ובוחרים את הקובץ מבורר הקבצים.
    • בשדה Google Cloud Storage bucket, לוחצים על Browse ובוחרים את הקטגוריה ואת הקובץ שמכילים את הנתונים.
  7. בוחרים את פורמט הקובץ.
  8. לוחצים על המשך כדי לבדוק את ההגדרות.
  9. לוחצים על יצירה. יופיע הדף קבוצות נתונים, שבו תוצג קבוצת הנתונים החדשה. הסטטוס אמור להיות עיבוד.

    אם הנתונים יועלו בהצלחה:

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

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

    • הסטטוס של גרסת מערך הנתונים החדשה מוגדר לסטטוס שאינו הושלם.

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

אחרי שיוצרים מערך נתונים, אפשר להציג או לשנות אותו:

  1. במסוף Google Cloud, עוברים לדף Datasets.
  2. לוחצים על השם של מערך הנתונים. יופיע הדף Dataset details.
    1. לוחצים על הכרטיסייה Details כדי לראות מידע על מערך הנתונים. בכרטיסייה הזו אפשר גם לערוך את השם והתיאור של מערך הנתונים.
    2. לוחצים על הכרטיסייה Preview כדי להציג את מערך הנתונים במפה (רק מערכי נתונים במצב COMPLETED או REVERTED).
    3. לוחצים על הכרטיסייה Table Data כדי לראות את כל המאפיינים של מערך הנתונים (רק מערכי נתונים בסטטוס COMPLETED או REVERTED). אלה המאפיינים שבהם אפשר להשתמש כדי לעצב את מערך הנתונים במפה.
    4. לוחצים על הלחצן Download כדי להוריד את הנתונים לקובץ מקומי.
    5. לוחצים על הלחצן Delete כדי למחוק את מערך הנתונים.
    6. לוחצים על הלחצן ייבוא קובץ נתונים כדי להעלות נתונים חדשים למערך הנתונים.

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

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

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

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