Перейти к основному содержанию
DataStore позволяет тонко управлять выполнением на уровне функций, включая выбор движка и коррекцию Dtype.

Настройка Function Engine

Переопределите движок выполнения для отдельных функций.

Настройка Function Engines

Когда использовать

Принудительно использовать chdb для:
  • Функций, которые работают быстрее в ClickHouse
  • Функций, выигрывающих от SQL-оптимизации
  • Масштабных операций со строками и датой/временем
Принудительно использовать pandas для:
  • Функций с поведением, специфичным для pandas
  • Случаев, когда требуется точная совместимость с pandas
  • Пользовательских операций со строками

Пример


Общие функции

Более 159 функций доступны в обоих движках — chdb и pandas: Для общих функций движок выбирается на основе:
  1. Явной конфигурации функции (если задана)
  2. Глобальной настройки execution_engine
  3. Автоматического выбора по контексту

Функции, доступные только в chdb

Некоторые функции доступны только через ClickHouse: Эти функции автоматически используют движок chdb независимо от конфигурации.

Функции, доступные только в pandas

Некоторые функции доступны только через pandas: Эти функции автоматически используют движок pandas независимо от конфигурации.

Коррекция dtype

Настройте, как DataStore корректирует типы данных между движками.

Уровни коррекции

Подробное описание уровней коррекции

Когда требуется корректировка типов

Различия в типах могут возникать в следующих случаях:
  1. ClickHouse → pandas: Разный размер целочисленных типов (Int64 vs int64)
  2. pandas → ClickHouse: Преобразование объектов Python в SQL-типы
  3. Обработка NULL: pandas NA vs ClickHouse NULL
  4. булевый: Различные представления логических значений
  5. дата и время: Различия в часовых поясах

Пример


API конфигурации функции

Объект function_config

Переопределение на уровне отдельного вызова

Некоторые методы поддерживают переопределение движка на уровне отдельного вызова:

Рекомендации

1. Начните с настроек по умолчанию

2. Настройте для конкретных рабочих нагрузок

3. Выберите подходящий уровень коррекции

4. Протестируйте оба движка

Последнее изменение 2 июля 2026 г.