DataLakeCatalog مع catalog_type = 'horizon'.
يرتبط Horizon بـ Snowflake Open Catalog / Polaris المستضاف ذاتيًا، لكنه يختلف عنهما:
بما أن هذه الميزة في مرحلة Beta، فعّلها باستخدام:
SET allow_experimental_database_iceberg = 1;
(أو SET allow_database_iceberg = 1;، حسب إصدار ClickHouse لديك).المتطلبات المسبقة
- حساب Snowflake يتضمن جداول Iceberg مُدارة من Snowflake
- نقطة نهاية Horizon Iceberg REST:
https://<organization>-<account>.snowflakecomputing.com/polaris/api/catalog - دور في Snowflake لديه امتيازات على جداول Iceberg (وامتيازات كتابة إذا كنت ستنفذ INSERT)
- المصادقة باستخدام أحد الخيارات التالية:
- رمز وصول برمجي (PAT)
- JWT لزوج مفاتيح يُستبدل برمز وصول
- رمز وصول OAuth خارجي (كرمز حامل في
auth_header)
- تخزين كائنات يمكن لـ ClickHouse الوصول إليه (يُنصح باستخدام بيانات اعتماد موفَّرة)
- ClickHouse مع دعم DataLakeCatalog لـ Iceberg
إنشاء اتصال
الخيار أ: رمز وصول برمجي (موصى به)
warehouse اسم قاعدة البيانات في Snowflake (وليس مستودع Snowflake افتراضيًا).
تُكتب معرّفات Snowflake غير المقتبسة بأحرف كبيرة.
الخيار ب: رمز وصول للحامل تم تبادله مسبقًا
الاستعلام عن جداول Iceberg
يُشار عادةً إلى مساحة الاسم (المخطط) والجدول بالصيغة
`SCHEMA.table`، ما لم
تكن مساحات أسماء الجداول التجريبية مفعّلة.مسار الكتابة
CREATE TABLE الدقيقة على دعم ClickHouse Iceberg / DataLakeCatalog للكتابة في كتالوجات REST
في إصدارك؛ وتظهر حالات فشل الامتيازات من Snowflake كأخطاء HTTP للكتالوج.