באמצעות מערכי נתונים אפשר להעלות נתונים גיאו-מרחביים מקובץ מקומי או מ-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 נכללים בקטגוריה הזו), מומלץ לפשט את הנתונים לפני ההעלאה כדי להשיג את הביצועים הטובים ביותר במפה חזותית.
ריכזנו כאן כמה שיטות מומלצות לעיבוד הנתונים:
- צמצום המאפיינים של התכונה. שומרים רק את מאפייני התכונות הנחוצים לעיצוב המפה, למשל 'id' ו-'category'. אפשר לצרף מאפיינים נוספים לתכונה באפליקציית לקוח באמצעות סגנונות מבוססי-נתונים במפתח מזהה ייחודי. לדוגמה, תוכלו לקרוא את המאמר הצגת הנתונים בזמן אמת באמצעות עיצוב מבוסס-נתונים.
- כשהדבר אפשרי, משתמשים בסוגים פשוטים של נתונים באובייקטים של נכסים, כמו מספרים שלמים, כדי למזער את גודל המשבצת ולשפר את ביצועי המפה.
- פשטו צורות גיאומטריות מורכבות לפני העלאת הקובץ. אפשר לעשות זאת בכלי גיאו-מרחבי לבחירתכם, כמו הכלי הפתוח Mapshaper.org, או ב-BigQuery באמצעות ST_Simplify בגיאומטריות מורכבות של פוליגונים.
- לקבץ נקודות צפופות מאוד לפני העלאת הקובץ. אפשר לעשות זאת בכלי גיאו-מרחבי לבחירתכם, כמו פונקציות האשכולות של turf.js בקוד פתוח, או ב-BigQuery באמצעות ST_CLUSTERDBSCAN בגיאומטריות של נקודות צפופות.
הנחיות נוספות לגבי שיטות מומלצות לשימוש במערכי נתונים זמינות במאמר תצוגה חזותית של הנתונים באמצעות Datasets ו-BigQuery.
דרישות GeoJSON
ממשק ה-API של JavaScript במפות Google תומך במפרט הנוכחי של GeoJSON. ב-Maps JavaScript API יש תמיכה גם בקובצי GeoJSON שמכילים כל אחד מסוגי האובייקטים הבאים:
- אובייקטים גיאומטריים. אובייקט גיאומטריה הוא צורה מרחבית, שמתוארת כאיחוד של נקודות, קווים ופוליגונים עם חורים אופציונליים.
- אובייקטים של תכונות. אובייקט תכונה מכיל גיאומטריה וגם צמדי שם/ערך נוספים, שהמשמעות שלהם ספציפית לאפליקציה.
- אוספים של תכונות. אוסף תכונות הוא קבוצה של אובייקטים של תכונות.
ב-Maps JavaScript API אין תמיכה בקובצי GeoJSON שיש בהם נתונים במערכת ייחוס קואורדינטות (CRS) שאינה WGS84.
מידע נוסף על GeoJSON זמין במאמר תאימות ל-RFC 7946.
דרישות ל-KML
הדרישות של Maps JavaScript API הן:
- כל כתובות ה-URL צריכות להיות מקומיות (או יחסיות) לקובץ עצמו.
- יש תמיכה בגיאומטריה של נקודות, קווים ופוליגונים.
- כל מאפייני הנתונים נחשבים למחרוזות.
- סמלים או
<styleUrl>
שהוגדרו מחוץ לקובץ. - קישורים לרשתות, כמו
<NetworkLink>
- שכבות-על של קרקע, כמו
<GroundOverlay>
- גיאומטריות תלת-ממדיות או תגים שקשורים לגובה, כמו
<altitudeMode>
- מפרטי המצלמה, כמו
<LookAt>
- סגנונות שהוגדרו בתוך קובץ ה-KML.
דרישות לשימוש בקובצי CSV
בשביל קובצי CSV, שמות העמודות הנתמכים מפורטים בהמשך לפי סדר עדיפות:
latitude
,longitude
lat
,long
x
,y
wkt
(Well-Known Text)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
. אם משתמשים ביחידות שגויות, יכול להיות שהמערך ייבא בהצלחה, אבל הנקודות במערך הנתונים יוצגו במיקומים לא צפויים בנתונים שעבר עיבוד.
יצירת מערך נתונים
כדי ליצור מערך נתונים:
- במסוף Google Cloud, עוברים לדף Datasets.
- לוחצים על Create Dataset.
- מזינים את שם מערך הנתונים. השם חייב להיות ייחודי בכל מערכי הנתונים.
- אפשר גם להזין תיאור למערך הנתונים.
- לוחצים על המשך. יופיע הדף ייבוא נתונים.
- בוחרים את מקור ההעלאה של הנתונים ששימשו לאכלוס מערך הנתונים בתור מחשב, כלומר קובץ מקומי במערכת, או קטגוריה ב-Google Cloud Storage.
- ב-Desktop, לוחצים על Browse ובוחרים את הקובץ מבורר הקבצים.
- בשדה Google Cloud Storage bucket, לוחצים על Browse ובוחרים את הקטגוריה ואת הקובץ שמכילים את הנתונים.
- בוחרים את פורמט הקובץ.
- לוחצים על המשך כדי לבדוק את ההגדרות.
לוחצים על יצירה. יופיע הדף קבוצות נתונים עם מערך הנתונים החדש. הסטטוס אמור להיות עיבוד.
אם הנתונים יועלו בהצלחה:
- הסטטוס של מערך הנתונים מוגדר כ-COMPLETED.
- מערך הנתונים הופך לגרסה ה'פעילה', והוא הגרסה שבה האפליקציה משתמשת.
אם יש שגיאה בהעלאה:
- הסטטוס של גרסת מערך הנתונים החדשה מוגדר לסטטוס שאינו הושלם.
הצגה או שינוי של מערך נתונים
אחרי שיוצרים מערך נתונים, אפשר להציג או לשנות אותו:
- במסוף Google Cloud, עוברים לדף Datasets.
- לוחצים על השם של מערך הנתונים. יופיע הדף Dataset details.
- לוחצים על הכרטיסייה Details כדי לראות מידע על מערך הנתונים. בכרטיסייה הזו אפשר גם לערוך את השם והתיאור של מערך הנתונים.
- לוחצים על הכרטיסייה Preview כדי להציג את מערך הנתונים במפה (רק מערכי נתונים במצב COMPLETED או REVERTED).
- לוחצים על הכרטיסייה Table Data כדי לראות את כל המאפיינים של מערך הנתונים (רק מערכי נתונים בסטטוס COMPLETED או REVERTED). אלה המאפיינים שבהם אפשר להשתמש כדי לעצב את מערך הנתונים במפה.
- לוחצים על הלחצן Download כדי להוריד את הנתונים לקובץ מקומי.
- לוחצים על הלחצן Delete כדי למחוק את מערך הנתונים.
לוחצים על הלחצן ייבוא קובץ נתונים כדי להעלות נתונים חדשים למערך הנתונים.
העלאת נתונים חדשים למערך הנתונים יוצרת גרסה חדשה של מערך הנתונים. אם הנתונים החדשים הועלאו בהצלחה:
- הסטטוס של הגרסה החדשה של מערך הנתונים מוגדר כ-הושלמה.
- הגרסה החדשה הופכת לגרסה ה'פעילה', והיא הגרסה שבה האפליקציה משתמשת.
אם יש שגיאה בהעלאה:
- הסטטוס של גרסת מערך הנתונים החדשה מוגדר לסטטוס שאינו הושלם. לדוגמה, אם יש גרסה קודמת 'פעילה', הסטטוס של מערך הנתונים מוגדר ל-REVERTED.
- גרסת מערך הנתונים שהייתה 'פעילה' בעבר תישאר כגרסה 'הפעילה', והיא הגרסה שבה האפליקציה שלכם משתמשת.