Миграция данных с 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 имеется несколько клиентов)