צלילה עמוקה לחזיר



פוסט בבלוג זה הוא צלילה עמוקה אל חזיר ותפקידיו. תוכלו למצוא הדגמה כיצד תוכלו לעבוד ב- Hadoop באמצעות Pig ללא תלות ב- Java.

אחת הסיבות הגדולות ביותר לכך שהפופולריות של Hadoop הרקיעה שחקים בתקופה האחרונה היא העובדה שתכונות כמו Pig ו- Hive פועלות על גבי זה ומאפשרות שאינם מתכנתים עם פונקציונליות שבעבר הייתה בלעדית למתכנתי Java. תכונות אלה היו תוצאה של הביקוש הגובר לאנשי מקצוע ב- Hadoop. תכונות נוספות המשמשות אנשי מקצוע של Hadoop מרקעים שאינם Java הם Flume, Sqoop, HBase ו- Oozie.





מהו ממשק סמן בג'אווה

כדי להבין מדוע אינך זקוק לג'אווה בכדי ללמוד Hadoop, עיין בבדיקה הבלוג הזה .

1 היסטוריית חזירים



בואו להבין כיצד תכונות אלה עובדות.

כולנו יודעים שידע בתכנות הוא הכרח לכתיבת קודי MapReduce. אבל מה אם יש לי כלי שיכול לבצע קידוד אם הייתי רק מספק את הפרטים? שם חזיר מציג את כוח השרירים שלו. חזיר משתמש בפלטפורמה הנקראת חזיר לטינית המופשטת את התכנות מהניב Java MapReduce לסימון שהופך את MapReduce לתכנות לרמה גבוהה, בדומה לזו של SQL עבור מערכות RDBMS. הקודים הכתובים ב- MapReduce חזיר לטינית מומר אוטומטית לפונקציות MapReduce שוות ערך. האם זה לא מדהים? עובדה נוספת המפליאה את הדעת היא כי נדרשים רק 10 שורות חזיר להחלפת 200 קווי Java.



10 שורות חזיר = 200 שורות Java

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

בנוסף, אם אתה רוצה לכתוב קוד MapReduce משלך, אתה יכול לעשות זאת בכל אחת מהשפות כמו Perl, Python, Ruby או C. כמה פעולות בסיסיות שנוכל לבצע בכל מערך נתונים באמצעות Pig הן Group, Join, Filter וסדר. . ניתן לבצע פעולות אלה על נתונים מובנים, לא מובנים וגם חצי מובנים. הם מספקים דרך אד-הוק ליצירה וביצוע של עבודות MapReduce על מערכי נתונים גדולים מאוד.

לאחר מכן, בואו נבין את כוורת. זוהי מסגרת אחסון נתונים בקנה מידה פתוח, בקנה מידה קטן, המבוססת על Hadoop לצורך סיכום נתונים, שאילתות וניתוח. Hive מספקת ממשק דמוי SQL עבור Hadoop. אתה יכול להשתמש ב- Hive כדי לקרוא ולכתוב קבצים ב- Hadoop ולהריץ את הדוחות שלך מכלי BI. כמה פונקציונליות אופיינית של Hadoop הן:

תן לי להראות לך הדגמה באמצעות ערכת הנתונים Pig on Clickstream
אנו נשתמש בנתוני Clickstream אלה ונבצע טרנספורמציות, הצטרפות וקיבוצים.

קליקסטרים היא סדרת לחיצות עכבר שבוצעו על ידי משתמש בזמן שהוא נכנס לאינטרנט במיוחד כמנוטר להערכת אינטרסים של אדם למטרות שיווק. משתמשים בו בעיקר על ידי אתרי קמעונאות מקוונים כמו Flipkart ו- Amazon שעוקבים אחר הפעילויות שלך כדי ליצור המלצות. מערך הנתונים של Clickstream בו השתמשנו מכיל את השדות הבאים:

1. סוג השפה הנתמכת על ידי יישום האינטרנט

2. סוג דפדפן

3. סוג חיבור

4. מזהה מדינה

5. חותמת זמן

6. כתובת אתר

7. סטטוס משתמש

8. סוג המשתמש

זה ייראה כך עם השדות המתאימים.

להלן רשימת סוגי הדפדפנים ששימשו אנשים שונים בעת גלישה באתר מסוים. בין הרשימה דפדפנים כמו Internet Explorer, Google Chrome, Lynx וכן הלאה.

סוג חיבור לאינטרנט יכול להיות Lan / Modem / Wifi. ראה את התמונה למטה לרשימה המלאה:

בתמונה הבאה תמצא את רשימת המדינות מהן משך האתר קהל יחד עם תעודות הזהות שלהם.

לאחר שאספנו את כל מערכי הנתונים, עלינו להפעיל את פגז הגראנט של חזיר, שמושק על מנת להריץ את פקודות החזיר.

הדבר הראשון שעלינו לעשות בהשקת מעטפת Grunt הוא לטעון את נתוני Clickstream ליחס של Pig. קשר אינו אלא שולחן. להלן הפקודה בה אנו משתמשים לטעינת קובץ השוכן ב- HDFS על יחסו של חזיר.

אנו יכולים לאמת את סכמת הקשר על ידי הפקודה לתאר click_stream.

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

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

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

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

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

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

אין זה מדע רקטות שמפיקים תובנות מביג דאטה. אלה רק חלק מהתכונות הרבות שהטמתי ועם כלים כמו Hive, Hbase, Oozie, Sqoop ו- Flume יש אוצר של נתונים שעדיין לא נחקר. אז אלה מכם שמתאפקים מללמוד Hadoop, הגיע הזמן לשנות.

יש לך שאלה עבורנו? אנא הזכר אותם בסעיף ההערות ונחזור אליך.

פוסטים קשורים:

ההבדלים בין html ל- xml

4 דרכים להשתמש ב- R וב- Hadoop ביחד

הכל על Cloudera מוסמך מפתח עבור אפאצ'י Hadoop