Edge Computing What is Edge Computing Edge Computing(fog computing, mesh computing) Access computers on the "edge", where edge is defined as somewhere close to our originating data sources often involves peer-to-peer computing, although it may also involve servers which are on the edge Data is born at the edge: billions of smartphones & IoT devices constantly generate data Cloud computing refers..
CS/클라우드컴퓨팅
ML process Main Challenges of ML publishing an ML model is not enough managing and published ML models is as important as developing them ML Process Phase 1: Research / Experiment Can we use ML to solve this? scientific projects / Proof-of-concepts (PoC) focus on model performance Phase 2: Operational How do we implement this method at scale? After PoC, bringing your ML models to production Migr..
Machine Learning Pipeline Problem Formulation Buisiness Problem -> ML problem ML model: start to think about the problem in terms of your ML model Questions Can machine learning solve the problem? Would a traditional approach make more sense? Is t his problem a supervised or unsupervised machine learning problem? Do you have labeled data to train a supervised model? Problem + Intended outcome + ..
MapReduce Big Data -> It cannot be processed in a single machine -> parallize computation on multiple machines 👉 MapReduce Map-Reduce Framework High-level programming paradigm want to process lots of data, parallize across hundreds/thousands of nodes automatic parallelization & distribution want to handle failing nodes fault-tolerant, status and monitoring tools want to make it easy clean abstra..
DevOps What is DevOps? DevOps Creating automation for the entire build / test / release cycle Allow development, test and production environments to be built, tested and deployed easily and systematically Allow new components to be added automatically DevOps = Culture + Practices + Tools Amazon's Case Amazon.com Monolith -> Microservices develping faster than ever However, many teams were still ..
Reliability and Availiability Service Availability Service availability $ Availability = \frac{Uptime}{Uptime + Downtime}$ $ Availability = \frac{TotalInServiceTime - Downtime}{TotalInServiceTime} $ calculate availability based on service downtime $ Availability = \frac{MTBF}{MTBF + MTTR} $ Service availability ratings are commonnly quantified as number of nine's (9) Availability Metrics Mean ti..
Container Disadvantages of Virtual Machines Pros Full autonomy(자율성) Very secure Lower costs Used by all cloud providers for on demand server instances Cons Not very portable since size of VMs are large Overhead Container Container cut down VMs used to execute code in an isolated environment portable and lightweight fully packaged software with all dependencies included can be used for developmen..
OS: Operating System What is OS Operating System (OS) A piece of SW that manages and virtualizes hardware for applications indirection layer btw applications and hardware provide high-level interface to applications, while interact with hardware devices with low-level interfaces runs privileged instruction(특권 명령) to interact with HW devices Applications can only execute unprivileged instructions..
Other Serverless AWS Services AWS SQS AWS SQS(Simple Queue Service) fully-maanged message queueing service that stores messages messages are stored(but will expire) until they are processed and deleted act as a buffer btw senders and receivers securely share SQS queues anonymously or with specific accounts queue sharing can also be restricted by IP address and time of day msgs are stored in encr..
Serverless Microservices Microservices An architecture that is loosely coupled An architectural and organizational approach to software development Software is composed of small independent services Communicate over well-defined APIs Owned by small, self-contained teams Microservicce: SW System을 작은 독립적인 서비스들로 나누는 아키텍처 스타일로 여러 모듈로 구성된 작은 서비스들이 독립적으로 배포, 확장, 관리될 수 있도록 설계한다. Tightly vs Loosely Coup..