ده مثال عملی منحصربهفرد برای ALTER PARTITION FUNCTION
مثال 1: تعریف پایه با مقدار ثابت در ALTER PARTITION FUNCTION
در مثال شماره 1، سناریوی «تعریف پایه با مقدار ثابت» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار SPLIT RANGE در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_01 (int) AS RANGE RIGHT FOR VALUES (100,200,300);
CREATE PARTITION SCHEME ps_alter_pf_01 AS PARTITION pf_alter_pf_01 ALL TO ([PRIMARY]);
ALTER PARTITION SCHEME ps_alter_pf_01 NEXT USED [PRIMARY];
ALTER PARTITION FUNCTION pf_alter_pf_01() SPLIT RANGE (150);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_01')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 1 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد MERGE RANGE باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 2: اجرای سناریو روی جدول نمونه در ALTER PARTITION FUNCTION
در مثال شماره 2، سناریوی «اجرای سناریو روی جدول نمونه» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار MERGE RANGE در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_02 (int) AS RANGE RIGHT FOR VALUES (200,300,400);
CREATE PARTITION SCHEME ps_alter_pf_02 AS PARTITION pf_alter_pf_02 ALL TO ([PRIMARY]);
ALTER PARTITION SCHEME ps_alter_pf_02 NEXT USED [PRIMARY];
ALTER PARTITION FUNCTION pf_alter_pf_02() SPLIT RANGE (250);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_02')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 2 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد NEXT USED باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 3: استفاده در SELECT و گزارشگیری در ALTER PARTITION FUNCTION
در مثال شماره 3، سناریوی «استفاده در SELECT و گزارشگیری» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار NEXT USED در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_03 (int) AS RANGE RIGHT FOR VALUES (300,350,400);
CREATE PARTITION SCHEME ps_alter_pf_03 AS PARTITION pf_alter_pf_03 ALL TO ([PRIMARY]);
ALTER PARTITION FUNCTION pf_alter_pf_03() MERGE RANGE (350);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_03')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 3 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد Sliding Window باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 4: کنترل شرط و بازه هدف در ALTER PARTITION FUNCTION
در مثال شماره 4، سناریوی «کنترل شرط و بازه هدف» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار Sliding Window در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_04 (int) AS RANGE RIGHT FOR VALUES (400,500,600);
CREATE PARTITION SCHEME ps_alter_pf_04 AS PARTITION pf_alter_pf_04 ALL TO ([PRIMARY]);
ALTER PARTITION SCHEME ps_alter_pf_04 NEXT USED [PRIMARY];
ALTER PARTITION FUNCTION pf_alter_pf_04() SPLIT RANGE (450);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_04')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 4 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد Boundary Movement باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 5: ترکیب با قابلیت مکمل SQL Server در ALTER PARTITION FUNCTION
در مثال شماره 5، سناریوی «ترکیب با قابلیت مکمل SQL Server» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار Boundary Movement در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_05 (int) AS RANGE RIGHT FOR VALUES (500,600,700);
CREATE PARTITION SCHEME ps_alter_pf_05 AS PARTITION pf_alter_pf_05 ALL TO ([PRIMARY]);
ALTER PARTITION SCHEME ps_alter_pf_05 NEXT USED [PRIMARY];
ALTER PARTITION FUNCTION pf_alter_pf_05() SPLIT RANGE (550);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_05')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 5 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد Log Growth باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
تصویر دوم جریان ورودی تا خروجی ALTER PARTITION FUNCTION را با تمرکز بر MERGE RANGE، Boundary Movement و اعتبارسنجی نتیجه نمایش میدهد.
مثال 6: بررسی رفتار NULL یا داده مرزی در ALTER PARTITION FUNCTION
در مثال شماره 6، سناریوی «بررسی رفتار NULL یا داده مرزی» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار Log Growth در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_06 (int) AS RANGE RIGHT FOR VALUES (600,650,700);
CREATE PARTITION SCHEME ps_alter_pf_06 AS PARTITION pf_alter_pf_06 ALL TO ([PRIMARY]);
ALTER PARTITION FUNCTION pf_alter_pf_06() MERGE RANGE (650);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_06')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 6 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد Dependent Scheme باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 7: ثبت خطای رایج و نسخه اصلاحشده در ALTER PARTITION FUNCTION
در مثال شماره 7، سناریوی «ثبت خطای رایج و نسخه اصلاحشده» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار Dependent Scheme در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_07 (int) AS RANGE RIGHT FOR VALUES (700,800,900);
CREATE PARTITION SCHEME ps_alter_pf_07 AS PARTITION pf_alter_pf_07 ALL TO ([PRIMARY]);
ALTER PARTITION SCHEME ps_alter_pf_07 NEXT USED [PRIMARY];
ALTER PARTITION FUNCTION pf_alter_pf_07() SPLIT RANGE (750);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_07')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 7 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد SPLIT RANGE باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 8: سناریوی سازمانی دورهای در ALTER PARTITION FUNCTION
در مثال شماره 8، سناریوی «سناریوی سازمانی دورهای» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار SPLIT RANGE در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_08 (int) AS RANGE RIGHT FOR VALUES (800,900,1000);
CREATE PARTITION SCHEME ps_alter_pf_08 AS PARTITION pf_alter_pf_08 ALL TO ([PRIMARY]);
ALTER PARTITION SCHEME ps_alter_pf_08 NEXT USED [PRIMARY];
ALTER PARTITION FUNCTION pf_alter_pf_08() SPLIT RANGE (850);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_08')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 8 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد MERGE RANGE باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 9: اجرای تراکنشی و امکان Rollback در ALTER PARTITION FUNCTION
در مثال شماره 9، سناریوی «اجرای تراکنشی و امکان Rollback» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار MERGE RANGE در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_09 (int) AS RANGE RIGHT FOR VALUES (900,950,1000);
CREATE PARTITION SCHEME ps_alter_pf_09 AS PARTITION pf_alter_pf_09 ALL TO ([PRIMARY]);
ALTER PARTITION FUNCTION pf_alter_pf_09() MERGE RANGE (950);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_09')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 9 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد NEXT USED باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.
مثال 10: ممیزی Performance و متادیتا در ALTER PARTITION FUNCTION
در مثال شماره 10، سناریوی «ممیزی Performance و متادیتا» برای ALTER PARTITION FUNCTION اجرا میشود. هدف این است که رفتار NEXT USED در یک نمونه قابل بازتولید دیده شود و نتیجه بدون نیاز به اجرای ذهنی قابل فهم باشد.
CREATE PARTITION FUNCTION pf_alter_pf_10 (int) AS RANGE RIGHT FOR VALUES (1000,1100,1200);
CREATE PARTITION SCHEME ps_alter_pf_10 AS PARTITION pf_alter_pf_10 ALL TO ([PRIMARY]);
ALTER PARTITION SCHEME ps_alter_pf_10 NEXT USED [PRIMARY];
ALTER PARTITION FUNCTION pf_alter_pf_10() SPLIT RANGE (1050);
SELECT boundary_id, value
FROM sys.partition_range_values
WHERE function_id=(SELECT function_id FROM sys.partition_functions WHERE name=N'pf_alter_pf_10')
ORDER BY boundary_id;
| شاخص | خروجی نمونه |
|---|
| متادیتا | مرزها یا تعداد پارتیشن تغییر کرد |
تحلیل مثال 10 برای ALTER PARTITION FUNCTION: این سناریو نشان میدهد Sliding Window باید همراه کنترل کاتالوگ و مقدارهای مرزی بررسی شود. کاربرد واقعی آن در توسعه یا کوچککردن بازهها در طول عمر سامانه است.