#system #design #lambda_architecture #big #data
Lambda Architecture (LA) - способ обработки больших данных используя распределенные системы, когда вам нужно, скажем, проиндексировать ваши данные тем или иным способом. Например, посчитать какой из документов у вас более просматриваемый.
На огромном датасете в несколько терабайт ежедневно обычный алгоритм вам точно не подойет. Используя Ламбда Архитектуру можно удовлетворить необходимость запрашивать у системы самые просматриваемые документы (скажем видео на ютуб) в разрезе последних 5 минут или нескольких дней/месяцев.
У каждого способа есть свои плюсы и минусы в точности и скорости, но мы всегда можем их объеденить.
Для этого мы отправляем данные для обработки двумя параллельными процессам: быстрый/speed layer (неточный) и комплексный/batch layer (точнее).
Speed layer работает с данными за короткий период (скажем минута, 5 минут), в то время как, Batch Layer обрабатывает большее количество данных сагрегированных за более длительный период (скажем за час).
Когда клиент дергает данные, то сервис (serving layer) объединяет результат работы обоих процессов.
Почитать можно, например, тут:
https://jameskinley.tumblr.com/post/37398560534/the-lambda-architecture-principles-for
с указанием возможных технологий для релизации
В этом видео автор блестяще раскрывает как, используя эту архитектуру, можно решить поставленную задачу:
https://www.youtube.com/watch?v=kx-XDoPjoHw
Lambda Architecture (LA) - способ обработки больших данных используя распределенные системы, когда вам нужно, скажем, проиндексировать ваши данные тем или иным способом. Например, посчитать какой из документов у вас более просматриваемый.
На огромном датасете в несколько терабайт ежедневно обычный алгоритм вам точно не подойет. Используя Ламбда Архитектуру можно удовлетворить необходимость запрашивать у системы самые просматриваемые документы (скажем видео на ютуб) в разрезе последних 5 минут или нескольких дней/месяцев.
У каждого способа есть свои плюсы и минусы в точности и скорости, но мы всегда можем их объеденить.
Для этого мы отправляем данные для обработки двумя параллельными процессам: быстрый/speed layer (неточный) и комплексный/batch layer (точнее).
Speed layer работает с данными за короткий период (скажем минута, 5 минут), в то время как, Batch Layer обрабатывает большее количество данных сагрегированных за более длительный период (скажем за час).
Когда клиент дергает данные, то сервис (serving layer) объединяет результат работы обоих процессов.
Почитать можно, например, тут:
https://jameskinley.tumblr.com/post/37398560534/the-lambda-architecture-principles-for
с указанием возможных технологий для релизации
В этом видео автор блестяще раскрывает как, используя эту архитектуру, можно решить поставленную задачу:
https://www.youtube.com/watch?v=kx-XDoPjoHw
#interview #system #design
Are you preparing for system design interviews? This list can help you master this skills
https://github.com/binhnguyennus/awesome-scalability
Are you preparing for system design interviews? This list can help you master this skills
https://github.com/binhnguyennus/awesome-scalability
GitHub
GitHub - binhnguyennus/awesome-scalability: The Patterns of Scalable, Reliable, and Performant Large-Scale Systems
The Patterns of Scalable, Reliable, and Performant Large-Scale Systems - binhnguyennus/awesome-scalability
#ML #System #Design
This booklet covers four main steps of designing a machine learning system:
Project setup
Data pipeline
Modeling: selecting, training, and debugging
Serving: testing, deploying, and maintaining
https://github.com/chiphuyen/machine-learning-systems-design
This booklet covers four main steps of designing a machine learning system:
Project setup
Data pipeline
Modeling: selecting, training, and debugging
Serving: testing, deploying, and maintaining
https://github.com/chiphuyen/machine-learning-systems-design
GitHub
GitHub - chiphuyen/machine-learning-systems-design: A booklet on machine learning systems design with exercises. NOT the repo for…
A booklet on machine learning systems design with exercises. NOT the repo for the book "Designing Machine Learning Systems", which is `dmls-book` - chiphuyen/machine-learning-systems-design
#ML #System #Design
"We can characterize the challenges for integrating machine learning within our systems as the three Ds. Decomposition, Data and Deployment."
"The first two components decomposition and data are interlinked, but we will first outline the decomposition challenge. Below we will mainly focus on supervised learning because this is arguably the technology that is best understood within machine learning."
http://inverseprobability.com/talks/notes/the-three-ds-of-machine-learning.html
"We can characterize the challenges for integrating machine learning within our systems as the three Ds. Decomposition, Data and Deployment."
"The first two components decomposition and data are interlinked, but we will first outline the decomposition challenge. Below we will mainly focus on supervised learning because this is arguably the technology that is best understood within machine learning."
http://inverseprobability.com/talks/notes/the-three-ds-of-machine-learning.html
Neil Lawrence’s Talks
Machine Learning Systems Design
Machine learning solutions, in particular those based on deep learning methods, form an underpinning of the current revolution in “artificial intelligence” t...
#System #Design #Study #Guide
Amazing study guide for systems design interviews
https://github.com/donnemartin/system-design-primer
Amazing study guide for systems design interviews
https://github.com/donnemartin/system-design-primer
GitHub
GitHub - donnemartin/system-design-primer: Learn how to design large-scale systems. Prep for the system design interview. Includes…
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards. - donnemartin/system-design-primer