ALTER SHARE

ينطبق على:وضع علامة Databricks SQL وضع علامة Databricks Runtime 10.4 LTS وما فوق وضع علامة كتالوج Unity فقط

إضافة المخططات أو الجداول أو طرق العرض المجسدة أو تغييرها أو إزالتها من المشاركة أو إليها. إعادة تسمية مشاركة. نقل ملكية حصة إلى كيان جديد.

الأذونات المطلوبة:

  • لتحديث مالك المشاركة، يجب أن تكون أحد الإجراءات التالية: مسؤول metastore أو مالك عنصر المشاركة أو مستخدم يتمتع بكل من الامتيازات USE SHARE و SET SHARE PERMISSION .
  • لتحديث اسم المشاركة، يجب أن تكون مسؤولا في metastore (أو مستخدما يتمتع بالامتياز CREATE_SHARE ) ومالك مشاركة.
  • لإضافة جداول أو طرق عرض، يجب أن تكون مالكا لكائن المشاركة، وأن تكون على USE SCHEMA المخطط الذي يحتوي على الجدول أو طريقة العرض، والامتياز SELECT الموجود في الجدول أو طريقة العرض. يجب الحفاظ على الامتياز SELECT طالما تريد مشاركة الجدول أو العرض.
  • لتحديث أي خصائص مشاركة أخرى، يجب أن تكون المالك.

بناء الجملة

ALTER SHARE share_name
  { alter_add_materialized_view |
    REMOVE MATERIALIZED VIEW mat_view_name |
    alter_add_table |
    REMOVE TABLE table_name |
    alter_add_schema |
    REMOVE SCHEMA schema_name |
    alter_add_view |
    REMOVE VIEW view_name |
    alter_add_model |
    REMOVE MODEL model_name |
    RENAME TO to_share_name |
    [ SET ] OWNER TO principal }

alter_add_materialized_view
  { { ALTER | ADD } MATERIALIZED VIEW mat_view_name [ COMMENT comment ] [ AS mat_view_share_name ]

alter_add_table
  { { ALTER | ADD } [ TABLE ] table_name [ COMMENT comment ]
        [ PARTITION clause ] [ AS table_share_name ]
        [ WITH HISTORY | WITHOUT HISTORY ] }

alter_add_schema
  { { ALTER | ADD } SCHEMA schema_name [ COMMENT comment ]

alter_add_view
  { { ALTER | ADD } VIEW view_name [ COMMENT comment ] [ AS view_share_name ]

alter_add_model
  { { ALTER | ADD } VIEW model_name [ COMMENT comment ] [ AS model_share_name ]

إشعار

WITH HISTORY | WITHOUT HISTORY مدعوم في وضع علامة Databricks Runtime 12.2 LTS وما فوق. تتطلب إصدارات وقت تشغيل Databricks من 11.1 إلى 12.0 تحديد WITH CHANGE DATA FEED [ START VERSION version ] ] بدلا من WITH HISTORY.

WITH CHANGE DATA FEED مهمل.

لاحظ أيضا أنه إذا كنت تريد أن يتمكن عملاؤك من الاستعلام عن موجز بيانات تغيير الجدول (CDF) باستخدام الدالة table_changes() ، فيجب تمكين CDF على الجدول قبل مشاركته WITH HISTORY (أو WITH CHANGE DATA FEED).

المعلمات

  • share_name

    اسم المشاركة المراد تغييرها.

  • alter_add_materialized_view

    ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 13.3 LTS وما فوق

    هام

    هذه الميزة في المعاينة الخاصة. لتجربة ذلك، تواصل مع جهة اتصال Azure Databricks.

    إضافة طريقة عرض مجسدة إلى المشاركة أو تعديل طريقة عرض مجسدة مشتركة موجودة. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة وأن يكون لديك SELECT امتيازات في طريقة العرض المجسدة.

    • ADD MATERIALIZED VIEW mat_view_name

      تحديد طريقة العرض المجسدة التي سيتم إضافتها. إذا تعذر العثور على طريقة العرض المجسدة، فإن Azure Databricks يثير خطأ TABLE_OR_VIEW_NOT_FOUND .

    • ALTER MATERIALIZED VIEW mat_view_name

      يحدد طريقة العرض المجسدة التي سيتم تغييرها. إذا لم تكن طريقة العرض المجسدة جزءا من المشاركة بالفعل، فإن Azure Databricks يثير خطأ.

    • COMMENT comment

      قيمة حرفية اختيارية STRING مرفقة بمشاركة طريقة العرض المجسدة كتعليق.

    • AS mat_view_share_name

      يعرض بشكل اختياري طريقة العرض المجسدة باسم مختلف. يمكن أن يكون الاسم مؤهلا باسم مخطط. إذا لم يتم تحديد، mat_view_share_name فإن طريقة العرض المجسدة معروفة باسمها الخاص.

      إذا كان الاسم المشترك موجودا بالفعل، فإن Azure Databricks يثير خطأ.

    • REMOVE MATERIALIZED VIEW mat_view_name

      ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 13.3 LTS وما فوق

      قم بإزالة طريقة العرض المجسدة التي تم تعريفها بواسطة mat_view_name من المشاركة. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة.

    • alter_add_table

      إضافة جدول أو أقسام جدول إلى المشاركة أو تعديل جدول مشترك موجود. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة وأن يكون لديك SELECT امتياز على الجدول.

      • ADD [ TABLE ] table_name

        تعريف الجدول المراد إضافته. يجب ألا يتواجد الجدول في كتالوج Unity. إذا تعذر العثور على الجدول، فإن Azure Databricks يثير خطأ TABLE_OR_VIEW_NOT_FOUND .

      • ALTER [ TABLE ] table_name

        يحدد الجدول المراد تغييره. إذا لم يكن الجدول جزءا من المشاركة، فإن Azure Databricks يثير خطأ.

      • COMMENT comment

        قيمة حرفية اختيارية STRING مرفقة بمشاركة الجدول كتعليق.

      • عبارة PARTITION

        قسم واحد أو أكثر من الجدول المراد إضافته. يجب أن تتطابق مفاتيح الأقسام مع تقسيم الجدول وأن تكون مقترنة بالقيم. إذا لم يكن PARTITION clause موجودا ADD TABLE ، يضيف الجدول بأكمله.

        للتقسيم بالرجوع إلى خصائص المستلم، استخدم بناء الجملة:

        PARTITION (column_name = CURRENT_RECIPIENT().<property-key>)
        

        ينطبق التقسيم حسب الإشارة إلى خصائص المستلم على:وضع علامة Databricks SQL وضع علامة Databricks Runtime 12.2 LTS وما فوق.

      • AS table_share_name

        يعرض الجدول باسم مختلف بشكل اختياري. يمكن أن يكون الاسم مؤهلا باسم قاعدة بيانات (مخطط). إذا لم table_share_name يتم تحديد، فسيعرف الجدول باسمه الخاص.

      • WITH HISTORY أو WITHOUT HISTORY

        ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 12.2 LTS وما فوق.

        عند WITH HISTORY تحديده، شارك الجدول مع المحفوظات الكاملة، مما يسمح للمستلمين بإجراء استعلامات السفر عبر الوقت. يمكن بعد ذلك الرجوع إلى الجدول المشترك باستخدام VERSION AS OF و TIMESTAMP AS OF.

        إذا كنت تريد، بالإضافة إلى إجراء استعلامات السفر عبر الوقت وقراءات الدفق، أن يتمكن عملاؤك من الاستعلام عن موجز بيانات تغيير الجدول (CDF) باستخدام الدالة table_changes()، فيجب تمكين CDF على الجدول قبل مشاركته WITH HISTORY.

        السلوك الافتراضي هو WITHOUT HISTORY.

    • REMOVE TABLE table_name

      قم بإزالة الجدول الذي تم تعريفه بواسطة table_name من المشاركة. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة.

    • alter_add_schema

      ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 13.3 LTS وما فوق

      إضافة مخطط إلى المشاركة أو تعديل مخطط مشترك موجود. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة والمخطط.

      • ADD SCHEMA schema_name

        تعريف المخطط المراد إضافته. إذا تعذر العثور على المخطط، فإن Azure Databricks يثير خطأ SCHEMA_NOT_FOUND .

      • ALTER SCHEMA schema_name

        يحدد المخطط الذي سيتم تغييره. إذا لم يكن المخطط جزءا من المشاركة بالفعل، فإن Azure Databricks يثير خطأ.

      • COMMENT comment

        قيمة حرفية اختيارية STRING مرفقة بمشاركة المخطط كتعليق.

    • REMOVE SCHEMA schema_name

      قم بإزالة المخطط الذي تم تعريفه بواسطة schema_name من المشاركة. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة.

    • alter_add_view

      ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 13.3 LTS وما فوق

      إضافة طريقة عرض إلى المشاركة أو تعديل طريقة عرض مشتركة موجودة. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة وأن تتمتع SELECT بامتياز في طريقة العرض.

      • ADD VIEW view_name

        تحديد طريقة العرض المراد إضافتها. إذا تعذر العثور على طريقة العرض، فإن Azure Databricks يثير خطأ TABLE_OR_VIEW_NOT_FOUND .

      • ALTER VIEW view_name

        يحدد طريقة العرض التي سيتم تغييرها. إذا لم تكن طريقة العرض جزءا من المشاركة، فإن Azure Databricks يثير خطأ.

      • COMMENT comment

        قيمة حرفية اختيارية STRING مرفقة بمشاركة طريقة العرض كتعليق.

      • AS view_share_name

        يعرض طريقة العرض باسم مختلف اختياريا. يمكن أن يكون الاسم مؤهلا باسم مخطط. إذا لم يتم تحديد ، view_share_name فإن طريقة العرض معروفة باسمها الخاص.

        إذا كان الاسم المشترك موجودا بالفعل، فإن Azure Databricks يثير خطأ.

    • REMOVE VIEW view_name

      قم بإزالة طريقة العرض التي تم تعريفها بواسطة view_name من المشاركة. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة.

    • alter_add_model

      ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 14.0 وما فوق

      إضافة نموذج إلى المشاركة أو تعديل نموذج مشترك موجود. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة وأن يكون لديك EXECUTE امتياز على النموذج.

      • ADD MODEL model_name

        يحدد النموذج المراد إضافته. إذا تعذر العثور على النموذج، فإن Azure Databricks يثير خطأ RESOURCE_DOES_NOT_EXIST.

      • ALTER MODEL model_name

        يحدد النموذج الذي سيتم تغييره. إذا لم يكن النموذج جزءا من المشاركة، فإن Azure Databricks يثير خطأ.

      • COMMENT comment

        قيمة حرفية اختيارية STRING مرفقة بمشاركة النموذج كتعليق.

      • AS model_share_name

        يعرض النموذج بشكل اختياري باسم مختلف. يمكن أن يكون الاسم مؤهلا باسم مخطط. إذا لم يتم تحديد، model_share_name فإن النموذج معروف باسمه الخاص.

        إذا كان الاسم المشترك موجودا بالفعل، فإن Azure Databricks يثير خطأ.

    • REMOVE MODEL model_name

      قم بإزالة النموذج الذي تم تعريفه من model_name المشاركة. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة.

    • RENAME TO to_share_name

      ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 11.3 LTS وما فوق

      إعادة تسمية المشاركة. يجب أن يكون الاسم فريدا بين جميع المشاركات في metastore. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة وأن يكون لديك CREATE SHARE امتياز على metastore.

    • [ SET ] OWNER TO رئيسي

      نقل ملكية المشاركة إلى principal. لتشغيل هذه العبارة، يجب أن تكون مالك المشاركة.

      ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 11.3 LTS وما فوق

      SET مسموح به ككلمة أساسية اختيارية.

الأمثلة

-- Creates a share named `some_share`.
> CREATE SHARE some_share;

-- Add a table to the share.
> ALTER SHARE some_share
     ADD TABLE my_schema.my_tab
         COMMENT 'some comment'
         PARTITION(c1_int = 5, c2_date LIKE '2021%')
         AS shared_schema.shared_tab;

-- Add a schema to the share.
> ALTER SHARE some_share
     ADD SCHEMA some_schema
         COMMENT 'some comment';

-- Add a view to the share.
> ALTER SHARE some_share
     ADD VIEW my_schema.my_view
         COMMENT 'some comment'
         AS shared_schema.shared_view;

-- Add a materialized view to the share.
> ALTER SHARE some_share
     ADD MATERIALIZED VIEW my_schema.my_mat_view
         COMMENT 'some comment'
         AS shared_schema.shared_mat_view;

-- Share a table with history
> ALTER SHARE share ADD TABLE table1 WITH HISTORY;
> ALTER SHARE share ADD TABLE table2 WITHOUT HISTORY;
> SHOW ALL IN SHARE share;
  Name    type   ... history_sharing  ...
  ------  ------ ... ----------------
  Table1  TABLE  ... ENABLED          ...
  Table2  TABLE  ... DISABLED         ...

-- Remove the table again
> ALTER SHARE some_share
    REMOVE TABLE shared_schema.shared_tab;

-- Remove the schema again
> ALTER SHARE some_share
    REMOVE SCHEMA some_schema;

-- Remove a view again
> ALTER SHARE some_share
    REMOVE VIEW shared_schema.shared_view;

-- Rename a share
> ALTER SHARE some_share
    RENAME TO new_share;

-- Change ownership of the share
> ALTER SHARE some_share
    OWNER TO `alf@melmak.et`