האדום של אמזון, מחסן נתונים בענן בשימוש נרחב, התפתח באופן משמעותי כדי לעמוד בדרישות הביצועים של עומסי העבודה התובעניים ביותר. פוסט זה מכסה תכונה חדשה אחת כזו - מפתח המיון של פריסת הנתונים הרב-ממדית.
Amazon Redshift משפרת כעת את ביצועי השאילתה שלך על ידי תמיכה במפתחות מיון בפריסת נתונים רב-ממדיים, שהוא סוג חדש של מפתח מיון הממיין את נתוני הטבלה לפי פרדיקטים מסננים במקום עמודות פיזיות של הטבלה. מפתחות מיון של פריסת נתונים רב-ממדית ישפרו משמעותית את הביצועים של סריקות טבלאות, במיוחד כאשר עומס העבודה של השאילתה שלך מכיל מסנני סריקה חוזרים ונשנים.
Amazon Redshift כבר מספקת את היכולת של ייעול שולחן אוטומטי (ATO), אשר מייעלת אוטומטית את עיצוב הטבלאות על ידי החלת מפתחות מיון והפצה ללא צורך בהתערבות מנהל. בפוסט זה, אנו מציגים מפתחות מיון פריסת נתונים רב מימדיים כיכולת נוספת המוצעת על ידי ATO ומחוזקת על ידי אלגוריתם יועץ מפתחות המיון של Amazon Redshift.
מפתחות מיון פריסת נתונים רב מימדיים
כאשר אתה מגדיר טבלה עם מפתח המיון האוטומטי, Amazon Redshift ATO תנתח את היסטוריית השאילתות שלך ותבחר אוטומטית מפתח מיון של עמודה אחת או מפתח מיון פריסת נתונים רב-ממדית עבור הטבלה שלך, על סמך האפשרות הטובה ביותר לעומס העבודה שלך. כאשר נבחרת פריסת נתונים רב-ממדית, אמזון Redshift תבנה פונקציית מיון רב-ממדית המאתרת יחד שורות שהגישה אליהן בדרך כלל באמצעות אותן שאילתות, ופונקציית המיון משמשת לאחר מכן במהלך הרצות שאילתות כדי לדלג על בלוקי נתונים ואפילו לדלג על סריקת הפרדיקט הבודד עמודות.
שקול את שאילתת המשתמש הבאה, שהיא דפוס שאילתה דומיננטי בעומס העבודה של המשתמש:
Amazon Redshift מאחסנת נתונים עבור כל עמודה בבלוקים של 1 מגה-דיסק ומאחסנת את ערכי המינימום והמקסימום בכל בלוק כחלק מהמטא נתונים של הטבלה. אם שאילתה משתמשת ב-a פרדיקט מוגבל בטווח, Amazon Redshift יכולה להשתמש בערכי המינימום והמקסימום כדי לדלג במהירות על מספר גדול של בלוקים במהלך סריקות טבלה. עם זאת, לא ניתן להשתמש במסנן של שאילתה זו בעמודת תת-האזור כדי לקבוע על אילו בלוקים לדלג על סמך ערכי מינימום ומקסימום, וכתוצאה מכך, Amazon Redshift סורקת את כל השורות מטבלת הכותרות:
כאשר השאילתה של המשתמש בוצעה עם titles
באמצעות מקש מיון בעמודה אחת subregion
, התוצאה של השאילתה הקודמת היא כדלקמן:
זה מראה שסריקת הטבלה קראה 2,164,081,640 שורות.
כדי לשפר סריקות ב- titles
טבלה, אמזון Redshift עשויה להחליט באופן אוטומטי להשתמש במפתח מיון של פריסת נתונים רב-ממדית. כל השורות שעומדות ב- lower(subregion) like '%United States%'
הפרדיקט ימוקם במשותף לאזור ייעודי בטבלה, ולכן אמזון Redshift תסרוק רק בלוקי נתונים העונים על הפרדיקט.
כאשר השאילתה של המשתמש מופעלת עם titles
באמצעות מפתח מיון פריסת נתונים רב מימדית הכולל lower(subregion) like '%United States%'
כפרדיקט, התוצאה של sys_query_detail
השאילתה היא כדלקמן:
זה מראה שסריקת הטבלה קראה 152,324,046 שורות, שהם רק 7% מהמקור, והיא השתמשה במפתח המיון של פריסת הנתונים הרב-ממדית.
שימו לב שדוגמה זו משתמשת בשאילתה יחידה כדי להציג את תכונת פריסת הנתונים הרב-ממדית, אך Amazon Redshift תשקול את כל השאילתות הפועלות מול הטבלה ויכולה ליצור מספר אזורים כדי לספק את הפרדיקטים הנפוצים ביותר.
ניקח דוגמה נוספת, עם פרדיקטים מורכבים יותר ושאילתות מרובות הפעם.
תאר לעצמך שיש לך שולחן items (cost int, available int, demand int)
עם ארבע שורות כפי שמוצג בדוגמה הבאה.
#תְעוּדַת זֶהוּת | עלות | זמין | דרישה |
1 | 4 | 3 | 3 |
2 | 2 | 23 | 6 |
3 | 5 | 4 | 5 |
4 | 1 | 1 | 2 |
עומס העבודה הדומיננטי שלך מורכב משתי שאילתות:
- דפוס שאילתות של 70%:
- דפוס שאילתות של 20%:
עם טכניקות מיון מסורתיות, ייתכן שתבחר למיין את הטבלה על פני עמודת העלות, כך שההערכה של cost > 3
ירוויח מהמיון. אז, טבלת הפריטים לאחר מיון באמצעות יחיד cost
העמודה תיראה כמו הבאה.
#תְעוּדַת זֶהוּת | עלות | זמין | דרישה |
אזור מס' 1, עם עלות <= 3 | |||
אזור מס' 2, עם עלות > 3 |
#תְעוּדַת זֶהוּת | עלות | זמין | דרישה |
4 | 1 | 1 | 2 |
2 | 2 | 23 | 6 |
1 | 4 | 3 | 3 |
3 | 5 | 4 | 5 |
על ידי שימוש במיון מסורתי זה, נוכל לא לכלול מיד את שתי השורות העליונות (כחולות) עם מזהה 4 ומזהה 2, מכיוון שהן אינן מספקות cost > 3
.
מצד שני, עם מפתח מיון פריסת נתונים רב-ממדית, הטבלה תמוין על סמך שילוב של שני הפרדיקטים הנפוצים בעומס העבודה של המשתמש, שהם cost > 3
ו available < demand
. כתוצאה מכך, שורות הטבלה ממוינות לארבעה אזורים.
#תְעוּדַת זֶהוּת | עלות | זמין | דרישה |
אזור מס' 1, עם עלות <= 3 וזמין < דרישה | |||
אזור מס' 2, עם עלות <= 3 וזמין >= דרישה | |||
אזור מס' 3, עם עלות > 3 וזמין < דרישה | |||
אזור #4, עם עלות > 3 וזמין >= דרישה |
#תְעוּדַת זֶהוּת | עלות | זמין | דרישה |
4 | 1 | 1 | 2 |
2 | 2 | 23 | 6 |
3 | 5 | 4 | 5 |
1 | 4 | 3 | 3 |
מושג זה עוצמתי עוד יותר כאשר הוא מיושם על בלוקים שלמים במקום שורות בודדות, כאשר הוא מיושם על פרדיקטים מורכבים המשתמשים באופרטורים שאינם מתאימים לטכניקות מיון מסורתיות (כגון like
), וכאשר מיושם על יותר משני פרדיקטים.
טבלאות מערכת
טבלאות המערכת הבאות של Amazon Redshift יראו למשתמשים אם נעשה שימוש בפריסות נתונים רב-ממדיות בטבלאות ובשאילתות שלהם:
- כדי לקבוע אם טבלה מסוימת משתמשת במפתח מיון של פריסת נתונים רב-ממדית, תוכל לבדוק אם
sortkey1
in svv_table_info שווה לAUTO(SORTKEY(padb_internal_mddl_key_col))
. - כדי לקבוע אם שאילתה מסוימת משתמשת בפריסת נתונים רב-ממדית כדי להאיץ את סריקות הטבלה, תוכל לבדוק
step_attribute
ב sys_query_detail נוף. הערך יהיה שווה לmulti-dimensional
אם נעשה שימוש במפתח המיון של פריסת הנתונים הרב-ממדית של הטבלה במהלך הסריקה.
מדדי ביצועים
ביצענו בדיקות בנצ'מרק פנימיות עבור עומסי עבודה מרובים עם מסנני סריקה חוזרים ונוכחים שהכנסת מפתחות מיון פריסת נתונים רב מימדיים הניבה את התוצאות הבאות:
- צמצום זמן ריצה כולל של 74% בהשוואה ללא מפתח מיון.
- צמצום זמן ריצה כולל של 40% בהשוואה למפתח המיון הטוב ביותר בעמודה אחת בכל טבלה.
- הפחתה של 80% בסך השורות הנקראות מטבלאות בהשוואה ללא מפתח מיון.
- הפחתה של 47% בסך השורות הנקראות מטבלאות בהשוואה למפתח המיון הטוב ביותר בעמודה אחת בכל טבלה.
השוואת תכונות
עם ההקדמה של מפתחות מיון פריסת נתונים רב-ממדית, כעת ניתן למיין את הטבלאות שלך לפי ביטויים המבוססים על פרדיקטי המסנן הנפוצים בעומס העבודה שלך. הטבלה הבאה מספקת השוואת תכונות עבור אמזון Redshift מול שני מתחרים.
מאפיין | האדום של אמזון | המתחרה א | מתחרה ב |
תמיכה במיון על עמודות | יש | יש | יש |
תמיכה במיון לפי ביטוי | יש | יש | לא |
בחירת עמודות אוטומטית למיון | יש | לא | יש |
בחירת ביטויים אוטומטית למיון | יש | לא | לא |
בחירה אוטומטית בין מיון עמודות או מיון ביטויים | יש | לא | לא |
שימוש אוטומטי במאפייני מיון לביטויים במהלך סריקות | יש | לא | לא |
שיקולים
זכור את הדברים הבאים בעת שימוש בפריסת נתונים רב-ממדית:
- פריסת נתונים רב מימדית מופעלת כאשר אתה מגדיר את הטבלה שלך כ-SORTKEY AUTO.
- אמזון Redshift Advisor יבחר אוטומטית במפתח מיון בעמודה אחת או בפריסת נתונים רב-ממדית עבור הטבלה על ידי ניתוח עומס העבודה ההיסטורי שלך.
- Amazon Redshift ATO מתאים את תוצאות מיון פריסת הנתונים הרב-ממדית בהתבסס על האופן שבו שאילתות מתמשכות מתקשרות עם עומס העבודה.
- Amazon Redshift ATO שומרת על מפתחות מיון פריסת נתונים רב-ממדיים באותו אופן כפי שהוא עושה כעת עבור מפתחות מיון קיימים. מתייחס עבודה עם אופטימיזציה אוטומטית של טבלאות לפרטים נוספים על ATO.
- מפתחות מיון של פריסת נתונים רב-ממדית יעבדו גם עם אשכולות מסודרים וגם עם קבוצות עבודה ללא שרת.
- מפתחות מיון של פריסת נתונים רב-ממדית יעבדו עם הנתונים הקיימים שלך כל עוד ה-AUTO SORTKEY מופעל בטבלה שלך וזוהה עומס עבודה עם מסנני סריקה חוזרים. הטבלה תאורגן מחדש על סמך התוצאות של פונקציית מיון רב-ממדית.
- כדי להשבית מפתחות מיון של פריסת נתונים רב-ממדית עבור טבלה, השתמש בטבלה לשנות:
ALTER TABLE table_name ALTER SORTKEY NONE
. זה משבית את תכונת מפתח המיון האוטומטי בטבלה. - מפתחות מיון של פריסת נתונים רב-ממדית נשמרים בעת שחזור או העברה של האשכול המוקצה שלך לאשכול ללא שרת או להיפך.
סיכום
בפוסט זה, הראינו שמפתחות מיון של פריסת נתונים רב-ממדית יכולים לשפר משמעותית את ביצועי זמן הריצה של שאילתות עבור עומסי עבודה שבהם לשאילתות דומיננטיות יש מסנני סריקה חוזרים.
כדי ליצור אשכול תצוגה מקדימה ממסוף אמזון Redshift, נווט אל אשכולות דף ובחר צור אשכול תצוגה מקדימה. אתה יכול ליצור אשכול באזורים מזרח ארה"ב (אוהיו), מזרח ארה"ב (נ' וירג'יניה), מערב ארה"ב (אורגון), אסיה פסיפיק (טוקיו), אירופה (אירלנד) ואירופה (שטוקהולם) ולבדוק את עומסי העבודה שלך.
נשמח לשמוע את המשוב שלך על תכונה חדשה זו ומצפים להערותיך על פוסט זה.
על המחברים
Milind Oke הוא ארכיטקט פתרונות מומחה במחסן נתונים הממוקם מניו יורק. הוא בונה פתרונות מחסני נתונים כבר למעלה מ-15 שנה ומתמחה בהיסט האדום של אמזון.
ג'יאלין דינג הוא מדען יישומי בקבוצת Learned Systems, המתמחה ביישום טכניקות למידת מכונה ואופטימיזציה לשיפור הביצועים של מערכות נתונים כגון Amazon Redshift.
יאנז'ו ג'י הוא מנהל מוצר בצוות אמזון Redshift. יש לה ניסיון בחזון מוצר ואסטרטגיה במוצרי ופלטפורמות נתונים מובילים בתעשייה. יש לה מיומנות יוצאת דופן בבניית מוצרי תוכנה משמעותיים תוך שימוש בפיתוח אתרים, עיצוב מערכות, מסדי נתונים וטכניקות תכנות מבוזרות. בחייה האישיים, יאנז'ו אוהבת לצייר, לצלם ולשחק טניס.
- הפצת תוכן ויחסי ציבור מופעל על ידי SEO. קבל הגברה היום.
- PlatoData.Network Vertical Generative Ai. העצים את עצמך. גישה כאן.
- PlatoAiStream. Web3 Intelligence. הידע מוגבר. גישה כאן.
- PlatoESG. פחמן, קלינטק, אנרגיה, סביבה, שמש, ניהול פסולת. גישה כאן.
- PlatoHealth. מודיעין ביוטכנולוגיה וניסויים קליניים. גישה כאן.
- מקור: https://aws.amazon.com/blogs/big-data/improve-performance-of-workloads-containing-repetitive-scan-filters-with-multidimensional-data-layout-sort-keys-in-amazon-redshift/
- :יש ל
- :הוא
- :לֹא
- :איפה
- 1
- 100
- שנים 15
- 15%
- 152
- 7
- 8
- 9
- a
- להאיץ
- נצפה
- נוסף
- יועץ
- לאחר
- נגד
- אַלגוֹרִיתְם
- תעשיות
- כְּבָר
- אמזון בעברית
- אמזון שירותי אינטרנט
- an
- לנתח
- ניתוח
- ו
- אחר
- יישומית
- מריחה
- ARE
- AS
- אסיה
- אסיה פסיפיק
- המכונית
- מכני עם סלילה אוטומטית
- באופן אוטומטי
- זמין
- AWS
- מבוסס
- BE
- כי
- היה
- בנצ 'מרק
- תועלת
- הטוב ביותר
- מוטב
- בֵּין
- לחסום
- אבני
- כָּחוֹל
- שניהם
- בִּניָן
- אבל
- by
- CAN
- יכולת
- לבדוק
- בחרו
- ענן
- אשכול
- טור
- עמודות
- שילוב
- הערות
- בדרך כלל
- לעומת
- השוואה
- מתחרים
- מורכב
- מושג
- לשקול
- מורכב
- קונסול
- לבנות
- מכיל
- עלות
- מכסה
- לִיצוֹר
- כיום
- נתונים
- מחסן נתונים
- מסד נתונים
- להחליט
- מוקדש
- לְהַגדִיר
- דרישה
- תובעני
- עיצוב
- פרטים
- זוהה
- לקבוע
- צעצועי התפתחות
- מופץ
- הפצה
- עושה
- דומיננטי
- לא
- בְּמַהֲלָך
- כל אחד
- מזרח
- או
- מופעל
- שלם
- שווה
- במיוחד
- Ether (ETH)
- אירופה
- הערכה
- אֲפִילוּ
- התפתח
- דוגמה
- קיימים
- ניסיון
- ביטויים
- מאפיין
- מָשׁוֹב
- לסנן
- מסננים
- הבא
- כדלקמן
- בעד
- קדימה
- ארבע
- החל מ-
- פונקציה
- קְבוּצָה
- יד
- יש
- יש
- he
- לִשְׁמוֹעַ
- לה
- היסטורי
- היסטוריה
- אולם
- HTML
- HTTPS
- ID
- if
- מיד
- לשפר
- משפר
- in
- כולל
- בנפרד
- מובילים בתעשייה
- במקום
- אינטראקציה
- פנימי
- התערבות
- אל תוך
- מבוא
- החדרה
- מבוא
- אירלנד
- IT
- פריטים
- מפתח
- מפתחות
- גָדוֹל
- מערך
- למד
- למידה
- החיים
- כמו
- אוהב
- ארוך
- נראה
- נראה כמו
- אהבה
- מכונה
- למידת מכונה
- שומר
- מנהל
- דרך
- מקסימום
- לִפְגוֹשׁ
- מידע נוסף
- יכול
- נודד
- אכפת לי
- מינימום
- יותר
- רוב
- מספר
- נווט
- צורך
- חדש
- תכונה חדשה
- ניו יורק
- לא
- עַכשָׁיו
- מספרים
- מתרחש
- of
- כבוי
- מוצע
- אוהיו
- on
- ONE
- מתמשך
- רק
- מפעילי
- אופטימיזציה
- מייעל
- אפשרות
- or
- להזמין
- אורגון
- מְקוֹרִי
- אחר
- הַחוּצָה
- בולט
- יותר
- פסיפיק
- ציור
- חלק
- מסוים
- תבנית
- ביצועים
- ביצעתי
- אישי
- צילום
- גופני
- פלטפורמות
- אפלטון
- מודיעין אפלטון
- אפלטון נתונים
- משחק
- הודעה
- חזק
- השתמר
- תצוגה מקדימה
- מיוצר
- המוצר
- מנהל מוצר
- מוצרים
- תכנות
- נכסים
- מספק
- שאילתות
- מהר
- חומר עיוני
- הפחתה
- להתייחס
- באזור
- אזורים
- חוזר על עצמו
- דרישות
- שחזור
- תוצאה
- תוצאות
- הפעלה
- ריצה
- פועל
- אותו
- סריקה
- סריקה
- סריקות
- מַדְעָן
- עונה
- לִרְאוֹת
- בחר
- נבחר
- מבחר
- ללא שרת
- שירותים
- סט
- היא
- לְהַצִיג
- ראווה
- הראה
- הראה
- הופעות
- באופן משמעותי
- יחיד
- מְיוּמָנוּת
- So
- תוכנה
- פתרונות
- מומחה
- מתמחה
- מתמחה
- חנויות
- אִסטרָטֶגִיָה
- כתוצאה מכך
- ניכר
- כזה
- מַתְאִים
- מסייע
- מערכת
- מערכות
- שולחן
- לקחת
- נבחרת
- טכניקות
- טֶנִיס
- מבחן
- בדיקות
- מֵאֲשֶׁר
- זֶה
- השמיים
- שֶׁלָהֶם
- לכן
- הֵם
- זֶה
- זמן
- כותרות
- ל
- טוקיו
- חלק עליון
- סה"כ
- מסורתי
- שתיים
- סוג
- בדרך כלל
- us
- להשתמש
- מְשׁוּמָשׁ
- משתמש
- משתמשים
- שימושים
- באמצעות
- ערך
- ערכים
- סְגָן
- לצפיה
- וירג'יניה
- חזון
- מחסן
- היה
- דֶרֶך..
- we
- אינטרנט
- בניית אתרים
- שירותי אינטרנט
- מערב
- מתי
- אם
- אשר
- באופן נרחב
- יצטרך
- עם
- לְלֹא
- תיק עבודות
- היה
- שנים
- york
- אתה
- זפירנט