בדף הזה מוסבר איך ליצור ולנהל קבוצות אזורים ב-Spanner. אתם יכולים להשתמש בקבוצות של אזורים גיאוגרפיים כדי להגדיר את מדיניות האחסון בשכבות לנתונים בסכימת מסד הנתונים. מידע על אופן הפעולה של אחסון מדורג זמין במאמר אחסון מדורג.
יצירת קבוצה של רשויות מוניציפאליות
אפשר ליצור קבוצת אזורים ללא מדיניות אחסון מדורגת, או ליצור קבוצת אזורים כדי להגדיר את מדיניות האחסון של הנתונים בסכימת מסד הנתונים.
אם יוצרים קבוצת אזורים ללא מדיניות אחסון מדורגת, קבוצת האזורים מקבלת בירושה את מדיניות האחסון המדורגת של קבוצת האזורים default. אם לא הגדרתם ידנית את מדיניות האחסון של קבוצת המיקום default, מדיניות האחסון מוגדרת לאחסון ב-SSD בלבד.
המסוף
נכנסים לדף Instances ב-Spanner במסוףGoogle Cloud .
בוחרים את המופע שבו רוצים להשתמש באחסון מדורג.
בוחרים את מסד הנתונים שבו רוצים להשתמש באחסון מדורג.
בתפריט הניווט, לוחצים על Spanner Studio.
בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL באמצעות GoogleSQL או PostgreSQL.
CREATE LOCALITY GROUPלדוגמה, אפשר להריץ את הפקודה הבאה כדי ליצור קבוצת מיקום,
separate_storage, שבה העמודות מאוחסנות בקובץ נפרד מהנתונים של שאר העמודות:GoogleSQL
CREATE LOCALITY GROUP separate_storage;PostgreSQL
CREATE LOCALITY GROUP separate_storage;לדוגמה, אפשר להריץ את הפקודה הבאה כדי ליצור קבוצת מיקום,
ssd_only, שמאחסנת נתונים באחסון SSD:GoogleSQL
CREATE LOCALITY GROUP ssd_only OPTIONS (storage='ssd');PostgreSQL
CREATE LOCALITY GROUP ssd_only STORAGE 'ssd';לדוגמה, אפשר להריץ את הפקודה הבאה כדי ליצור קבוצת אזורים,
hdd_only, שמאחסנת נתונים באחסון HDD:GoogleSQL
CREATE LOCALITY GROUP hdd_only OPTIONS (storage='hdd');PostgreSQL
CREATE LOCALITY GROUP hdd_only STORAGE 'hdd';לוחצים על Run.
gcloud
כדי ליצור קבוצת רשות מוניציפאלית באמצעות ה-CLI של gcloud, משתמשים ב-gcloud spanner databases ddl update.
לדוגמה, אפשר להריץ את הפקודה הבאה כדי ליצור קבוצת מיקום, separate_storage, שבה העמודות מאוחסנות בקובץ נפרד מהנתונים של שאר העמודות:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP separate_storage"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP separate_storage"
לדוגמה, אפשר להריץ את הפקודה הבאה כדי ליצור קבוצת מיקום, ssd_only, שמאחסנת נתונים ב-SSD:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP ssd_only OPTIONS (storage='ssd')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP ssd_only STORAGE 'ssd'"
לדוגמה, אפשר להריץ את הפקודה הבאה כדי ליצור קבוצת אזורים, hdd_only, שמאחסנת נתונים באחסון HDD:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP hdd_only OPTIONS (storage='hdd')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP hdd_only STORAGE 'hdd'"
יצירת מדיניות לפי גיל לקבוצת רשויות מוניציפאליות
קבוצת אזורים עם מדיניות שמבוססת על גיל הנתונים מאחסנת נתונים חדשים יותר באחסון SSD למשך זמן מוגדר. הזמן הזה הוא יחסי לחותמת הזמן של השמירה של הנתונים. אחרי שחולף הזמן שצוין, Spanner מעביר את הנתונים לאחסון ב-HDD במהלך מחזור הדחיסה הרגיל שלו, שבדרך כלל מתרחש במהלך שבעה ימים מהזמן שצוין. כשמשתמשים במדיניות אחסון מדורגת לפי גיל, משך הזמן המינימלי שבו הנתונים צריכים להיות מאוחסנים ב-SSD לפני שהם מועברים לאחסון ב-HDD הוא שעה אחת.
כדי ליצור קבוצה של אזורים לפי גיל, משתמשים בהצהרת CREATE LOCALITY GROUP DDL.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL באמצעות GoogleSQL או PostgreSQL.
CREATE LOCALITY GROUPלדוגמה, הצהרת ה-DDL הבאה יוצרת קבוצת מיקום,
spill_to_hdd, שמאחסנת נתונים באחסון SSD למשך 10 הימים הראשונים, ואז מעבירה נתונים ישנים יותר לאחסון HDD במהלך מחזור הדחיסה הרגיל:GoogleSQL
CREATE LOCALITY GROUP spill_to_hdd OPTIONS (storage = 'ssd', ssd_to_hdd_spill_timespan = '10d');PostgreSQL
CREATE LOCALITY GROUP spill_to_hdd STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d';לוחצים על Run.
gcloud
כדי ליצור קבוצת מיקום לפי גיל באמצעות פקודת ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרת ה-DDL הבאה יוצרת קבוצת לוקאליות spill_to_hdd שמאחסנת נתונים ב-SSD למשך 10 הימים הראשונים, ואז מעבירה נתונים ישנים יותר ל-HDD במהלך מחזור הדחיסה הרגיל.
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP spill_to_hdd OPTIONS (storage='ssd', ssd_to_hdd_spill_timespan='10d')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP spill_to_hdd STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d'"
הגדרת מדיניות לאחסון נתונים בשכבות
אחרי שיוצרים את קבוצת המיקומים, אפשר להגדיר את מדיניות האחסון בשכבות לנתונים. מדיניות האחסון בשכבות קובעת את קבוצת המיקום שבה הנתונים משתמשים. אפשר להגדיר את מדיניות האחסון בשכבות ברמת מסד הנתונים, הטבלה, העמודה או האינדקס המשני. כל אובייקט במסד נתונים יורש את מדיניות האחסון הרב-שכבתי מההורה שלו, אלא אם המדיניות מבוטלת באופן מפורש.
אם יוצרים קבוצת אזורים ללא מדיניות אחסון מדורגת, קבוצת האזורים מקבלת בירושה את מדיניות האחסון המדורגת של קבוצת האזורים default. אם לא הגדרתם ידנית את מדיניות האחסון של קבוצת המיקום default, מדיניות האחסון מוגדרת לאחסון ב-SSD בלבד.
הגדרת קבוצת לוקאלים ברמת מסד הנתונים
מדיניות ברירת המחדל של אחסון בשכבות היא שכל הנתונים מאוחסנים באחסון SSD. אפשר לשנות את מדיניות האחסון בשכבות ברמת מסד הנתונים על ידי שינוי defaultקבוצת המיקום. במסדי נתונים עם ניב GoogleSQL, הצהרת ה-DDL ALTER LOCALITY GROUP צריכה לכלול את default בתוך גרשיים הפוכים (`default`). צריך לכלול את הגרשיים ההפוכים רק עבור קבוצת המיקום default.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL באמצעות GoogleSQL או PostgreSQL.
ALTER LOCALITY GROUPלדוגמה, הצהרות ה-DDL הבאות משנות את
defaultקבוצת המיקום כך שתשתמש במדיניות אחסון מדורגת לפי גיל. כל הנתונים במסד הנתונים מועברים לאחסון ב-HDD אחרי 10 ימים.GoogleSQL
ALTER LOCALITY GROUP `default` SET OPTIONS (storage = 'ssd', ssd_to_hdd_spill_timespan = '10d');PostgreSQL
ALTER LOCALITY GROUP "default" STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d';לוחצים על Run.
gcloud
כדי לשנות את מדיניות האחסון בשכבות של default קבוצת הלוקאליות באמצעות פקודת ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות משנות את default קבוצת המיקום כך שתשתמש במדיניות אחסון מדורגת לפי גיל. כל הנתונים במסד הנתונים מועברים לאחסון ב-HDD אחרי 10 ימים.
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP \`default\` SET OPTIONS (storage = 'ssd', ssd_to_hdd_spill_timespan = '10d');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP \"default\" STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d';"
הגדרת קבוצת מיקומים ברמת הטבלה
אתם יכולים להגדיר מדיניות אחסון מדורג ברמת הטבלה עבור הנתונים שלכם, שתבטל את מדיניות האחסון המדורג ברמת מסד הנתונים. מדיניות האחסון בשכבות ברמת הטבלה חלה גם על כל העמודות בטבלה, אלא אם הגדרתם מדיניות אחסון בשכבות שחלה רק על עמודה מסוימת.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL באמצעות GoogleSQL או PostgreSQL.
CREATE TABLEלדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה,
Singers, שמשתמשת בקבוצת הלוקאלssd_only:GoogleSQL
CREATE TABLE Singers ( SingerId INT64 NOT NULL, FirstName STRING(1024), LastName STRING(1024), SingerInfo BYTES(MAX) ) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');PostgreSQL
CREATE TABLE Singers ( SingerId bigint PRIMARY KEY, FirstName varchar(1024), LastName varchar(1024), SingerInfo bytea ) LOCALITY GROUP ssd_only;לוחצים על Run.
gcloud
כדי להגדיר מדיניות אחסון מדורג ברמת הטבלה באמצעות פקודת ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה, Singers, שמשתמשת בקבוצת הלוקאלים ssd_only.
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( SingerId INT64 NOT NULL, \
FirstName STRING(1024), \
LastName STRING(1024), \
SingerInfo BYTES(MAX) \
) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( \
SingerId bigint PRIMARY KEY, \
FirstName varchar(1024), \
LastName varchar(1024), \
SingerInfo bytea \
) LOCALITY GROUP ssd_only;"
הגדרת מדיניות אחסון מדורגת עם שינוי ברמת העמודה
אתם יכולים להגדיר מדיניות אחסון מדורגת לנתונים שלכם, שתחליף את מדיניות האחסון הקיימת ברמת העמודה.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL עם מדיניות אחסון מדורגת שכוללת שינוי ברירת מחדל ברמת העמודה באמצעות GoogleSQL או PostgreSQL.
CREATE TABLEלדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה
Singersשמשתמשת בקבוצת הלוקאליותssd_only. עם זאת, העמודהAwardsמבטלת את קבוצת המיקום ברמת הטבלה ומשתמשת בקבוצת המיקוםspill_to_hddכמדיניות האחסון שלה בשכבות:GoogleSQL
CREATE TABLE Singers ( SingerId INT64 NOT NULL, FirstName STRING(1024), LastName STRING(1024), Awards ARRAY<STRING(MAX)> OPTIONS (locality_group = 'spill_to_hdd') ) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');PostgreSQL
CREATE TABLE Singers ( SingerId bigint PRIMARY KEY, FirstName varchar(1024), LastName varchar(1024), Awards varchar[] LOCALITY GROUP spill_to_hdd ) LOCALITY GROUP ssd_only;לוחצים על Run.
gcloud
כדי להגדיר מדיניות אחסון מדורג עם ביטול ברירת מחדל ברמת העמודה באמצעות פקודת ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה Singers שמשתמשת בקבוצת הלוקאליות ssd_only. עם זאת, העמודה Awards מבטלת את מדיניות האחסון לפי רמות שמוגדרת בטבלה הזו, ומשתמשת בקבוצת המיקום spill_to_hdd כמדיניות האחסון לפי רמות:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( \
SingerId INT64 NOT NULL, \
FirstName STRING(1024), \
LastName STRING(1024), \
Awards ARRAY<STRING(MAX)> OPTIONS (locality_group = 'spill_to_hdd') \
) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');" \
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( \
SingerId bigint PRIMARY KEY, \
FirstName varchar(1024), \
LastName varchar(1024), \
Awards varchar[] LOCALITY GROUP spill_to_hdd \
) LOCALITY GROUP ssd_only;"
הגדרת מדיניות משנית של אחסון מדורג ברמת האינדקס
אתם יכולים להגדיר מדיניות משנית של אחסון מדורג לנתונים שלכם ברמת האינדקס.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL עם מדיניות אחסון מדורגת של ביטול ברירת מחדל ברמה של אינדקס משני באמצעות GoogleSQL או PostgreSQL.
CREATE INDEXלדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה
Singersשמשתמשת בקבוצת הלוקאליותssd_only. במסד הנתונים יש גם אינדקס משני לכלSingersבמסד הנתונים לפי השם הפרטי ושם המשפחה. האינדקסSingersByFirstLastNameמבטל את מדיניות האחסון בשכבות ברמת הטבלה ומשתמש בקבוצת הלוקאליותspill_to_hddכמדיניות האחסון בשכבות:GoogleSQL
CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) OPTIONS (locality_group = 'spill_to_hdd');PostgreSQL
CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) LOCALITY GROUP spill_to_hdd;לוחצים על Run.
gcloud
כדי להגדיר מדיניות משנית של אחסון מדורג ברמת האינדקס באמצעות פקודת ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה Singers שמשתמשת בקבוצת הלוקאליות ssd_only. במסד הנתונים נוצר גם אינדקס משני לכל Singers במסד הנתונים לפי השם הפרטי ושם המשפחה. האינדקס SingersByFirstLastName מבטל את מדיניות האחסון לפי רמות בטבלה ומשתמש בקבוצת המיקום spill_to_hdd כמדיניות האחסון לפי רמות:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) \
OPTIONS (locality_group = 'spill_to_hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) \
LOCALITY GROUP spill_to_hdd;"
הגדרת קבוצת לוקאלים ברמת העמודה
אתם יכולים להגדיר קבוצת מיקום ברמת העמודה לנתונים שלכם גם אם לקבוצת המיקום אין מדיניות אחסון מדורגת. קריאת נתונים מהעמודה הזו מהירה יותר מקריאת נתונים שמקובצים עם עמודות אחרות.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL שמקצה את העמודה לקבוצת מיקום באמצעות GoogleSQL או PostgreSQL.
CREATE TABLEלדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה
Songsעם עמודהLyricsCompressedשמאוחסנת בנפרד בקבוצת הלוקאליםhdd_only:GoogleSQL
CREATE TABLE Songs ( SingerId INT64 NOT NULL, SongId INT64 NOT NULL, Title STRING(MAX), Description STRING(MAX), LyricsCompressed BYTES(MAX) OPTIONS (locality_group = 'hdd_only') ) PRIMARY KEY (SingerId, SongId), INTERLEAVE IN PARENT Singers ON DELETE CASCADE, OPTIONS (locality_group = 'ssd_only');PostgreSQL
CREATE TABLE Songs ( SingerId BIGINT NOT NULL, SongId BIGINT NOT NULL, Title VARCHAR, Description TEXT, LyricsCompressed BYTEA LOCALITY GROUP hdd_only, PRIMARY KEY (SingerId, SongId) ) LOCALITY GROUP ssd_only INTERLEAVE IN PARENT Singers ON DELETE CASCADE;לוחצים על Run.
gcloud
כדי להגדיר קבוצת מיקום ברמת העמודה לנתונים באמצעות הפקודה של ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות יוצרות טבלה Songs עם עמודה LyricsCompressed שמאוחסנת בנפרד בקבוצת המיקום hdd_only:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Songs ( \
SingerId INT64 NOT NULL, \
SongId INT64 NOT NULL, \
Title STRING(MAX), \
Description STRING(MAX),
LyricsCompressed BYTES(MAX) OPTIONS (locality_group = 'hdd_only') \
) PRIMARY KEY (SingerId, SongId), \
INTERLEAVE IN PARENT Singers ON DELETE CASCADE, \
OPTIONS (locality_group = 'ssd_only');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Songs ( \
SingerId BIGINT NOT NULL, \
SongId BIGINT NOT NULL, \
Title VARCHAR, \
Description TEXT, \
LyricsCompressed BYTEA LOCALITY GROUP hdd_only, \
PRIMARY KEY (SingerId, SongId) \
) LOCALITY GROUP ssd_only INTERLEAVE IN PARENT Singers ON DELETE CASCADE;
העברת נתונים בין אפשרויות אחסון
אפשר להעביר נתונים בין אחסון SSD לאחסון HDD. העברת נתונים יכולה להימשך עד שבעה ימים. כדי לעקוב אחר התקדמות ההעברה, אפשר להריץ שאילתה בטבלה המובנית SPANNER_SYS.TABLE_SIZES_STATS_1HOUR כדי לבדוק את נפח האחסון הנדרש ב-HDD וב-SSD בכל טבלה במסד הנתונים. אפשר גם לעקוב אחרי נפח האחסון הנדרש באמצעות המדד spanner.googleapis.com/instance/storage/used_bytes של Cloud Monitoring כדי לראות את פירוט השימוש ב-SSD וב-HDD במסד הנתונים או במופע. מידע נוסף זמין במאמר בנושא תצפית על אחסון מדורג.
העברת נתונים מאחסון SSD לאחסון HDD
כדי להעביר נתונים מאחסון SSD לאחסון HDD, אפשר ליצור קבוצת מיקום חדשה עם מדיניות אחסון מדורגת לפי גיל, או לשנות את מדיניות האחסון המדורגת של קבוצת מיקום קיימת. Spanner מעביר נתונים במהלך מחזור הדחיסה הרגיל שלו, שבדרך כלל מתרחש במהלך שבעה ימים. אם אתם טוענים נתונים ומעדכנים את קבוצת המיקומים באמצעות אחת מההצהרות הבאות של ALTER DDL, תצטרכו להמתין עד שבעה ימים עד שהשינוי בקבוצת המיקומים יושלם:
GoogleSQL
ALTER TABLE ... SET OPTIONS (locality_group = '')ALTER TABLE ... ALTER COLUMN ... SET OPTIONS (locality_group = '')ALTER INDEX ... SET OPTIONS (locality_group = '')
PostgreSQL
ALTER TABLE ... SET LOCALITY GROUP ...ALTER TABLE ... ALTER COLUMN ... SET LOCALITY GROUP ...ALTER INDEX ... SET LOCALITY GROUP ...
תקופת ההמתנה לא רלוונטית אם יוצרים טבלה, עמודה או אינדקס חדשים, ומוסיפים את קבוצת המקומיות כחלק מהתחביר CREATE או ADD COLUMN.
מידע נוסף זמין במאמר בנושא יצירת מדיניות לפי גיל לקבוצה מקומית או שינוי אפשרות האחסון.
העברת נתונים מאחסון HDD לאחסון SSD
כדי להעביר נתונים מאחסון HDD לאחסון SSD, אפשר לשנות את אפשרות האחסון של קבוצת מיקום קיימת או לשנות את קבוצת המיקום שבה נעשה שימוש בטבלה.
Spanner מעביר נתונים במהלך מחזור הדחיסה הרגיל שלו, שבדרך כלל מתרחש במהלך שבעה ימים. אם אתם טוענים נתונים ומעדכנים את קבוצת המיקומים באמצעות אחת מהצהרות ה-DDL הבאות ALTER, תצטרכו להמתין עד שבעה ימים עד שהשינוי בקבוצת המיקומים יושלם:
GoogleSQL
ALTER TABLE ... SET OPTIONS (locality_group = '')ALTER TABLE ... ALTER COLUMN ... SET OPTIONS (locality_group = '')ALTER INDEX ... SET OPTIONS (locality_group = '')
PostgreSQL
ALTER TABLE ... SET LOCALITY GROUP ...ALTER TABLE ... ALTER COLUMN ... SET LOCALITY GROUP ...ALTER INDEX ... SET LOCALITY GROUP ...
תקופת ההמתנה לא רלוונטית אם יוצרים טבלה, עמודה או אינדקס חדשים, ומוסיפים את קבוצת המקומיות כחלק מהתחביר CREATE או ADD COLUMN.
שינוי קבוצת המיקומים שמשמשת טבלה
כדי לשנות את קבוצת המקומיות שבה נעשה שימוש בטבלה, מגדירים קבוצת מקומיות חדשה או שונה באפשרויות הטבלה.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את
ALTER TABLEהצהרת ה-DDL שמשנה את קבוצת הלוקאל שבה נעשה שימוש בטבלה באמצעות GoogleSQL או PostgreSQL.לדוגמה, הצהרות ה-DDL הבאות משנות את קבוצת הלוקאליות שבה נעשה שימוש בטבלה,
Singers, ל-spill_to_hdd:GoogleSQL
ALTER TABLE Singers SET OPTIONS (locality_group = 'spill_to_hdd');PostgreSQL
ALTER TABLE Singers SET LOCALITY GROUP spill_to_hdd;לוחצים על Run.
gcloud
כדי לשנות את קבוצת הלוקאליות שבה נעשה שימוש בטבלה באמצעות ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות משנות את קבוצת הלוקאליות שבה נעשה שימוש בטבלה, Singers, ל-spill_to_hdd:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers SET OPTIONS(locality_group = 'spill_to_hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers SET LOCALITY GROUP spill_to_hdd;"
שינוי קבוצת הלוקאל שמשמשת עמודה בטבלה
אפשר לשנות את קבוצת המיקום שבה נעשה שימוש בעמודה של טבלה על ידי הגדרת קבוצת המיקום באפשרויות של העמודה.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את
ALTER TABLEהצהרת ה-DDL שמשנה את קבוצת הלוקאל שבה נעשה שימוש בטבלה באמצעות GoogleSQL או PostgreSQL.לדוגמה, הצהרות ה-DDL הבאות משנות את קבוצת הלוקאל שבה נעשה שימוש בעמודה של הטבלה,
LastName, ל-spill_to_hdd:GoogleSQL
ALTER TABLE Singers ALTER COLUMN LastName SET OPTIONS(locality_group = 'spill_to_hdd');PostgreSQL
ALTER TABLE Singers ALTER COLUMN LastName SET LOCALITY GROUP spill_to_hdd;לוחצים על Run.
gcloud
כדי לשנות את קבוצת הלוקאליות שבה נעשה שימוש בטבלה באמצעות ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות משנות את קבוצת הלוקאל שבה נעשה שימוש בעמודה של הטבלה, LastName, ל-spill_to_hdd:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers ALTER COLUMN LastName SET OPTIONS(locality_group = 'spill_to_hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers ALTER COLUMN SET LOCALITY GROUP spill_to_hdd;"
שינוי קבוצת רשויות מוניציפאליות
אפשר לשנות קבוצת מיקומים על ידי שינוי אפשרות האחסון שלה או שינוי המדיניות שלה לפי גיל.
Spanner מעביר נתונים במהלך מחזור הדחיסה הרגיל שלו, שבדרך כלל מתרחש במהלך שבעה ימים. אם אתם טוענים נתונים ומעדכנים את קבוצת המיקומים באמצעות ALTER LOCALITY GROUP, אתם צריכים להמתין עד שבעה ימים להעברת הנתונים הקיימים. ההגדרה המעודכנת חלה באופן מיידי על כל הנתונים החדשים שנכתבים לקבוצת המיקומים הזו.
שינוי אפשרות האחסון
אפשר לשנות את אפשרות האחסון של קבוצת אזורים מ-SSD ל-HDD או מ-HDD ל-SSD.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL באמצעות GoogleSQL או PostgreSQL.
ALTER LOCALITY GROUPלדוגמה, הצהרות ה-DDL הבאות משנות את אפשרות האחסון של קבוצת הלוקאל,
separate_storage, ל-HDD:GoogleSQL
ALTER LOCALITY GROUP separate_storage SET OPTIONS (storage='hdd');PostgreSQL
ALTER LOCALITY GROUP separate_storage STORAGE 'hdd';לוחצים על Run.
gcloud
כדי לשנות את אפשרות האחסון של קבוצה לפי מיקום באמצעות פקודת ה-CLI של gcloud, משתמשים בפקודה gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות משנות את אפשרות האחסון של קבוצת הלוקאל, separate_storage, ל-HDD:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP separate_storage SET OPTIONS (storage = 'hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP separate_storage STORAGE 'hdd';"
שינוי המדיניות שמבוססת על גיל
אפשר לשנות את המדיניות לפי גיל של קבוצת מיקומים על ידי הארכה או קיצור של משך הזמן שבו הנתונים מאוחסנים ב-SSD לפני שהם מועברים לאחסון ב-HDD.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL באמצעות GoogleSQL או PostgreSQL.
ALTER LOCALITY GROUPלדוגמה, הצהרות ה-DDL הבאות משנות את המדיניות שמבוססת על גיל של קבוצת הלוקאליות,
spill_to_hdd, על ידי הארכת משך הזמן שבו הנתונים מאוחסנים ב-SSD ל-20 ימים:GoogleSQL
ALTER LOCALITY GROUP spill_to_hdd SET OPTIONS (ssd_to_hdd_spill_timespan = '20d');PostgreSQL
ALTER LOCALITY GROUP spill_to_hdd SSD_TO_HDD_SPILL_TIMESPAN '20d';לוחצים על Run.
gcloud
כדי לשנות את המדיניות לפי גיל של קבוצת רשויות מוניציפאליות באמצעות הפקודה ה-CLI של gcloud, משתמשים ב-gcloud spanner databases ddl update.
לדוגמה, הצהרות ה-DDL הבאות משנות את המדיניות שמבוססת על גיל של קבוצת הלוקאליות, spill_to_hdd, על ידי הארכת משך הזמן שבו הנתונים מאוחסנים ב-SSD ל-20 ימים:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP spill_to_hdd SET OPTIONS (ssd_to_hdd_spill_timespan = '20d');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP spill_to_hdd SSD_TO_HDD_SPILL_TIMESPAN '20d';"
מחיקת קבוצת רשויות מוניציפאליות
אי אפשר למחוק קבוצת רשויות מוניציפאליות אם היא מכילה נתונים. קודם צריך להעביר את כל הנתונים שנמצאים בקבוצת היישובים לקבוצת יישובים אחרת. מידע נוסף זמין במאמר שינוי קבוצת הלוקאל שבה נעשה שימוש בטבלה.
המסוף
- בדף Spanner Studio, לוחצים על New tab או משתמשים בכרטיסיית העריכה הריקה.
מזינים את הצהרת ה-DDL באמצעות GoogleSQL או PostgreSQL.
DROP LOCALITY GROUPלדוגמה, אפשר להריץ את הפקודה הבאה כדי להסיר קבוצת רשויות מוניציפאליות
ssd_only:GoogleSQL
DROP LOCALITY GROUP ssd_only;PostgreSQL
DROP LOCALITY GROUP ssd_only;לוחצים על Run.
gcloud
כדי להסיר קבוצת אזורים באמצעות ה-CLI של gcloud, משתמשים ב-gcloud spanner databases ddl update.
לדוגמה, כדי להסיר את קבוצת המיקומים ssd_only, מריצים את הפקודה:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="DROP LOCALITY GROUP ssd_only"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="DROP LOCALITY GROUP ssd_only"
המאמרים הבאים
- מידע נוסף על נפח אחסון לפי רמות
- מידע נוסף על קבוצות של רשויות מוניציפאליות
- מידע נוסף על אופטימיזציה של שאילתות באמצעות העברת מסנני חותמות זמן