В чем сохранять состояния?
У меня ETL для переноса данных из PostgreSQL в ElasticSearch. Причем при добавлении данных в PostgreSQL, они должны перенестись в ElasticSearch тоже. Я думаю, для такого достаточно будет json-файла.
Где лучше всего хранить состояния?
Не уверен, что хорошей практикой будет использовать для этого json-файл, хотя вряд ли там будет более 10.000 записей. Может вместо json-файла использовать Redis? Если есть другие идеи - пишите.
Лучше всего было бы хранить в каком-нибудь таком виде:
{'key': 'value'}
Ответы (1 шт):
Как вариант, для сохранения промежуточного состояния можно использовать pickle и shelve. Риск выполнения чужого кода, о котором вспоминают в разговорах о pickle, минимизируется локальным использованием своих же pickle-файлов, доступ к которым вы можете ограничить на уровне системы.