Transcript
Page 1: Cloud & Big Data: Lessons Learnt

Cloud-Based Architecture and Big Data

Philip Balinov,

DevOps Engineer

Page 2: Cloud & Big Data: Lessons Learnt

SOME DEFINITIONS

►def. CLOUD COMPUTING

l - distributed computing over a network

l

- the ability to run a program or application on many connected computers at

the same time.

►def. BIG DATA

l

data sets so large and complex that it becomes difficult to process using

traditional data processing applications

Page 3: Cloud & Big Data: Lessons Learnt

Retail

Finance

E-Commerce

Telecommunication

B2B

Publishing/Media

Government & NGO

Automotive

Travel

KOMFO'S CLIENTS

Page 4: Cloud & Big Data: Lessons Learnt

KOMFO PLATFORM WORKFLOW OVERVIEW

Page 5: Cloud & Big Data: Lessons Learnt

EXTERNAL PROVIDERS

Page 6: Cloud & Big Data: Lessons Learnt

MODERN COMPANY STRUCTURE

►Agile software development: Scrum, Kanban

► Short product feature lifecycle

► Continuous delivery

► Self-organizing teams

► Cross-functional teams

Page 7: Cloud & Big Data: Lessons Learnt

AGILE DEVELOPMENT, CONTD.

►Scrum

► Excellent for product development

► Short, iterative cycles (sprints), commit to deadlines

► Self-organizing teams

►Kanban

► Developed at Toyota to optimize supply-chain

► Good for ad-hoc tasks, e.g. support, bugfixing

Page 8: Cloud & Big Data: Lessons Learnt

AGILE DEVELOPMENT, CONTD.

►Agile development requires agile operations

► Underlying architecture must scale together with the product

► Continuous integration

► Quality assurance

► Deployment

►The solution: de-couple development and operations

► DevOps

Page 9: Cloud & Big Data: Lessons Learnt

USE CASE

►Fast and dependable communication with external providers

►On-demand resource scaling

►Flexibility

►Storage, indexing & analysis of huge amounts of data

►Dependability

Page 10: Cloud & Big Data: Lessons Learnt
Page 11: Cloud & Big Data: Lessons Learnt
Page 12: Cloud & Big Data: Lessons Learnt

CLOUD CONCEPTS

►Three main service models

► IaaS – EC2, Rackspace, Azure, HP, Oracle

► PaaS – Google App Engine, Heroku

► SaaS – Gmail, Wordpress.com, Salesforce, Office 365

Page 13: Cloud & Big Data: Lessons Learnt

CLOUD CONCEPTS, CONTD

►Four deployment models

► Public

► Private

► Community

► Hybrid

Page 14: Cloud & Big Data: Lessons Learnt

CLOUD INTERNALS

SERVERS

STORAGE

EXTERNAL SERVICES

(CDN, NETWORKING, SaaS)

VMs VMs

Page 15: Cloud & Big Data: Lessons Learnt

PROS AND CONS

Dedicated Cloud

+ simplicity

+ performance

+ predictability

+ tried and tested

+ agility

+ ease of use

+ scalability

+ stability

- inflexible

- ineffective

- nightmare in case of disaster

- vendor lock-in

- blackboxed

- fluctuations

- helpless in case of disaster

Page 16: Cloud & Big Data: Lessons Learnt

CLOUD ARCHITECTURE

►Application servers scale up and down based on load

►Application software written for parallelism

►Communication between nodes via messaging service

►Write for eventual consistency

Page 17: Cloud & Big Data: Lessons Learnt

OK, so we have an (endlessly) scalable cloud app

now.

But didn't we just create a bottleneck elsewhere?

Page 18: Cloud & Big Data: Lessons Learnt

MIX & MATCH

►Crunch numbers in the cloud

► Application servers

► Slow running tasks

► Temporary services

► Test servers

Page 19: Cloud & Big Data: Lessons Learnt

MIX & MATCH, CONTD.

►Traditional servers for:

► Incompatible apps (single-threaded, memory, disk intensive, specialized

hardware) do not work well in cloud environments

► Database servers are best kept on dedicated machines in our experience

Page 20: Cloud & Big Data: Lessons Learnt

DATABASES, NOSQL

►def. NoSQL

l

a mechanism for storage and retrieval of data that is modeled in means other

than the tabular relations used in relational databases.

Page 21: Cloud & Big Data: Lessons Learnt

DATABASES

• Use the best tool for the job depending on the task

• NoSQL Advantages

► Social networks generate a lot of data

► Complex interconnections, cyclical dependencies

► Aggregations must be performed on both new and old data

► Structure of foreign sources may change on short notice

Page 22: Cloud & Big Data: Lessons Learnt

DATABASES, NOSQL CONTD

►Riak, Hadoop, MongoDB, Cassandra, Redis

►In-memory dataset for faster operation

►No predefined structure

►Integrated sharding, load-balancing and failover

►Versatility - can be used for anything from data storage to real-time messaging to search

indexes

Page 23: Cloud & Big Data: Lessons Learnt

DATABASES, LONG TERM STRATEGY

►Data quickly becomes irrelevant

►Archive it, but still be accessible

►Online Data Warehouse solutions

► Amazon Redshift

► Keep Everything

► Terabytes for pennies

Page 24: Cloud & Big Data: Lessons Learnt

WE ARE LOOKING FOR…

Senior Web Developer

Junior Web Developer

Junior QA

DevOps Engineer

Page 25: Cloud & Big Data: Lessons Learnt

Questions?


Top Related