Azure Cosmos DB لواجهة برمجة تطبيقات SQL الموزعة PostgreSQL
ينطبق على: Azure Cosmos DB ل PostgreSQL (مدعوم بملحق قاعدة بيانات Citus إلى PostgreSQL)
يتضمن Azure Cosmos DB ل PostgreSQL ميزات تتجاوز PostgreSQL القياسية. يوجد أدناه مرجع مصنف للوظائف وخيارات التكوين لـ:
- موازاة تنفيذ الاستعلام عبر الأجزاء
- إدارة البيانات المجزأة بين عدة خوادم
- ضغط البيانات باستخدام التخزين العمودي
- أتمتة تقسيم السلاسل الزمنية
دوال SQL
التقسيم
Name | الوصف |
---|---|
alter_distributed_table | قم بتغيير عمود التوزيع أو عدد الأجزاء أو خصائص الموقع المشترك للجدول الموزَّع |
citus_copy_shard_placement | إصلاح موضع الأجزاء غير النشط باستخدام بيانات من موضع سليم |
citus_schema_distribute | تحويل مخطط PostgreSQL إلى مخطط موزع |
citus_schema_undistribute | التراجع عن إجراء citus_schema_distribute |
create_distributed_table | حوّل جدول PostgreSQL إلى جدول موزع (مُقسّم) |
create_reference_table | احتفظ بنسخ كاملة من الجدول متزامنة عبر جميع العقد |
citus_add_local_table_to_metadata | إضافة جدول محلي إلى بيانات التعريف لتمكين الاستعلام عنه من أي عقدة |
isolate_tenant_to_new_shard | قم بإنشاء جزء جديد لاحتواء الصفوف بقيمة واحدة محددة في عمود التوزيع |
truncate_local_data_after_distributing_table | اقتطاع كل الصفوف المحلية بعد توزيع الجدول |
undistribute_table | التراجع عن إجراء create_distributed_table أو create_reference_table |
إعادة موازنة الأجزاء
Name | الوصف |
---|---|
citus_add_rebalance_strategy | إلحاق صف بـ pg_dist_rebalance_strategy |
citus_move_shard_placement | تُستخدم عادةً بشكل غير مباشر في أثناء إعادة موازنة الأجزاء بدلاً من أن يتم استدعاؤها مباشرةً بواسطة مسؤول قاعدة البيانات |
citus_set_default_rebalance_strategy | قم بتغيير الإستراتيجية المسماة بحجتها لتكون الخيار الافتراضي المختار عند إعادة موازنة القطع |
get_rebalance_progress | راقب التحركات المخطط لها والمنفذة بواسطة rebalance_table_shards |
get_rebalance_table_shards_plan | إخراج حركات القطع المخططة لأشجار إعادة التوازن دون تنفيذها |
rebalance_table_shards | انقل أجزاء الجدول المحدد لتوزيعها بالتساوي بين العمال |
التوصيل الشبكي
Name | الوصف |
---|---|
create_distributed_function | اجعل الوظيفة تعمل على العمال بالقرب من القطع المبعثرة |
update_distributed_table_colocation | تحديث أو كسر موقع مشترك لجدول موزع |
تخزين عمودي
Name | الوصف |
---|---|
alter_columnar_table_set | قم بتغيير الإعدادات في جدول عمودي |
alter_table_set_access_method | تحويل جدول بين تخزين الكومة أو العمودي |
تقسيم المسلسل الزمني
Name | الوصف |
---|---|
alter_old_partitions_set_access_method | تغيير طريقة تخزين الأقسام |
create_time_partitions | أنشئ أقساماً بفاصل زمني معين لتغطية نطاق معين من الوقت |
drop_old_time_partitions | قم بإزالة جميع الأقسام التي تقع فواصلها قبل طابع زمني معين |
معلوماتي
Name | الوصف |
---|---|
citus_get_active_worker_nodes | احصل على أسماء مضيف العامل النشط وأرقام المنافذ |
citus_relation_size | احصل على مساحة القرص التي تستخدمها جميع أجزاء الجدول الموزع المحدد |
citus_remote_connection_stats | اعرض عدد الاتصالات النشطة لكل عقدة بعيدة |
citus_stat_statements_reset | إزالة جميع الصفوف من citus_stat_statements |
citus_table_size | احصل على مساحة القرص التي تستخدمها جميع أجزاء الجدول الموزع المحدد، باستثناء الفهارس |
citus_total_relation_size | احصل على إجمالي مساحة القرص التي تستخدمها جميع أجزاء الجدول الموزع المحدد، بما في ذلك جميع الفهارس وبيانات TOAST |
column_to_column_name | ترجم العمود partkey من pg_dist_partition إلى اسم عمود نصي |
get_shard_id_for_distribution_column | ابحث عن معرّف الجزء المرتبط بقيمة عمود التوزيع |
معلمات الخادم
تنفيذ الاستعلام
Name | الوصف |
---|---|
citus.all_modifications_commutative | السماح لجميع الأوامر للمطالبة بقفل مشترك |
citus.count_distinct_error_rate | ضبط معدل الخطأ للعد التقريبي postgresql-hll |
citus.enable_repartition_joins | السماح بـ JOINs التي تم إجراؤها على أعمدة غير التوزيع |
citus.enable_repartitioned_insert_select | السماح بإعادة تقسيم الصفوف من عبارة SELECT ونقلها بين العمال للإدراج |
citus.limit_clause_row_fetch_count | عدد الصفوف المطلوب إحضارها لكل مهمة لتحسين شرط الحد |
citus.local_table_join_policy | حيث تنتقل البيانات عند عمل صلة بين الجداول المحلية والموزعة |
citus.multi_shard_commit_protocol | بروتوكول الالتزام المراد استخدامه عند تنفيذ COPY على جدول موزع تجزئة |
citus.propagate_set_commands | أوامر SET التي يتم نشرها من المنسق إلى العمال |
citus.create_object_propagation | سلوك عبارات CREATE في المعاملات للكائنات المدعومة |
citus.use_citus_managed_tables | السماح بالوصول إلى الجداول المحلية في استعلامات العقدة العاملة |
معلوماتي
Name | الوصف |
---|---|
citus.explain_all_tasks | جعل إخراج EXPLAIN تظهر جميع المهام |
citus.explain_analyze_sort_method | طريقة فرز المهام في إخراج EXPLAIN ANALYZE |
citus.log_remote_commands | استعلامات السجل التي يرسلها المنسق إلى العقد العاملة |
citus.multi_task_query_log_level | مستوى السجل لأي استعلام يقوم بإنشاء أكثر من مهمة واحدة |
citus.stat_statements_max | الحد الأقصى لعدد الصفوف المراد تخزينها في citus_stat_statements |
citus.stat_statements_purge_interval | معدل تكرار إزالة البرنامج الخفي للصيانة السجلات من citus_stat_statements التي لا مثيل لها في pg_stat_statements |
citus.stat_statements_track | تمكين/تعطيل تتبع كشف الحساب |
citus.show_shards_for_app_name_prefixes | يسمح بعرض الأجزاء للعملاء المحددين الذين يرغبون في رؤيتها |
citus.override_table_visibility | تمكين/تعطيل إخفاء الجزء |
إدارة الاتصال بين العقدة
Name | الوصف |
---|---|
citus.executor_slow_start_interval | حان وقت الانتظار بالملّي ثانية بين فتح الاتصالات لنفس عقدة العامل |
citus.force_max_query_parallelization | افتح أكبر عدد ممكن من الاتصالات |
citus.max_adaptive_executor_pool_size | الحد الأقصى لاتصالات العمال لكل جلسة |
citus.max_cached_conns_per_worker | عدد الاتصالات التي ظلت مفتوحة لتسريع الأوامر اللاحقة |
citus.node_connection_timeout | أقصى مدة (بالملّي ثانية) لانتظار إنشاء الاتصال |
نقل البيانات
Name | الوصف |
---|---|
citus.enable_binary_protocol | استخدم تنسيق التسلسل الثنائي لـ PostgreSQL (عند الاقتضاء) لنقل البيانات مع العمال |
citus.max_intermediate_result_size | الحجم بالكيلوبايت للنتائج الوسيطة لـ CTEs والاستعلامات الفرعية التي لا يمكن دفعها لأسفل |
Deadlock
Name | الوصف |
---|---|
citus.distributed_deadlock_detection_factor | حان الوقت للانتظار قبل التحقق من حالات الجمود الموزعة |
citus.log_distributed_deadlock_detection | ما إذا كان سيتم تسجيل المعالجة المتعلقة باكتشاف حالة الجمود الموزعة في سجل الخادم |
جداول النظام
تحتوي عقدة المنسق على جداول بيانات التعريف وطرق العرض لمساعدتك في رؤية خصائص البيانات ونشاط الاستعلام عبر نظام المجموعة.
Name | الوصف |
---|---|
citus_dist_stat_activity | الاستعلامات الموزعة التي يتم تنفيذها على جميع العقد |
citus_lock_waits | الاستعلامات المحظورة في جميع أنحاء نظام المجموعة |
citus_shards | موقع كل جزء ونوع الجدول الذي ينتمي إليه وحجمه |
citus_stat_statements | إحصائيات بشأن كيفية تنفيذ الاستعلامات ولمن |
citus_tables | ملخص لجميع الجداول الموزعة والمرجعية |
citus_worker_stat_activity | استفسارات عن العمال، بما في ذلك المهام على الأجزاء الفردية |
pg_dist_colocation | ما هي قطع الطاولات التي يجب وضعها معاً |
pg_dist_node | معلومات حول العقد العاملة في نظام المجموعة |
pg_dist_object | عناصر مثل الأنواع والوظائف التي تم إنشاؤها على عقدة المنسق ونشرها إلى العقد العاملة |
pg_dist_placement | موقع النسخ المتماثلة للجزء على العقد العاملة |
pg_dist_rebalance_strategy | الإستراتيجيات التي يمكن لـ rebalance_table_shards استخدامها لتحديد مكان نقل الأجزاء |
pg_dist_shard | يتراوح الجدول وعمود التوزيع والقيمة لكل جزء |
time_partitions | معلومات بشأن كل قسم تتم إدارته بواسطة وظائف مثل create_time_partitions وdrop_old_time_partitions |
الخطوات التالية
- تعرف على بعض استعلامات التشخيص المفيدة
- راجع قائمة في قاعدة بيانات PostgreSQL الأساسية.