Миграция данных с MongoDB
Для того, чтобы совершить миграцию с Viewstats на MiStats необходимо:
- Скачать скрипт
migrate_from_viewstats.pyиз личного кабинета оператора - После скачивания перенести файл в папку
/usr/share/microimpuls/mistats/backend/ - Заполнить переменные внутри скрипта миграции по примеру ниже:
# название БД в Mongo MONGODB_NAME="smarty" # хост MongoDB MONGODB_HOST="127.0.0.1" # порт MongoDB MONGODB_PORT=27017 # название коллекции с данными телесмотрения в MongoDB MONGODB_COLLECTION="reports" # размер одной порции записей при переносе данных (если MongoDB падает по таймауту, то можно уменьшить объем данной порции) MONGO_LIMIT=100000
- Скачать Python-библиотеку PyMongo:
pip install pymongo
- Запустить миграцию данных с помощью команды:
sudo python migrate_from_viewstats.py --copy --database=smarty_stats
Дополнительные параметры команды:
--copy— опция для копирования данных из MongoDB в ClickHouse--database— опция для указания в какую БД ClickHouse переносить данные--delete— удаляет БД в ClickHouse. Работает только с опцией--database, игнорируя другие опции. Требуется для повторного импорта данных из MongoDB в ClickHouse.--count— выводит количество данных в MongoDB. Может понадобиться для изменения переменнойMONGO_LIMITв скриптеmigrate_from_viewstats.py--client_id— опция для указания Client ID (для возможности импорта или подсчета данных по конкретному client_id, а не по всем сразу. Полезно, когда в Smarty имеется несколько клиентов)