Databricks SQL CLI
إشعار
تغطي هذه المقالة Databricks SQL CLI، والتي يتم توفيرها كما هي ولا تدعمها Databricks من خلال قنوات الدعم التقني للعملاء. يمكن توصيل الأسئلة وطلبات الميزات من خلال صفحة المشكلات في مستودع databricks/databricks-sql-cli على GitHub.
تمكنك واجهة سطر أوامر Databricks SQL (Databricks SQL CLI) من تشغيل استعلامات SQL على مستودعات Databricks SQL الموجودة لديك من الوحدة الطرفية أو موجه أوامر Windows بدلا من مواقع مثل محرر Databricks SQL أو دفتر ملاحظات Azure Databricks. من سطر الأوامر، يمكنك الحصول على ميزات الإنتاجية مثل الاقتراحات وتمييز بناء الجملة.
المتطلبات
- مستودع Databricks SQL واحد على الأقل. أنشئ مستودعا، إذا لم يكن لديك مستودع بالفعل.
- Python 3.7 أو أعلى. للتحقق مما إذا كان Python مثبتا لديك، قم بتشغيل الأمر
python --version
من المحطة الطرفية أو موجه الأوامر. (في بعض الأنظمة، قد تحتاج إلى إدخالpython3
بدلا من ذلك.) قم بتثبيت Python، إذا لم يكن مثبتا لديك بالفعل. - pip، مثبت الحزمة ل Python. تثبيت الإصدارات الأحدث من Python
pip
بشكل افتراضي. للتحقق مما إذا كنت قد قمتpip
بتثبيته، قم بتشغيل الأمرpip --version
من المحطة الطرفية أو موجه الأوامر. (في بعض الأنظمة، قد تحتاج إلى إدخالpip3
بدلا من ذلك.) تثبيت pip، إذا لم يكن لديك مثبتا بالفعل. - (اختياري) أداة مساعدة لإنشاء وإدارة بيئات Python الظاهرية، مثل venv. تساعد البيئات الظاهرية على ضمان استخدام الإصدارات الصحيحة من Python وDatabricks SQL CLI معا. إعداد البيئات الظاهرية واستخدامها خارج نطاق هذه المقالة. لمزيد من المعلومات، راجع إنشاء بيئات ظاهرية.
تثبيت Databricks SQL CLI
بعد تلبية المتطلبات، قم بتثبيت حزمة Databricks SQL CLI من فهرس حزم Python (PyPI). يمكنك استخدام pip
لتثبيت حزمة Databricks SQL CLI من PyPI عن طريق تشغيل pip
بأحد الأوامر التالية.
pip install databricks-sql-cli
# Or...
python -m pip install databricks-sql-cli
لترقية إصدار مثبت مسبقا من Databricks SQL CLI، قم بتشغيل pip
بأحد الأوامر التالية.
pip install databricks-sql-cli --upgrade
# Or...
python -m pip install databricks-sql-cli --upgrade
للتحقق من الإصدار المثبت من Databricks SQL CLI، قم بتشغيل pip
بأحد الأوامر التالية.
pip show databricks-sql-cli
# Or...
python -m pip show databricks-sql-cli
المصادقة
للمصادقة، يجب عليك تزويد Databricks SQL CLI بتفاصيل اتصال المستودع الخاص بك. على وجه التحديد، تحتاج إلى قيم اسم مضيف الخادم ومسار HTTP. يجب عليك أيضا منتج Databricks SQL CLI ببيانات اعتماد المصادقة المناسبة.
يدعم Databricks SQL CLI الرموز المميزة للوصول الشخصي ل Databricks (PATs). لاستخدام مصادقة AZURE Databricks PAT، يجب إنشاء رمز وصول شخصي. للحصول على تفاصيل حول هذه العملية، راجع مصادقة رمز الوصول الشخصي Azure Databricks.
الرموز المميزة لمعرف Microsoft Entra غير مدعومة.
يمكنك توفير معلومات المصادقة هذه إلى Databricks SQL CLI بعدة طرق:
- في
dbsqlclirc
ملف الإعدادات في موقعه الافتراضي (أو عن طريق تحديد ملف إعدادات بديل من خلال الخيار في--clirc
كل مرة تقوم فيها بتشغيل أمر باستخدام Databricks SQL CLI). راجع ملف الإعدادات. - عن طريق تعيين
DBSQLCLI_HOST_NAME
DBSQLCLI_HTTP_PATH
متغيرات البيئة وDBSQLCLI_ACCESS_TOKEN
. راجع متغيرات البيئة. - عن طريق تحديد
--hostname
الخيارات و--http-path
و في--access-token
كل مرة تقوم فيها بتشغيل أمر باستخدام Databricks SQL CLI. راجع خيارات الأمر.
إشعار
dbsqlclirc
يجب أن يكون ملف الإعدادات موجودا، حتى إذا قمت بتعيين متغيرات البيئة السابقة أو تحديد خيارات الأمر السابقة أو كليهما.
كلما قمت بتشغيل Databricks SQL CLI، فإنه يبحث عن تفاصيل المصادقة بالترتيب التالي ويتوقف عند العثور على المجموعة الأولى من التفاصيل:
--hostname
--http-path
الخيارات و و--access-token
.DBSQLCLI_HOST_NAME
DBSQLCLI_HTTP_PATH
متغيرات البيئة و وDBSQLCLI_ACCESS_TOKEN
.dbsqlclirc
ملف الإعدادات في موقعه الافتراضي (أو ملف إعدادات بديل يحدده--clirc
الخيار).
ملف الإعدادات
لاستخدام dbsqlclirc
ملف الإعدادات لتزويد Databricks SQL CLI بتفاصيل المصادقة لمستودع Databricks SQL، قم بتشغيل Databricks SQL CLI لأول مرة، كما يلي:
dbsqlcli
يقوم Databricks SQL CLI بإنشاء ملف إعدادات لك، في ~/.dbsqlcli/dbsqlclirc
Unix وLinux وmacOS وفي %HOMEDRIVE%%HOMEPATH%\.dbsqlcli\dbsqlclirc
أو %USERPROFILE%\.dbsqlcli\dbsqlclirc
على Windows. لتخصيص هذا الملف:
استخدم محرر نص لفتح الملف وتحريره
dbsqlclirc
.قم بالتمرير إلى القسم التالي:
# [credentials] # host_name = "" # http_path = "" # access_token = ""
قم بإزالة الأحرف الأربعة
#
، و:- بجوار
host_name
، أدخل قيمة اسم مضيف خادم المستودع الخاص بك من المتطلبات بين الأحرف""
. - بجوار
http_path
، أدخل قيمة مسار HTTP للمستودع الخاص بك من المتطلبات بين الأحرف""
. - بجوار
access_token
، أدخل قيمة الرمز المميز للوصول الشخصي من المتطلبات بين الأحرف""
.
على سبيل المثال:
[credentials] host_name = "adb-12345678901234567.8.azuredatabricks.net" http_path = "/sql/1.0/warehouses/1abc2d3456e7f890a" access_token = "dapi12345678901234567890123456789012"
- بجوار
احفظ الملف
dbsqlclirc
.
بدلا من ذلك، بدلا من استخدام dbsqlclirc
الملف في موقعه الافتراضي، يمكنك تحديد ملف في موقع مختلف عن طريق إضافة --clirc
خيار الأمر والمسار إلى الملف البديل. يجب أن تتوافق محتويات هذا الملف البديل مع بناء الجملة السابق.
متغيرات البيئة
لاستخدام DBSQLCLI_HOST_NAME
DBSQLCLI_HTTP_PATH
متغيرات البيئة و و DBSQLCLI_ACCESS_TOKEN
لتزويد Databricks SQL CLI بتفاصيل المصادقة لمستودع Databricks SQL، قم بما يلي:
Unix وLinux وmacOS
لتعيين متغيرات البيئة لجلسة المحطة الطرفية الحالية فقط، قم بتشغيل الأوامر التالية. لتعيين متغيرات البيئة لجميع جلسات المحطة الطرفية، أدخل الأوامر التالية في ملف بدء تشغيل shell ثم أعد تشغيل المحطة الطرفية. في الأوامر التالية، استبدل قيمة:
DBSQLCLI_HOST_NAME
مع قيمة اسم مضيف خادم المستودع الخاص بك من المتطلبات.DBSQLCLI_HTTP_PATH
مع قيمة مسار HTTP لمستودعك من المتطلبات.DBSQLCLI_ACCESS_TOKEN
مع قيمة الرمز المميز للوصول الشخصي من المتطلبات.
export DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
export DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
export DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"
Windows
لتعيين متغيرات البيئة لجلسة موجه الأوامر الحالية فقط، قم بتشغيل الأوامر التالية، واستبدل قيمة:
DBSQLCLI_HOST_NAME
مع قيمة اسم مضيف خادم المستودع الخاص بك من المتطلبات.DBSQLCLI_HTTP_PATH
مع قيمة مسار HTTP لمستودعك من المتطلبات.DBSQLCLI_ACCESS_TOKEN
مع قيمة الرمز المميز للوصول الشخصي من المتطلبات.:
set DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
set DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
set DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"
لتعيين متغيرات البيئة لكافة جلسات موجه الأوامر، قم بتشغيل الأوامر التالية ثم أعد تشغيل موجه الأوامر، واستبدل قيمة:
DBSQLCLI_HOST_NAME
مع قيمة اسم مضيف خادم المستودع الخاص بك من المتطلبات.DBSQLCLI_HTTP_PATH
مع قيمة مسار HTTP لمستودعك من المتطلبات.DBSQLCLI_ACCESS_TOKEN
مع قيمة الرمز المميز للوصول الشخصي من المتطلبات.
setx DBSQLCLI_HOST_NAME "adb-12345678901234567.8.azuredatabricks.net"
setx DBSQLCLI_HTTP_PATH "/sql/1.0/warehouses/1abc2d3456e7f890a"
setx DBSQLCLI_ACCESS_TOKEN "dapi12345678901234567890123456789012"
خيارات الأوامر
لاستخدام --hostname
--http-path
الخيارات و و --access-token
لتزويد Databricks SQL CLI بتفاصيل المصادقة لمستودع Databricks SQL، قم بما يلي:
قم بما يلي في كل مرة تقوم فيها بتشغيل أمر باستخدام Databricks SQL CLI:
--hostname
حدد الخيار وقيمة اسم مضيف خادم المستودع الخاص بك من المتطلبات.- حدد الخيار وقيمة
--http-path
مسار HTTP للمستودع الخاص بك من المتطلبات. - حدد الخيار وقيمة
--access-token
الرمز المميز للوصول الشخصي من المتطلبات.
على سبيل المثال:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" \
--hostname "adb-12345678901234567.8.azuredatabricks.net" \
--http-path "/sql/1.0/warehouses/1abc2d3456e7f890a" \
--access-token "dapi12345678901234567890123456789012"
مصادر الاستعلام
يمكنك Databricks SQL CLI من تشغيل الاستعلامات بالطرق التالية:
- من سلسلة استعلام.
- من ملف.
- في نهج حلقة القراءة والتقييم والطباعة (REPL). يوفر هذا الأسلوب اقتراحات أثناء الكتابة.
سلسلة الاستعلام
لتشغيل استعلام كسلسلة، استخدم -e
الخيار متبوعا بالاستعلام، ممثلا كسلسلة. على سبيل المثال:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2"
إخراج:
_c0,carat,cut,color,clarity,depth,table,price,x,y,z
1,0.23,Ideal,E,SI2,61.5,55,326,3.95,3.98,2.43
2,0.21,Premium,E,SI1,59.8,61,326,3.89,3.84,2.31
لتبديل تنسيقات الإخراج، استخدم --table-format
الخيار مع قيمة مثل ascii
تنسيق جدول ASCII، على سبيل المثال:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" --table-format ascii
إخراج:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
للحصول على قائمة بقيم تنسيق الإخراج المتوفرة، راجع تعليقات table_format
الإعداد في dbsqlclirc
الملف.
الملف
لتشغيل ملف يحتوي على SQL، استخدم -e
الخيار متبوعا بالمسار إلى .sql
ملف. على سبيل المثال:
dbsqlcli -e my-query.sql
محتويات ملف المثال my-query.sql
:
SELECT * FROM default.diamonds LIMIT 2;
إخراج:
_c0,carat,cut,color,clarity,depth,table,price,x,y,z
1,0.23,Ideal,E,SI2,61.5,55,326,3.95,3.98,2.43
2,0.21,Premium,E,SI1,59.8,61,326,3.89,3.84,2.31
لتبديل تنسيقات الإخراج، استخدم --table-format
الخيار مع قيمة مثل ascii
تنسيق جدول ASCII، على سبيل المثال:
dbsqlcli -e my-query.sql --table-format ascii
إخراج:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
للحصول على قائمة بقيم تنسيق الإخراج المتوفرة، راجع تعليقات table_format
الإعداد في dbsqlclirc
الملف.
REPL
لإدخال وضع حلقة القراءة-التقييم-الطباعة (REPL) المحدد في قاعدة البيانات الافتراضية، قم بتشغيل الأمر التالي:
dbsqlcli
يمكنك أيضا إدخال وضع REPL المحدد في قاعدة بيانات معينة، عن طريق تشغيل الأمر التالي:
dbsqlcli <database-name>
على سبيل المثال:
dbsqlcli default
للخروج من وضع REPL، قم بتشغيل الأمر التالي:
exit
في وضع REPL، يمكنك استخدام الأحرف والمفاتيح التالية:
- استخدم الفاصلة المنقطة (
;
) لإنهاء سطر. - استخدم F3 لتبديل الوضع متعدد الأسطر.
- استخدم مفتاح المسافة لإظهار الاقتراحات عند نقطة الإدراج، إذا لم تكن الاقتراحات معروضة بالفعل.
- استخدم السهمين لأعلى ولأسفل للتنقل بين الاقتراحات.
- استخدم السهم الأيمن لإكمال الاقتراح المميز.
على سبيل المثال:
dbsqlcli default
hostname:default> SELECT * FROM diamonds LIMIT 2;
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
2 rows in set
Time: 0.703s
hostname:default> exit
تسجيل الدخول
يسجل Databricks SQL CLI رسائله إلى الملف ~/.dbsqlcli/app.log
بشكل افتراضي. لتغيير اسم الملف أو الموقع هذا، قم بتغيير قيمة log_file
الإعداد في dbsqlclirc
ملف الإعدادات.
بشكل افتراضي، يتم تسجيل الرسائل على INFO
مستوى السجل وما دونه. لتغيير مستوى السجل هذا، قم بتغيير قيمة log_level
الإعداد في dbsqlclirc
ملف الإعدادات. تتضمن CRITICAL
قيم مستوى السجل المتوفرة و WARNING
ERROR
INFO
و و و DEBUG
و يتم تقييمها بهذا الترتيب. NONE
يعطل التسجيل.