powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
7 сообщений из 7, страница 1 из 1
В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
    #40004771
SeriyVolk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть у меня очень большие данные, которые скорее всего прочитать в Python будет невозможно (>100 ГБ текста). Решил сначала уменьшить этот объем в быстром С++ (скомпоновав данные нужным образом), а потом читать их из Python (и делать анализ этих данных).

Не хочу использовать СУБД, поскольку она замедляет получение данных, поэтому смотрю в сторону двоичных файлов.

В каком виде лучше всего сохранить данные в файлах, если основным критерием является их максимально быстрое чтение из Python (я один раз сформируют эти файлы, а потом тысячу раз буду их читать, вращая так и сяк)?
...
Рейтинг: 0 / 0
В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
    #40004964
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeriyVolk,

а посмотрите в сторону Apache Spark, возможно вам Питон даже не будет нужен. Спарк поддерживает АПИ на Scala, Java и Python.
Нативный язык - Скала, но по-большому счету, там без разницы на чем писать, т.к Спарк все конвертируе и оптимизирует под свой внутренний движок. Возможная сложность: создание и подключение своего кластерного хранилища данных, но если машина у вас мощная и многоядерная, то вполне возможно, что все и так заработает и с хорошей скоростью.
...
Рейтинг: 0 / 0
В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
    #40004983
SeriyVolk
В каком виде лучше всего сохранить данные в файлах, если основным критерием является их максимально быстрое чтение из Python (я один раз сформируют эти файлы, а потом тысячу раз буду их читать, вращая так и сяк)?

множество мелких (относительно) файлов, разложенных по директориям, чтобы не более 1000 файлов на диру
чем больше текста в одном файле, тем меньше придётся обращаться к диску, чтобы их открывать
но при этом надо не потерять гибкость, если там разные файлы по-разному надо компоновать (например они куски одной таблицы, которая может быть собрана по-разному).
...
Рейтинг: 0 / 0
В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
    #40004990
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020
SeriyVolk
В каком виде лучше всего сохранить данные в файлах, если основным критерием является их максимально быстрое чтение из Python (я один раз сформируют эти файлы, а потом тысячу раз буду их читать, вращая так и сяк)?

множество мелких (относительно) файлов, разложенных по директориям, чтобы не более 1000 файлов на диру
чем больше текста в одном файле, тем меньше придётся обращаться к диску, чтобы их открывать
но при этом надо не потерять гибкость, если там разные файлы по-разному надо компоновать (например они куски одной таблицы, которая может быть собрана по-разному).


преимущество Spark в том, что он все разбиение/распределение данных по кластерам сделает за вас и, более того, все данные будут обрабатываться in-memory.
...
Рейтинг: 0 / 0
В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
    #40005000
по каким ещё кластерам? 100гб - это 2% от диска на 5TB
а где он возьмёт >100 гб memory?
...
Рейтинг: 0 / 0
В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
    #40005037
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза 2020,

по машинам, объединенным в кластер, если выражаться правильно и точно :)
просто я хочу сказать, что под хотелку ТСа уже существует готовый фреймворк для распределенных вычислений на больших объемах данных и это Апач Спарк. Спарк работает по модели master->workers и распределяет нагрузку по машинам кластера, и 100 Гб здесь не проблема. И вообще думаю, что для обработки 100Гб данных можно обойтись одним мощным десктопом.
...
Рейтинг: 0 / 0
В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
    #40005066
ну а я о чём написал?
ты ему предлагаешь кластер купить чтоли, когда там дел на 2% от средненького диска
лучше уж в БД положить, откуда чем угодно забирать нужные данные и считать конкретно их, а не все разом (так обычно не бывает)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / В каких объектах сохранить данные в файлах из С++ программы, чтобы быстро читать в Python?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]