Выбор API для Databricks
| Статус Unity Catalog | Рекомендуемый API | Примечания |
|---|---|---|
| Включен (по умолчанию) | TableProvider API (доступ на основе формата) | Unity Catalog блокирует регистрацию каталога Spark |
| Отключен (No isolation shared) | Catalog API | Требуется кластер с режимом доступа “No isolation shared” |
Установка в Databricks
Вариант 1: Загрузка JAR через интерфейс Databricks
-
Соберите или скачайте runtime JAR-файл:
-
Загрузите JAR-файл в рабочее пространство Databricks:
- Перейдите в Workspace → Откройте нужную папку
- Нажмите Upload → Выберите JAR-файл
- JAR-файл будет сохранён в рабочем пространстве
-
Установите библиотеку на кластер:
- Перейдите в Compute → Выберите кластер
- Откройте вкладку Libraries
- Нажмите Install New
- Выберите DBFS или Workspace → Перейдите к загруженному JAR-файлу
- Нажмите Install
- Перезапустите кластер, чтобы загрузить библиотеку
Вариант 2: Установите через Databricks CLI
Вариант 3: координаты Maven (рекомендуется)
-
Перейдите в рабочее пространство Databricks:
- Перейдите в Compute → выберите кластер
- Откройте вкладку Libraries
- Нажмите Install New
- Выберите вкладку Maven
- Добавьте координаты Maven:
- Нажмите Install и перезапустите кластер, чтобы загрузить библиотеку
Использование TableProvider API
Чтение данных
- Python
- Scala
Запись данных
- Python
- Scala
В этом примере предполагается, что в Databricks уже настроены secret scopes. Инструкции по настройке см. в документации Databricks по управлению секретами.
Особенности Databricks
Требования к режиму доступа
| Режим доступа | Unity Catalog | Поддерживается |
|---|---|---|
| Dedicated (Single User) | Включен | ✅ Да |
| Dedicated (Single User) | Отключен | ✅ Да |
| Standard (Shared) | Включен | ❌ Нет |
| Standard (Shared) | Отключен | ✅ Да |
Управление секретами
Подключение к ClickHouse Cloud
- Используйте протокол HTTPS (
protocol: https,http_port: 8443) - Включите SSL (
ssl: true)
Примеры
Полный пример рабочего процесса
- Python
- Scala
- Руководство по Spark Native Connector - Полная документация по коннектору
- Документация по TableProvider API - Подробная информация о доступе на основе формата
- Документация по Catalog API - Подробная информация о доступе через каталог