גישה ועיבוד של נתוני Big Data באמצעות ArcGIS Pro

לכולנו קרה שניתוח של סט נתונים בפרו לקח המון זמן ולכולנו גם קרה שחיכינו לניתוח שיסיים את העבודה ובסוף הוא נכשל. נתוני עתק (BigData) מציבים אתגר מסוג חדש עבור כל מערכת מידע – וגם עבור ה-GIS. אז מה ניתן לעשות כדי לקבל תובנות מכמות נתונים גדולה, כך שגם ניקח בחשבון את ממד המרחב וגם את ממד הזמן וכל זה גם מהר…
נתוני עתק (BigData) מציבים אתגר מסוג חדש עבור כל מערכת מידע – וגם עבור ה-GIS. בגרסאות החדשות של Pro נוספו כלים ושיפורים חדשים לארגז הכלים של ה-GeoAnalytics Desktop המאפשרים ניתוח משולב של זמן ומרחב לזיהוי קשרים ודפוסים על פני כמות גדולה מאד של נתונים. היתרון של כלים אלה הינו ביכולת להשתמש בכח עיבוד מקבילי המופעל באמצעות Apache Spark על המחשב השולחני.
השאלות שהבלוג הזה ינסה לענות עליהן הן:
האם קרה לכם שניתוח שניסיתם לבצע נכשל בגלל שכמות הנתונים שלכם היתה גדולה מדי?
האם חיכיתם פעם לכלי ניתוח שיסיים את העבודה שלו וזה לקח המון זמן?
אוסף כלי ה-GeoAnalytics יכולים לתת תשובה לשאלות אלה. הייחודיות של כלים אלה היא שהרצה שלהם עושה שימוש ב-Apache Spark לצורך ניתוח מקבילי. כלומר, הרצה של ניתוח יכולה להשתמש בכל משאבי המחשב הזמינים לה באופן מקבילי ובכך לאפשר לנתח תבניות, קשרים, אנומליות ואירועים על נתוני ביג דאטה מרחביים עם ממד הזמן. השימוש ב-Apache Spark נעשה בתוך הכלים, ואתם המשתמשים לא צריכים לדאוג לנושא. העבודה מתבצעת עבורכם.
מתי נשתמש בכלי ה-GeoAnalytics? להלן מספר סיבות לשימוש בכלים:
- הכלים/התהליכים הקיימים לא נותנים תשובה בזמן מספק
- נדרש לזקק את הנתונים לגודל הניתן לניהול ושימוש בתהליכי ניתוח אחרים
- בנתונים שלנו יש הרבה "רעש" ואנו צריכים להבין מה חשוב
- הנתונים הנדרשים גדולים מדי לטעינה לתוך ה-Pro
- הכלים נותנים לנו מענה לצורך!
אלו סוגי ניתוחים ניתן להריץ?
לדוגמה, נניח שיש לנו חיישנים נייחים על רשת הצינורות שלנו. כל חיישן דוגם את הסטטוס כל מספר דקות. לאורך זמן, יצטבר לנו אוסף ענק של נקודות ניטור ונגיע בקלות לנתוני Big Data. על הנתונים הללו נרצה להבין איפה התגלה אירוע חריג ב-24 השעות האחרונות, או איפה האזורים החמים של האירועים החריגים?
דוגמה נוספת, יש לנו משאיות משלוחים, או רכבים כלשהם, ואנו רוצים לשמור את כל מסלולי הנסיעות שלהם. גם כאן לאורך זמן, כמות הנתונים גדולה מאד. על הנתונים הללו, נרצה לנתח איפה הצפיפות הגדולה ביותר של מסלולים ייחודיים של משאית/רכב – סביר להניח שהניתוח לא מעניין רק ברמה המרחבית, אלא גם בממד הזמן – אם 2 משאיות נוסעות באותו מסלול בשעות שונות, המשמעות היא שונה מאשר נסיעה באותו זמן. ניתוחים מסוג זה, יהיה קשה מאד ואיטי מאד לבצע בכלי הניתוח הרגילים הקיימים היום בכלי הדסקטופ שלנו.
ולכן, כלי ה-GeoAnalytics Desktop נותנים לנו פתרון שמייעל את הניתוח ומאפשר לבצע אותו באופן מקבילי.
קיימים מספר רב של כלים במסגרת כלי ה-GeoAnalytics:
ובכל גרסה Esri ממשיכה להוסיף יכולות.
מהו ממד הזמן בנתונים?
הנתונים שלנו בדרך כלל נאספים לאורך זמן ויש להם time stamp כלשהו.
את הזמן ניתן להגדיר או כנקודה בזמן, רגע בזמן, או כטווח זמנים – עם זמן התחלה וזמן סיום של אירוע.
נסתכל על שלשה כלים מתוך רשימת הכלים:
Reconstruct Tracks
כאמור, אנחנו אוספים נתונים לאורך זמן. לדוגמה נקודות. לכל נקודה יש גם time stamp שמגדיר אותה בזמן. נקרא לנקודות אלה Breadcrumbs. הכלי Reconstruct Tracks יודע לקחת את הנקודות הללו ולחבר אותן לפי מזהה (ID) והזמן המוגדר לכל אחת מהנקודות למסלולי הישויות. משמאל אתם רואים אוסף נקודות שלא ברור מה המשמעות שלהן, אבל כשמייצרים מהן את המסלולים שלהן תוך התחשבות ב-ID ובזמן שבו נדגמה כל נקודה רואים שיש לנו פה בעצם מסלולי ההוריקנים במרחב ובזמן.
Detect Incidents
כלי ה- Detect Incidents עובד גם הוא על נתוני הביג דאטה שלנו. במקרה הזה, הכלי ימצא נקודות שעונות לקריטריון מסוים. למשל אם נסתכל על הנקודות של ההוריקנים מהדגומה הקודמת, נוכל לראות אירועים שענו על קריטריון מסוים.
Find Dwell Locations
כלי ה-Find Dwell Locations נוסף בגרסה 2.5 ומאפשר להבין איפה ישויות עומדות או כמעט עומדות למשך פרק זמן. בדוגמה זו, אנחנו רואים מונית שנוסעת, ונראה שיש זמן מסוים ואזור שבו היא עומדת לפרק זמן ארוך יותר.
Big Data Connection
בגרסה 2.6 של הפרו נוסף לנו סוג חדש של נתונים שאנחנו יכולים לעבוד איתו – Big Data Connection.
BDC מאפשר לנו לקרוא מאוסף של קובץ אחד או יותר מתוך ספריה. הקבצים יכולים להיות קבצי CSV, קבצי SHAPE, parquet או ORC.
על מנת להשתמש במבנה הנתונים של ה-BDC יש לארגן את הנתונים בדיסק בצורה נכונה. את החיבור אנו נפנה לספריה שמתחתיה יהיו תתי ספריות שכל אחת מהן מייצגת Dataset. בתוך כל אחת מתתי הספריות, נשים את קבצי הנתונים.
בדוגמה זו אנחנו רואים ספריה בשם demoBDFS ובתוכה יש ספריות שמייצגות datasets. לדוגמה AIS_ship_locations, bus_locations_csv, crimes וכו'
בתוך כל ספריה, יכולים להיות כמובן יותר מקובץ אחד. למשל בספריה של הברקים אפשר לראות אוסף של 12 קבצי shape. כשמריצים את הניתוח כל 12 הקבצים משתתפים בניתוח.
כל מה שנמצא בספריה נחשב ל-dataset אחד ולא צריך לעשות כלום כדי לאחד אותם לקובץ אחד.
ולכן, כשנרצה להציג מספר רב של קבצים כ-Dataset אחד מבלי שנצטרך לאחד אותם, נגדיר BDC. תכונה נוספת של ה-BDC היא שהניתוחים ניגשים לנתונים בזמן הרצת הניתוח. ולכן, ניתן להמשיך ולהוסיף נתונים לספריה ללא צורך ברישום מחודש של השכבה.
הגורמים המשפיעים על הביצועים של כלי ה-GeoAnalytics Desktop
הביצועים של הכלים משתנים מכלי לכלי ותלויים במספר גורמים:
1. נתוני הקלט – כמה ישויות, מה סוג הגיאומטריה, כמה vertices יש לקו וכו'
2. מקור הנתונים – כמובן שאם הנתונים יהיו על דיסק מקומי, הביצועים יהיו טובים יותר מאשר אם הנתונים ישבו על דיסק ברשת.
3. הכלי בשימוש – חלק מהכלים מורכבים יותר מאחרים ולכן זמן העבודה שלהם ארוך יותר
4. חומרה – זיכרון, מיקום ומהירות הדיסוק וכמות ליבות. לכל אלה השפעה על מהירות העבודה של הכלים. אולם הגורם המשמעותי ביותר מבין אלה הוא כמות הזיכרון.
ואם נדרש ניתוח של עוד יותר נתונים?
כלי ה-Geoanalytics Desktop עובדים על המחשב המקומי. הם יודעים לנצל את כל הליבות והזיכרון הקיים במחשב. בהפעלת הכלים אנו יכולים לתת להם להשתמש ב-100% מהמשאבים הקיימים, או להגביל אותם לשימוש בחלק מהמשאבים לפי בחירתנו. עם זאת, המקסימום האפשרי לשימוש הוא המשאבים הקיימים במחשב המקומי.
לעיתים, משאבי המחשב המקומי לא מספיקים. אנו צריכים כח מחשוב חזק יותר. לצורך כך ניתן להשתמש במוצר אחר GeoAnalytics Server שהוא שרת נוסף בתשתית ה-ArcGIS Enterprise.
השימוש בשרת יתן לארגון שלכם אפשרות לבצע ניתוחי ביג דאטה על ידי המשתמשים המחוברים לארגון, לנצל כח מחשוב של מספר שרתים, לחבר cloud storage חיצוני לשכבות ה-Web ועוד.
על יכולות ה- GeoAnalytics Server נדבר בבלוג אחר.
לסיכום, כלי ה- GeoAnalytics Desktop מאפשרים לנו לבצע ניתוחים מהירים יותר בעזרת מחשוב מקבילי. הם מאפשרים לבצע ניתוחים שכוללים גם את הממד המרחבי וגם את ממד הזמן. הם מאפשרים לנו לעבד נתוני Big Data ולהוציא מהם תובנות בצורה משמעותית. והכי חשוב, הכלים עובדים כחלק מה-Pro בגרסת Advanced. ניתן להשתמש בהם כחלק מכלי המדף!
מידע נוסף ניתן לקרוא בקישורים הבאים:
Spark-Powered Analysis with GeoAnalytics Desktop Tools vs. GeoAnalytics Server
Blog post introducing GeoAnalytics in Pro
GeoAnalytics Desktop Documentation