Warning: file_put_contents(aCache/aDaily/post/BDataScienceM/--): Failed to open stream: No space left on device in /var/www/tgoop/post.php on line 50
ML-легушька@BDataScienceM P.2381
BDATASCIENCEM Telegram 2381
Делимся опытом: ML System Design для анализа коротких видео[2/3]
Теперь поговорим о том, какое итоговое решение с точки зрения инфраструктуры и коммуникаций у меня получилось.
Есть бэкэнд и фронтенд, на котором записывается видео, дальше видео кладется в google cloud bucket, который через gcfuse присоединен к машинке с Tesla T4, на которой мы будем разворачивать наш сервис. Машинка тоже гугловая, соответственно задержка между попаданием видео в бакет и на машинку очень маленькая. Почему не сразу стримить на машинку? Впадлу стыковать все это дело, к тому же бакет расширяется легче чем машинка, и через такое подключение питон может читать всю информацию будто с жесткого диска.
Информация обо всей аналитике и вообще все хранится в MongoDB, соответственно там есть коллекция под эти видео. Как только видео загружается, в записи, соответствующей видео, ставится статус UPLOADED, то есть оно полностью загружено на бакет и готово к использованию.
Что происходит на машинке? Запускается питоновский скрипт, который инициализирует два типа multiprocessing воркеров - один воркер мониторит MongoDB через pymongo на предмет новых записей, и все новые видео кладет в очередь на обработку. Другие воркеры - экземпляры пайплайна обработки, они обрабатывают видео и отправляют информацию в MongoDB о том, что видео обработано, вместе с результатами обработки, и посылают запрос в следующий сервис, который уже отдельно обрабатывает текст, извлеченный из видео, и говорит бэку что можно забрать результаты. Питоновский multiprocessing имеет ограничения, однако его было достаточно, плюс в случае запуска множества питоновских скриптов подобного типа могли возникать проблемы синхронизации, и пришлось бы дописывать балансировщик, который будет раскидывать задачи, что дополнительная попоболь, особенно для меня, который не сильно до этого упарывался с инфраструктурой, а сроки-то поджимают.
Если вы гуру систем дезигна, можете кинуть в меня помидорами в комментариях и предложить конструктивные улучшения. Также прикладываю картинку для легкости восприятия.
21🤮3🤡2



tgoop.com/BDataScienceM/2381
Create:
Last Update:

Делимся опытом: ML System Design для анализа коротких видео[2/3]
Теперь поговорим о том, какое итоговое решение с точки зрения инфраструктуры и коммуникаций у меня получилось.
Есть бэкэнд и фронтенд, на котором записывается видео, дальше видео кладется в google cloud bucket, который через gcfuse присоединен к машинке с Tesla T4, на которой мы будем разворачивать наш сервис. Машинка тоже гугловая, соответственно задержка между попаданием видео в бакет и на машинку очень маленькая. Почему не сразу стримить на машинку? Впадлу стыковать все это дело, к тому же бакет расширяется легче чем машинка, и через такое подключение питон может читать всю информацию будто с жесткого диска.
Информация обо всей аналитике и вообще все хранится в MongoDB, соответственно там есть коллекция под эти видео. Как только видео загружается, в записи, соответствующей видео, ставится статус UPLOADED, то есть оно полностью загружено на бакет и готово к использованию.
Что происходит на машинке? Запускается питоновский скрипт, который инициализирует два типа multiprocessing воркеров - один воркер мониторит MongoDB через pymongo на предмет новых записей, и все новые видео кладет в очередь на обработку. Другие воркеры - экземпляры пайплайна обработки, они обрабатывают видео и отправляют информацию в MongoDB о том, что видео обработано, вместе с результатами обработки, и посылают запрос в следующий сервис, который уже отдельно обрабатывает текст, извлеченный из видео, и говорит бэку что можно забрать результаты. Питоновский multiprocessing имеет ограничения, однако его было достаточно, плюс в случае запуска множества питоновских скриптов подобного типа могли возникать проблемы синхронизации, и пришлось бы дописывать балансировщик, который будет раскидывать задачи, что дополнительная попоболь, особенно для меня, который не сильно до этого упарывался с инфраструктурой, а сроки-то поджимают.
Если вы гуру систем дезигна, можете кинуть в меня помидорами в комментариях и предложить конструктивные улучшения. Также прикладываю картинку для легкости восприятия.

BY ML-легушька




Share with your friend now:
tgoop.com/BDataScienceM/2381

View MORE
Open in Telegram


Telegram News

Date: |

Don’t publish new content at nighttime. Since not all users disable notifications for the night, you risk inadvertently disturbing them. The court said the defendant had also incited people to commit public nuisance, with messages calling on them to take part in rallies and demonstrations including at Hong Kong International Airport, to block roads and to paralyse the public transportation system. Various forms of protest promoted on the messaging platform included general strikes, lunchtime protests and silent sit-ins. Matt Hussey, editorial director at NEAR Protocol also responded to this news with “#meIRL”. Just as you search “Bear Market Screaming” in Telegram, you will see a Pepe frog yelling as the group’s featured image. The Channel name and bio must be no more than 255 characters long In 2018, Telegram’s audience reached 200 million people, with 500,000 new users joining the messenger every day. It was launched for iOS on 14 August 2013 and Android on 20 October 2013.
from us


Telegram ML-легушька
FROM American