בדף הזה מוסבר איך להפעיל את מנוע מבוסס-העמודות של Spanner במסד נתונים, בטבלה או באינדקס, ואיך להאיץ את יצירת פורמט הקובץ.
הפעלת מנוע מבוסס-עמודות ב-Spanner
מפעילים את מנוע מבוסס-העמודות של Spanner באמצעות פסוקית SET OPTIONS עם האפשרות columnar_policy. אפשר להחיל את האפשרות הזו כשיוצרים או משנים אובייקטים של סכימה DATABASE, TABLE או INDEX. אובייקטים של סכימות SEARCH INDEX ו-VECTOR INDEX אף פעם לא מופיעים בפורמט של עמודות.
רמות נמוכות בהיררכיה של מסד נתונים וטבלה יורשות את התג columnar_policy מההורה שלהן. אפשר לשנות את ההגדרה הזו ברמות נמוכות יותר.
האפשרות columnar_policy כוללת את הדגלים הבאים:
-
'enabled'או'disabled'מפעילים או משביתים את מנוע מבוסס-העמודות עבור אובייקט סכימה ספציפי. -
NULL(ברירת מחדל) משתמש במדיניות של מנוע מבוסס-עמודות מאובייקט האב, אם קיים כזה. NULLמוחק הגדרות קודמות באובייקט של טבלה.
אפשר גם להשמיט את OPTIONS כדי להעביר את columnar_policy מאובייקט ההורה.
בדוגמה הבאה אפשר לראות איך:
- יוצרים מסד נתונים עם מדיניות עמודות מופעלת.
- מגדירים
Singersטבלה שמקבלת בירושה את מדיניות העמודות ממסד הנתונים (משמיטים אתcolumnar_policy = NULLלאפשרות הטבלה). - מגדירים טבלה
Concertsעם מדיניות עמודות שהושבתה באופן מפורש.
CREATE DATABASE Music;
ALTER DATABASE Music SET OPTIONS (columnar_policy = 'enabled');
CREATE TABLE Singers(
SingerId INT64 NOT NULL,
FirstName STRING(1024),
LastName STRING(1024),
BirthDate DATE,
Status STRING(1024),
LastUpdated TIMESTAMP,)
PRIMARY KEY(SingerId);
CREATE TABLE Concerts(
VenueId INT64 NOT NULL,
SingerId INT64 NOT NULL,
ConcertDate DATE NOT NULL,
BeginTime TIMESTAMP,
EndTime TIMESTAMP,)
PRIMARY KEY(VenueId, SingerId, ConcertDate),
OPTIONS (columnar_policy = 'disabled');
אפשר גם להשתמש ב-ALTER TABLE עם פסוקית SET OPTIONS כדי להפעיל או להשבית את columnar_policy בטבלה. בדוגמה הבאה אפשר לראות איך משביתים את המדיניות בטבלה Singers:
ALTER TABLE Singers SET OPTIONS (columnar_policy = 'disabled');
יצירת פורמט קובץ עמודתי
Spanner יוצר את פורמט הקובץ העמודתי בזמן הדחיסה. דחיסה היא תהליך שמתבצע ברקע, ובדרך כלל נמשך כמה ימים. עם זאת, אם גודל מסד הנתונים גדל באופן משמעותי, הדחיסה עשויה להסתיים מוקדם יותר. מידע נוסף זמין במאמר בנושא כיסוי אופטימלי של עמודות.
אם יוצרים מסד נתונים חדש בלי נתונים ומפעילים את מנוע העמודות, Spanner מאחסן את הנתונים בפורמט עמודות בזמן שמוסיפים אותם ובזמן שמתבצעות פעולות דחיסה ברקע.
פורמט נתונים של עמודות לא נוצר לגיבויים.
כשמפעילים את מנוע מבוסס-העמודות של Spanner במסד נתונים קיים שיש בו נתונים, Spanner מספק מנגנון להפעלת דחיסות באופן ידני. מידע נוסף זמין במאמר בנושא הפעלה ידנית של דחיסת נתונים.
המאמרים הבאים
- מידע נוסף על מנוע מבוסס-עמודות.
- איך מריצים שאילתות על נתונים בפורמט עמודות
- איך עוקבים אחרי מנוע מבוסס-עמודות