אנחנו לאחרונה הודיע תמיכה תצורת אגם AWS מדיניות בקרת גישה מדוקדקת ב אמזונה אתנה שאילתות לנתונים המאוחסנים בכל פורמט קובץ נתמך באמצעות פורמטים של טבלה כגון Apache Iceberg, Apache Hudi ו- Apache Hive. AWS Lake Formation מאפשר לך להגדיר ולאכוף מדיניות גישה ברמת מסד נתונים, טבלה ועמודות כדי לבצע שאילתות על טבלאות Iceberg המאוחסנות באמזון S3. Lake Formation מספקת שכבת הרשאות וממשל על נתונים המאוחסנים באמזון S3. יכולת זו מחייבת שתשדרג ל אתנה מנוע גרסה 3.
לארגונים גדולים יש לרוב קווי עסקים (LoBs) הפועלים באוטונומיה בניהול הנתונים העסקיים שלהם. זה הופך את שיתוף הנתונים בין LoBs לבלתי טריוויאלי. ארגונים אלה אימצו מודל מאוחד, כאשר לכל LoB יש את האוטונומיה לקבל החלטות על הנתונים שלהם. הם משתמשים במודל המוציא לאור/צרכן עם שכבת ממשל מרכזית המשמשת לאכיפת בקרות גישה. אם אתה מעוניין ללמוד עוד על ארכיטקטורת רשת נתונים, בקר עצב ארכיטקטורת רשת נתונים באמצעות AWS Lake Formation ו-AWS Glue. עם Athena Engine גרסה 3, לקוחות יכולים להשתמש באותם בקרות עדינות עבור מסגרות נתונים פתוחות כגון Apache Iceberg, Apache Hudi ו- Apache Hive.
בפוסט זה, אנו צוללים עמוק לתוך מקרה שימוש שבו יש לך מודל יצרן/צרכן עם שיתוף נתונים מופעל כדי לתת גישה מוגבלת לטבלת Apache Iceberg שהצרכן יכול לשאול. נדון בסינון עמודות להגבלת שורות מסוימות, סינון להגבלת גישה ברמת העמודה, התפתחות סכימה ומסע בזמן.
סקירת פתרונות
כדי להמחיש את הפונקציונליות של הרשאות עדינות עבור טבלאות Apache Iceberg עם Athena ו-Lake Formation, הגדרנו את הרכיבים הבאים:
- בחשבון המפיק:
- An דבק AWS קטלוג נתונים לרישום סכימה של טבלה בפורמט Apache Iceberg
- Lake Formation כדי לספק גישה עדינה לחשבון הצרכן
- אתנה לאימות נתונים מחשבון המפיק
- בחשבון הצרכן:
- מנהל גישה למשאבי AWS (AWS RAM) ליצירת לחיצת יד בין קטלוג הנתונים של היצרן לצרכן
- Lake Formation כדי לספק גישה עדינה לחשבון הצרכן
- אתנה לאימות נתונים מחשבון המפיק
התרשים הבא ממחיש את הארכיטקטורה.
תנאים מוקדמים
לפני שתתחיל, ודא שיש לך את הדברים הבאים:
הגדרת מפיק נתונים
בחלק זה, אנו מציגים את השלבים להגדרת מפיק הנתונים.
צור דלי S3 לאחסון נתוני הטבלה
אנו יוצרים דלי S3 חדש כדי לשמור את הנתונים עבור הטבלה:
- בקונסולת Amazon S3, צור דלי S3 עם שם ייחודי (עבור פוסט זה אנו משתמשים
iceberg-athena-lakeformation-blog
). - צור את תיקיית המפיק בתוך הדלי לשימוש עבור הטבלה.
רשום את נתיב S3 המאחסן את הטבלה באמצעות Lake Formation
אנו רושמים את הנתיב המלא S3 ב-Lake Formation:
- נווט אל קונסולת Lake Formation.
- אם אתה מתחבר בפעם הראשונה, תתבקש ליצור משתמש אדמין.
- בחלונית הניווט, מתחת הירשמו ובלעו, בחר מיקומי אגם נתונים.
- לבחור רשום מיקום, וספק את נתיב הדלי S3 שיצרת קודם לכן.
- לבחור
AWSServiceRoleForLakeFormationDataAccess
ל תפקיד IAM.
למידע נוסף על תפקידים, עיין ב דרישות לתפקידים המשמשים לרישום מיקומים.
אם הפעלת הצפנה של דלי S3 שלך, עליך לספק הרשאות ל-Lake Formation לבצע פעולות הצפנה ופענוח. מתייחס רישום מיקום מוצפן של Amazon S3 להדרכה.
- לבחור רשום מיקום.
צור שולחן אייסברג באמצעות Athena
עכשיו בואו ניצור את הטבלה באמצעות Athena מגובה בפורמט Apache Iceberg:
- במסוף אתנה בחר עורך שאילתות בחלונית הניווט.
- אם אתה משתמש ב- Athena בפעם הראשונה, תחת הגדרות, בחר ניהול והזן את מיקום הדלי S3 שיצרת קודם לכן (
iceberg-athena-lakeformation-blog/producer
). - לבחור שמור.
- בעורך השאילתות, הזן את השאילתה הבאה (החלף את המיקום בדלי S3 שרשמתם ב-Lake Formation). שים לב שאנו משתמשים במסד הנתונים המוגדר כברירת מחדל, אך אתה יכול להשתמש בכל מסד נתונים אחר.
- לבחור הפעלה.
שתף את הטבלה עם חשבון הצרכן
כדי להמחיש את הפונקציונליות, אנו מיישמים את התרחישים הבאים:
- ספק גישה לעמודות שנבחרו
- ספק גישה לשורות נבחרות על סמך מסנן
בצע את הצעדים הבאים:
- במסוף Lake Formation, בחלונית הניווט מתחת קטלוג נתונים, בחר מסנני נתונים.
- לבחור צור מסנן חדש.
- בעד שם מסנן נתונים, להיכנס
blog_data_filter
. - בעד מסד נתונים יעד, להיכנס
lf-demo-db
. - בעד טבלת יעד, להיכנס
consumer_iceberg
. - בעד גישה ברמת העמודה, בחר כלול עמודות.
- בחר את העמודות לשיתוף עם הצרכן:
country, address, contactfirstname, city, customerid,
וcustomername
. - בעד ביטוי מסנן שורה, היכנס למסנן
country='France'
. - לבחור צור מסנן.
עכשיו בואו נעניק גישה לחשבון הצרכן ב- consumer_iceberg
השולחן.
- בחלונית הניווט בחר לוחות.
- בחר את הטבלה consumer_iceberg, ובחר להעניק על פעולות תפריט.
- בחר חשבונות חיצוניים.
- הזן את מזהה החשבון החיצוני.
- בחר משאבי קטלוג נתונים בעלי שם.
- בחר את מסד הנתונים והטבלה שלך.
- בעד מסנני נתונים, בחר את מסנן הנתונים שיצרת.
- בעד הרשאות סינון נתונים ו הרשאות הניתנות, בחר בחר.
- לבחור להעניק.
הגדרת צרכן נתונים
כדי להגדיר את צרכן הנתונים, אנו מקבלים את שיתוף המשאבים ויוצרים טבלה באמצעות AWS RAM ו- Lake Formation. השלם את השלבים הבאים:
- היכנס לחשבון הצרכן ונווט למסוף AWS RAM.
- תַחַת משותף איתי בחלונית הניווט, בחר מניות משאבים.
- בחר את חלוקת המשאבים שלך.
- לבחור קבל נתח משאבים.
- שימו לב לשם שיתוף המשאבים לשימוש בשלבים הבאים.
- נווט אל קונסולת Lake Formation.
- אם אתה מתחבר בפעם הראשונה, תתבקש ליצור משתמש אדמין.
- לבחור מאגרי מידע בחלונית הניווט, ולאחר מכן בחר את מסד הנתונים שלך.
- על פעולות בתפריט, בחר צור קישור למשאבים.
- בעד שם קישור המשאב, הזן את השם של קישור המשאב שלך (לדוגמה,
consumer_iceberg
). - בחר את מסד הנתונים והטבלה המשותפת שלך.
- לבחור צור.
אמת את הפתרון
כעת אנו יכולים להפעיל פעולות שונות בטבלאות כדי לאמת את בקרות הגישה הדקיקות.
פעולת הכנס
בואו נכניס נתונים לתוך consumer_iceberg
טבלה בחשבון היצרן, ואמת שסינון הנתונים פועל כצפוי בחשבון הצרכן.
- היכנס לחשבון המפיק.
- במסוף אתנה בחר עורך שאילתות בחלונית הניווט.
- השתמש ב-SQL הבא כדי לכתוב ולהכניס נתונים לטבלת Iceberg. השתמש בעורך השאילתות כדי להפעיל שאילתה אחת בכל פעם. אתה יכול להדגיש/לבחור שאילתה אחת בכל פעם וללחוץ על "הפעלה"/"הפעל שוב:
- השתמש ב-SQL הבא כדי לקרוא ולבחור נתונים בטבלת Iceberg:
- היכנס לחשבון הצרכן.
- בעורך השאילתות של Athena, הפעל את שאילתת ה-SELECT הבאה בטבלה המשותפת:
בהתבסס על המסננים, לצרכן יש חשיפה לקבוצת משנה של עמודות ושורות שבהן המדינה היא צרפת.
עדכון/מחיקה של פעולות
כעת נעדכן אחת מהשורות ונמחק אחת ממערך הנתונים המשותף עם הצרכן.
- אמת את מערך הנתונים המעודכן והנמחק:
- היכנס לחשבון הצרכן.
- בעורך השאילתות של Athena, הפעל את שאילתת ה-SELECT הבאה בטבלה המשותפת:
אנו יכולים לראות שרק שורה אחת זמינה והעיר מעודכנת לפריז.
התפתחות סכימה: הוסף עמודה חדשה
בואו נעדכן אחת מהשורות ונמחק אחת ממערך הנתונים המשותף עם הצרכן.
- היכנס לחשבון המפיק.
- הוסף עמודה חדשה בשם
geo_loc
בשולחן אייסברג. השתמש בעורך השאילתות כדי להפעיל שאילתה אחת בכל פעם. אתה יכול להדגיש/לבחור שאילתה אחת בכל פעם וללחוץ על "הפעלה"/"הפעל שוב:
כדי לספק נראות לחדשים שנוספו geo_loc
בעמודה, עלינו לעדכן את מסנן הנתונים של Lake Formation.
- בקונסולת Lake Lake, בחר מסנני נתונים בחלונית הניווט.
- בחר את מסנן הנתונים שלך ובחר ערוך.
- תַחַת גישה ברמת העמודה, הוסף את העמודה החדשה (
geo_loc
). - לבחור שמור.
- היכנס לחשבון הצרכן.
- בעורך השאילתות של Athena, הפעל את הפעולות הבאות
SELECT
שאילתה בטבלה המשותפת:
העמודה החדשה geo_loc
גלוי ושורה נוספת.
התפתחות סכימה: מחק עמודה
בואו נעדכן אחת מהשורות ונמחק אחת ממערך הנתונים המשותף עם הצרכן.
- היכנס לחשבון המפיק.
- שנה את הטבלה כדי להוריד את עמודת הכתובת מטבלת Iceberg. השתמש בעורך השאילתות כדי להפעיל שאילתה אחת בכל פעם. אתה יכול להדגיש/לבחור שאילתה אחת בכל פעם וללחוץ על "הפעלה"/"הפעל שוב:
אנו יכולים לראות שכתובת העמודה אינה קיימת בטבלה.
- היכנס לחשבון הצרכן.
- בעורך השאילתות של Athena, הפעל את שאילתת ה-SELECT הבאה בטבלה המשותפת:
כתובת העמודה אינה קיימת בטבלה.
מסע בזמן
כעת שינינו את טבלת אייסברג מספר פעמים. שולחן אייסברג עוקב אחר התמונות. השלם את השלבים הבאים כדי לחקור את פונקציונליות המסע בזמן:
- היכנס לחשבון המפיק.
- שאילתה בטבלת המערכת:
אנו יכולים לראות שיצרנו מספר תמונות מצב.
- שים לב לאחד מה
committed_at
ערכים לשימוש בשלבים הבאים (לדוגמה זו,2023-01-29 21:35:02.176 UTC
). - השתמש במסע בזמן כדי למצוא את תמונת המצב של הטבלה. השתמש בעורך השאילתות כדי להפעיל שאילתה אחת בכל פעם. אתה יכול להדגיש/לבחור שאילתה אחת בכל פעם וללחוץ על "הפעלה"/"הפעל שוב:
לנקות את
בצע את השלבים הבאים כדי להימנע מחיובים עתידיים:
- בקונסולת Amazon S3, מחק את דלי אחסון השולחן (עבור פוסט זה, iceberg-athena-lakeformation-blog).
- בחשבון המפיק במסוף Athena, הפעל את הפקודות הבאות כדי למחוק את הטבלאות שיצרת:
- בחשבון המפיק בקונסולת Lake Formation, בטל הרשאות לחשבון הצרכן.
- מחק את דלי S3 המשמש למיקום תוצאת השאילתה Athena מחשבון הצרכן.
סיכום
עם התמיכה במדיניות צולבת חשבונות, מדיניות בקרת גישה דקיקה עבור פורמטים כגון Iceberg, יש לך את הגמישות לעבוד עם כל פורמט שנתמך על ידי Athena. היכולת לבצע פעולות CRUD מול הנתונים באגם הנתונים S3 שלך בשילוב עם בקרות גישה עדינות של Lake Formation עבור כל הטבלאות והפורמטים הנתמכים על ידי Athena מספקת הזדמנויות לחדש ולפשט את אסטרטגיית הנתונים שלך. נשמח לשמוע את המשוב שלך!
על המחברים
Kishore Dhamodaran הוא אדריכל פתרונות בכיר ב-AWS. Kishore עוזר ללקוחות אסטרטגיים באסטרטגיית הארגון שלהם בענן ובמסע ההגירה, תוך מינוף שנות הניסיון שלו בתעשייה ובענן.
ג'ק יה הוא מהנדס תוכנה בצוות Athena Data Lake and Storage ב-AWS. הוא איש קרחון אפאצ'י וחבר PMC.
כריס אולסון הוא מהנדס פיתוח תוכנה ב-AWS.
שיאוקסואן לי הוא מהנדס פיתוח תוכנה ב-AWS.
ראול סונוויין הוא אדריכל פתרונות ניתוח ראשי ב-AWS עם AI/ML ו-Analytics כתחום ההתמחות שלו.
- הפצת תוכן ויחסי ציבור מופעל על ידי SEO. קבל הגברה היום.
- Platoblockchain. Web3 Metaverse Intelligence. ידע מוגבר. גישה כאן.
- מקור: https://aws.amazon.com/blogs/big-data/interact-with-apache-iceberg-tables-using-amazon-athena-and-cross-account-fine-grained-permissions-using-aws-lake-formation/
- :הוא
- $ למעלה
- 1
- 10
- 100
- 7
- a
- יכולת
- אודות
- לְקַבֵּל
- גישה
- חֶשְׁבּוֹן
- לרוחב
- הוסיף
- נוסף
- מידע נוסף
- כתובת
- מנהל
- מאומץ
- נגד
- AI / ML
- תעשיות
- מאפשר
- אמזון בעברית
- אמזונה אתנה
- ניתוח
- ו
- אַפָּשׁ
- ארכיטקטורה
- ARE
- AREA
- אמנות
- AS
- At
- אישור
- זמין
- לְהִמָנַע
- AWS
- תצורת אגם AWS
- מגובה
- מבוסס
- בֵּין
- עסקים
- עסקים
- by
- נקרא
- CAN
- קטלוג
- מְרוּכָּז
- מסוים
- שינוי
- חיובים
- לבחור
- עִיר
- קליק
- ענן
- טור
- עמודות
- COM
- משולב
- להשלים
- רכיבים
- קונסול
- צרכן
- לִשְׁלוֹט
- בקרות
- מדינה
- לִיצוֹר
- נוצר
- יוצרים
- יצירה
- לַחֲצוֹת
- לקוחות
- נתונים
- אגם דאטה
- שיתוף מידע
- אסטרטגיית נתונים
- מסד נתונים
- החלטות
- עמוק
- צלילה לעומק
- בְּרִירַת מֶחדָל
- צעצועי התפתחות
- אחר
- לדון
- מטה
- ירידה
- כל אחד
- מוקדם יותר
- עורך
- אמייל
- EMEA
- מופעל
- מוצפן
- הצף
- מנוע
- מהנדס
- זן
- מִפְעָל
- Ether (ETH)
- אבולוציה
- דוגמה
- צפוי
- ניסיון
- לחקור
- חיצוני
- שלח
- לסנן
- סינון
- מסננים
- ראשון
- firsttime
- גמישות
- הבא
- בעד
- פוּרמָט
- התהוות
- מסגרות
- צרפת
- החל מ-
- מלא
- פונקציונלי
- עתיד
- נוצר
- לקבל
- לתת
- ממשל
- להעניק
- הדרכה
- יש
- יש
- לִשְׁמוֹעַ
- עוזר
- כוורת
- HTML
- http
- HTTPS
- ID
- ליישם
- in
- בע"מ
- תעשייה
- מידע
- לחדש
- אינטראקציה
- מעוניין
- IT
- מסע
- jpg
- אגם
- מדינה
- שכבה
- למידה
- רמה
- מינוף
- להגביל
- קווים
- קשר
- מיקום
- אהבה
- ליון
- לעשות
- עושה
- ניהול
- חבר
- תפריט
- הֲגִירָה
- מודל
- יותר
- מספר
- שם
- נווט
- ניווט
- צורך
- חדש
- הבא
- ניו יורק
- להתבונן
- of
- on
- ONE
- לפתוח
- נתונים פתוחים
- להפעיל
- תפעול
- הזדמנויות
- ארגונים
- אחר
- זגוגית
- פריז
- נתיב
- לבצע
- הרשאות
- אפלטון
- מודיעין אפלטון
- אפלטון נתונים
- מדיניות
- הודעה
- להציג
- מנהל
- יַצרָן
- לספק
- מספק
- RAM
- חומר עיוני
- לאחרונה
- משתקף
- הירשם
- רשום
- להחליף
- דורש
- משאב
- לְהַגבִּיל
- מוגבל
- תוצאה
- תפקיד
- תפקידים
- שׁוּרָה
- הפעלה
- אותו
- שמור
- תרחישים
- סעיף
- נבחר
- לחצני מצוקה לפנסיונרים
- סט
- שיתוף
- משותף
- שיתוף
- לפשט
- תמונת בזק
- תוכנה
- פיתוח תוכנה
- מהנדס תוכנה
- פתרונות
- התמחות
- SQL
- החל
- צעדים
- אחסון
- חנות
- מאוחסן
- אסטרטגי
- אִסטרָטֶגִיָה
- מחרוזת
- כזה
- תמיכה
- נתמך
- מערכת
- שולחן
- נבחרת
- זֶה
- אל האני
- שֶׁלָהֶם
- אלה
- זמן
- זמן הנסיעה
- פִּי
- חותם
- ל
- לעקוב
- נסיעות
- תחת
- ייחודי
- עדכון
- מְעוּדכָּן
- שדרוג
- ארה"ב
- להשתמש
- משתמש
- UTC
- לְאַמֵת
- ערכים
- לאמת
- גרסה
- ראות
- נראה
- לְבַקֵר
- עם
- תיק עבודות
- עובד
- לכתוב
- שנים
- זפירנט