Я имею дело с объектами Python, содержащими объекты Pandas DataFrame и Numpy Series. Это могут быть большие строки, несколько миллионов строк.
Например:
Код: Выделить всё
@dataclass
class MyWorld:
# A lot of DataFrames with millions of rows
samples: pd.DataFrame
addresses: pd.DataFrame
# etc.
Мне нужно кэшировать эти объекты, и я надеюсь найти эффективный и безболезненный способ их сериализации вместо стандартного Pickle.dump(). Существуют ли какие-либо специализированные сериализаторы Python для таких объектов, которые автоматически собирали бы данные Series с помощью какого-либо эффективного кодека и сжатия? В качестве альтернативы мне нужно вручную создать несколько файлов Parquet, но для этого потребуется много ручного кода, и я бы предпочел избежать этого, если это возможно.
Производительность здесь может означать
- Скорость
Размер файла (может быть связан, так как вам нужно меньше читать с диска/сети)< /li>
Мне известен метод joblib.dump(), который творит некоторые магические действия с объектами такого типа, но, основываясь на документации, я не уверен, актуально ли это сейчас.
Подробнее здесь:
https://stackoverflow.com/questions/790 ... andas-data