Почему DataStore работает быстрее
1. SQL Pushdown
2. Отсечение столбцов
3. Отложенное вычисление
Бенчмарк: DataStore и pandas
Тестовая среда
- Данные: 10 миллионов строк
- Оборудование: стандартный ноутбук
- Формат файла: CSV
Результаты
Ключевые выводы
- Операции GroupBy: DataStore до 19,93 раза быстрее
- Сложные конвейеры: DataStore в 5–6 раз быстрее (за счёт SQL pushdown)
- Простые операции среза: Производительность сопоставима — разность незначительна
- Лучший сценарий использования: Многошаговые операции с GroupBy/агрегацией
- Zero-copy:
to_df()работает без накладных расходов на преобразование данных
Когда DataStore предпочтительнее
Ресурсоемкие агрегации
Сложные конвейеры
Обработка больших файлов
Операции над несколькими столбцами
Когда производительность pandas сопоставима
Небольшие наборы данных (<1,000 строк)
Простые операции среза
Пользовательские лямбда-функции Python
ВажноДаже в сценариях, где DataStore работает «медленнее», производительность обычно сопоставима с pandas — для практического использования разница пренебрежимо мала. Преимущества DataStore при сложных операциях с лихвой перевешивают такие редкие случаи.Для более тонкой настройки выполнения см. Настройка движка выполнения.
Интеграция DataFrame с поддержкой zero-copy
to_df()практически ничего не стоит — без сериализации и копирования данных в памяти- Создание DataStore из pandas DataFrame происходит мгновенно
- Память используется совместно между DataStore и представлениями pandas