בדף הזה יש סקירה כללית על מנוע מבוסס-עמודות של Spanner ומוסבר איך להשתמש בו.
בדרך כלל, מסדי נתונים תפעוליים מחלצים, משנים וטוענים (ETL) נתונים למערכת OLAP לצורך ניתוח. המערכת הזו היא לרוב חלק ממחסן נתונים. עם Data Boost ל-Spanner, Spanner כבר מפריד בין מחשוב אנליטי, מה שמבטיח יציבות טרנזקציונלית.
מנוע מבוסס-עמודות הוא טכניקת אחסון שמערכות ניתוח נתונים משתמשות בה כדי להאיץ סריקות בהשוואה לסריקות מבוססות-אצווה. מנוע העמודות של Spanner מאפשר לכם להריץ ניתוחים עם שיפור משמעותי בביצועים על הנתונים התפעוליים העדכניים ביותר. מנוע מבוסס-עמודות של Spanner משפר את הביצועים של הסריקה עד פי 200, ומבטל את הצורך ב-ETL תוך שמירה על מודל עקביות חזק.
בפורמט Ressi של Spanner נעשה שימוש בפריסה של עמודות לפי מאפייני חלוקה (PAX) לסריקות יעילות בתוך בלוק נתונים. עם זאת, בפורמט הזה כל העמודות של שורה מסוימת ממוקמות בבלוק נתון, כדי לאפשר חיפושים מהירים של שורה אחת. בניגוד ל-Ressi, מנוע העמודות של Spanner מקדיש רצפים של בלוקים לעמודה אחת. הגישה הזו יעילה יותר לסריקות רציפות, כי Spanner צריך לקרוא רק את העמודות שהשאילתה מפנה אליהן.
מערכת Spanner יוצרת את הייצוג העמודתי ברקע (כחלק מהדחיסות), וממזגת אוטומטית את הייצוג עם העדכונים האחרונים בזמן השאילתה כדי לספק מודל עקביות חזק. שאילתות שלא יפיקו תועלת מאחסון בעמודות יכולות להמשיך להשתמש ב-PAX.
עומסי עבודה שיכולים להפיק תועלת משימוש במנוע עמודות כוללים את הדוגמאות הבאות:
- דוחות תפעוליים מחלצים בינה עסקית (BI) עדכנית מהנתונים התפעוליים האחרונים.
- הנתונים שמוצגים במרכזי הבקרה ובניתוחים המותאמים אישית מגיעים מ-Analytics, והם מוצגים עם השהיה אינטראקטיבית.
- ניתוח מאוחד משלב בצורה חלקה נתונים מ-Spanner וממקורות אחרים ב-BigQuery.
גיבויים של מופעי Spanner לא כוללים את הפורמט העמודתי.
שיטות מומלצות לשימוש במנוע עמודות
בקטע הזה מתוארות שיטות מומלצות לשימוש במנוע העמודות.
אופטימיזציה של סריקות גדולות
מנוע מבוסס-עמודות מבצע אופטימיזציה של שאילתות שסורקות כמויות גדולות של נתונים. בסריקות נתונים קטנות יותר או בשאילתות עם סעיפי LIMIT שמתקיימים במהירות, סריקות מבוססות-שורה עשויות להיות יעילות יותר.
עמודות חיוניות
אם משתמשים ב-SELECT *, Spanner קורא את כל העמודות מאחסון עמודתי. כדי למקסם את הביצועים, כדאי לציין רק את העמודות שצריך. לדוגמה, SELECT column1, column2 FROM ....
זיהוי צווארי בקבוק בביצועים
המנוע מבוסס-העמודות יעיל לעומסי עבודה שקשורים לסריקה. כדי לזהות עומס עבודה שמוגבל לסריקה, בודקים את תוכנית השאילתה כדי לראות אם יש רמת חביון גבוהה בצומת Table scan. אם השאילתה לא מוגבלת לסריקה, כדאי לתת עדיפות לאופטימיזציות אחרות. מנוע מבוסס-עמודות יכול לספק יתרונות בהמשך אם האופטימיזציות שלכם הופכות את השאילתה למוגבלת לסריקה.
כיסוי אופטימלי של עמודות
אחרי הפעלת מנוע עמודות במסד נתונים שכבר מכיל נתונים, תהליך הדחיסה האוטומטי של Spanner ממיר את הנתונים לאחסון עמודות באופן אסינכרוני ברקע. כדי לראות את מידת התועלת של השאילתה, בודקים את אחוז הקריאה העמודתית בתוכנית השאילתה.
ניהול נתונים של נטישת לקוחות
שיעורי כתיבה גבוהים מעדכונים או מהוספות אקראיות יכולים להשפיע על הביצועים של מנוע העמודות. עומסי עבודה של הוספה בלבד מושפעים באופן מינימלי משימוש במנוע עמודות. הדחיסה היא תהליך שמתבצע ברקע, ובדרך כלל הוא נמשך כמה ימים, אבל הוא יכול להסתיים מוקדם יותר אם גודל מסד הנתונים גדל באופן משמעותי. אפשרות אחרת היא לתכנן את הסכימה כך שתאפשר כתיבה רק בתוספת ברמת הפיצול. מידע נוסף זמין במאמר בנושא חלוקה של נתונים מסודרים לפי חותמת זמן ב-Spanner.
בידוד של עומסי עבודה
יש שתי טכניקות שבהן אפשר להשתמש כדי לבודד שאילתות ניתוחיות מעסקאות:
- משתמשים בקריאות מופנות כדי להפנות קריאות לשכפולים לקריאה בלבד.
- להשתמש בData Boost לשאילתות מאוחדות.
תמחור
החיוב על מנוע מבוסס-עמודות של Spanner מבוסס על השימוש באחסון. אחרי שמפעילים את מנוע מבוסס-העמודות של Spanner, ו-Spanner מסיים את דחיסת הנתונים, נפח האחסון הנדרש גדל וכולל את הייצוג החדש של העמודות. מנוע מבוסס-עמודות מספק מדדי אחסון שמאפשרים לעקוב אחרי ההשפעה על האחסון. מידע נוסף זמין במאמר בנושא מדדים של אחסון נתונים בפורמט עמודות.
התקורה של 8 בייט לתא לא משפיעה על מנוע מבוסס-עמודות של Spanner.
המאמרים הבאים
- איך מפעילים את מנוע מבוסס-עמודות
- איך מריצים שאילתות על נתונים בפורמט עמודות
- איך עוקבים אחרי מנוע מבוסס-עמודות