NativeWriter¶
- class NativeWriter(column_list, block_size=DEFAULT_BLOCK_SIZE)¶
- Параметры:
column_list (list[Column]) – Список колонок для записи
block_size (int) – Максимальный размер блока
Основной класс для записи данных в ClickHouse Native формат.
Описание:
Преобразует данные из различных источников (Python строки, pandas/polars DataFrame) в Native формат ClickHouse. Поддерживает потоковую запись с контролем размера блоков.
Атрибуты:
- total_blocks: int¶
Количество записанных блоков данных.
- total_rows: int¶
Общее количество записанных строк.
Методы:
- from_rows(dtype_data)¶
- Параметры:
dtype_data (Iterable[Any]) – Итерируемый объект с данными
- Результат:
Генератор блоков в Native формате
- Тип результата:
Generator[bytes, None, None]
Потоковое преобразование Python строк в Native формат.
- from_pandas(data_frame)¶
- Параметры:
data_frame (pandas.DataFrame) – DataFrame pandas
- Результат:
Генератор блоков в Native формате
- Тип результата:
Generator[bytes, None, None]
Конвертация pandas DataFrame в Native формат.
- from_polars(data_frame)¶
- Параметры:
data_frame (polars.DataFrame) – DataFrame polars
- Результат:
Генератор блоков в Native формате
- Тип результата:
Generator[bytes, None, None]
Конвертация polars DataFrame в Native формат.
Строковое представление:
При выводе в консоли показывает таблицу с информацией о колонках:
<Clickhouse Native dump writer>
┌─────────────────┬─────────────────┐
│ Column Name │ Clickhouse Type │
╞═════════════════╪═════════════════╡
│ id │ Int32 │
├─────────────────┼─────────────────┤
│ name │ String │
└─────────────────┴─────────────────┘
Total columns: 2
Total blocks: 0
Total rows: 0
Использование:
Для подготовки данных к записи в ClickHouse через Native формат.