الانتقال إلى المحتوى الرئيسي

الوصف

تقرأ تنسيقات RawBLOB جميع بيانات الإدخال كقيمة واحدة. ولا يمكن تحليل إلا جدول يحتوي على حقل واحد من النوع String أو نوع مشابه. ويُخرَج الناتج بتنسيق ثنائي من دون فواصل أو محارف إفلات. وإذا أُخرجت أكثر من قيمة واحدة، يصبح التنسيق ملتبسًا، ويستحيل قراءة البيانات مرة أخرى.

مقارنة التنسيقات الخام

فيما يلي مقارنة بين التنسيقين RawBLOB وTabSeparatedRaw. RawBLOB:
  • تُخرَج البيانات بتنسيق ثنائي، من دون أي إفلات؛
  • لا توجد فواصل بين القيم؛
  • لا يوجد سطر جديد في نهاية كل قيمة.
TabSeparatedRaw:
  • تُخرَج البيانات من دون أي إفلات؛
  • تحتوي الصفوف على قيم مفصولة بعلامات تبويب؛
  • يوجد محرف line feed بعد آخر قيمة في كل صف.
فيما يلي مقارنة بين التنسيقين RawBLOB وRowBinary. RawBLOB:
  • تُخرَج حقول String من دون أن يُسبَق كلٌّ منها بالطول.
RowBinary: عند تمرير بيانات فارغة إلى مُدخل RawBLOB، يرمي ClickHouse استثناءً:
Code: 108. DB::Exception: No data to insert

مثال للاستخدام

Query
$ clickhouse-client --query "CREATE TABLE {some_table} (a String) ENGINE = Memory;"
$ cat {filename} | clickhouse-client --query="INSERT INTO {some_table} FORMAT RawBLOB"
$ clickhouse-client --query "SELECT * FROM {some_table} FORMAT RawBLOB" | md5sum
Response
f9725a22f9191e064120d718e26862a9  -

إعدادات التنسيق

آخر تعديل في ٢٩ يونيو ٢٠٢٦