בדף הזה מוסבר איך ליצור ולנהל קבוצות של אזורים ב-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"
המאמרים הבאים
- מידע נוסף על נפח אחסון לפי רמות
- מידע נוסף על קבוצות של יישובים
- מידע נוסף על אופטימיזציה של שאילתות באמצעות העברת פרדיקטים של חותמות זמן