خصائص الجدول وخيارات الجدول

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

تعريف العلامات المعرفة من قبل المستخدم للجداول وطرق العرض.

  • خصائص الجدول

    خاصية الجدول هي زوج قيم المفاتيح الذي يمكنك تهيئته عند تنفيذ CREATE TABLE أو CREATE VIEW. يمكنك إلغاء تعيين خصائص الجدول الحالية أو تعيين خصائص جدول جديدة أو موجودة باستخدام ALTER TABLE أو ALTER VIEW.

    يمكنك استخدام خصائص الجدول لوضع علامة على الجداول بمعلومات لا يتم تعقبها بواسطة SQL.

  • خيارات الجدول

    الغرض من خيارات الجدول هو تمرير خصائص التخزين إلى التخزين الأساسي، مثل خصائص SERDE إلى Hive.

    خيار الجدول هو زوج قيم المفاتيح الذي يمكنك تهيئته عند تنفيذ CREATE TABLE. لا SET يمكنك أو UNSET خيار جدول.

TBLPROPERTIES

تعيين خاصية جدول واحدة أو أكثر في جدول أو طريقة عرض جديدة.

يمكنك استخدام خصائص الجدول لوضع علامة على الجداول بمعلومات لا يتم تعقبها بواسطة SQL.

بناء الجملة

TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )

property_key
  { identifier [. ...] | string_literal }

المعلمات

  • property_key

    مفتاح الخاصية. يمكن أن يتكون المفتاح من معرف واحد أو أكثر مفصول بنقطة، أو سلسلة حرفية.

    يجب أن تكون مفاتيح الخصائص فريدة وأن تكون حساسة لحالة الأحرف.

  • property_val

    قيمة الخاصية . يجب أن تكون BOOLEANالقيمة ، STRINGأو INTEGER، أو DECIMAL حرفية.

الأمثلة

-- Create table with user defined table properties
> CREATE TABLE T(c1 INT) TBLPROPERTIES('this.is.my.key' = 12, this.is.my.key2 = true);
> SHOW TBLPROPERTIES T;
option.serialization.format     1
this.is.my.key  12
this.is.my.key2 true
transient_lastDdlTime   1649783569

تعيين TBLPROPERTIES

تعيين خاصية جدول واحدة أو أكثر في جدول أو طريقة عرض موجودة.

بناء الجملة

SET TBLPROPERTIES ( { property_key [ = ] property_val } [, ...] )

property_key
  { identifier [. ...] | string_literal }

المعلمات

  • property_key

    مفتاح الخاصية. يمكن أن يتكون المفتاح من معرف واحد أو أكثر مفصول بنقطة، أو سلسلة حرفية.

    يجب أن تكون مفاتيح الخصائص فريدة وأن تكون حساسة لحالة الأحرف.

  • property_val

    القيمة الجديدة للخاصية . يجب أن تكون BOOLEANالقيمة ، STRINGأو INTEGER، أو DECIMAL حرفية.

الأمثلة

-- Alter the a table's table properties.
>  ALTER TABLE T SET TBLPROPERTIES(this.is.my.key = 14, 'this.is.my.key2' = false);
> SHOW TBLPROPERTIES T;
option.serialization.format     1
this.is.my.key  14
this.is.my.key2 false
transient_lastDdlTime   1649783980

إلغاء تعيين TBLPROPERTIES

إزالة خاصية جدول واحدة أو أكثر من جدول أو طريقة عرض.

بناء الجملة

UNSET TBLPROPERTIES [ IF EXISTS ] ( property_key [, ...] )

property_key
  { identifier [. ...] | string_literal }

المعلمات

  • إذا كان موجودا

    عبارة اختيارية توجه Databricks SQL لعدم رفع خطأ إذا لم يكن أي من مفاتيح الخصائص موجودا.

  • property_key

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

    مفاتيح الخصائص حساسة لحالة الأحرف. إذا property_key لم يكن موجودا وتم رفع الخطأ ما لم IF EXISTS يتم تحديده.

الأمثلة

-- Remove a table's table properties.
>  ALTER TABLE T UNSET TBLPROPERTIES(this.is.my.key, 'this.is.my.key2');
> SHOW TBLPROPERTIES T;
option.serialization.format     1
transient_lastDdlTime   1649784415

الخيارات

تعيين خيار جدول واحد أو أكثر في جدول جديد.

الغرض من خيارات الجدول هو تمرير خصائص التخزين إلى التخزين الأساسي، مثل خصائص SERDE إلى Hive.

سيؤدي تحديد خيارات الجدول لجداول Delta Lake أيضا إلى تكرار هذه الخيارات كخصائص جدول.

بناء الجملة

OPTIONS ( { property_key [ = ] property_val } [, ...] )

property_key
  { identifier [. ...] | string_literal }

المعلمات

  • property_key

    مفتاح الخاصية. يمكن أن يتكون المفتاح من معرف واحد أو أكثر مفصول بنقطة، أو سلسلة حرفية.

    يجب أن تكون مفاتيح الخصائص فريدة وأن تكون حساسة لحالة الأحرف.

  • property_val

    قيمة الخاصية . يجب أن تكون BOOLEANالقيمة ، STRINGأو INTEGER، أو DECIMAL حرفية.

    في Databricks SQL وDatabricks Runtime 13.3 LTS وما فوق property_val يمكن أن يكون تعبيرا ثابتا.

الأمثلة

-- Create table with user defined table option
-- The options appears with an `option.` prefix.
> CREATE TABLE T(c1 INT) OPTIONS(this.is.my.key = 'blue' || 'green');
> SHOW TBLPROPERTIES T;
option.this.is.my.key bluegreen
option.serialization.format     2

مفاتيح خصائص الجدول المحجوزة

يحتفظ Azure Databricks ببعض مفاتيح الخصائص لاستخدامه الخاص ويثير خطأ إذا حاولت استخدامها:

  • external

    استخدم CREATE EXTERNAL TABLE لإنشاء جدول خارجي.

  • location

    LOCATION استخدم عبارات ALTER TABLE وCREATE TABLE لتعيين موقع جدول.

  • owner

    [SET] OWNER TO استخدم عبارة ALTER TABLE وALTER VIEW لنقل ملكية جدول أو طريقة عرض. يسمح ب SET ككلمة أساسية اختيارية في Databricks SQL.

  • provider

    USING استخدم عبارة CREATE TABLE لتعيين مصدر بيانات جدول

يجب عدم استخدام مفاتيح الخصائص بدءا من option المعرف. ستتم تصفية معرف البادئة هذا في SHOW TBLPROPERTIES. تستخدم البادئة option أيضا لعرض خيارات الجدول.

مفاتيح TBLPROPERTIES و OPTIONS الشائعة

تستخدم الإعدادات التالية بشكل شائع مع Delta Lake:

  • delta.appendOnly: تعيين إلى true لتعطيل UPDATE والعمليات DELETE .
  • delta.dataSkippingNumIndexedCols: تعيين إلى عدد الأعمدة البادئة التي يجب تجميع الإحصائيات والنظر فيها.
  • delta.deletedFileRetentionDuration: تعيين إلى فاصل زمني مثل 'interval 7 days' التحكم في الوقت VACUUM المسموح فيه بحذف الملفات.
  • delta.logRetentionDuration: اضبط على فاصل زمني مثل 'interval 60 days' للتحكم في مدة الاحتفاظ بالمحفوظات لاستعلامات السفر عبر الوقت.