SlideShare a Scribd company logo
Cell Architecture
For Large Scale Service
charsyam@naver.com
Agenda
•Basic Architecture
•Query-Off Style Architecture
•Cell Architecture
Basic Architecture
CLIENT WEB DB
Read/Write
Basic Architecture
Overhead
Overhead
What
causes
Overhead
Overhead
Profiling
Profiling
JavaScript
CSS
CLIENT
Profiling
JavaScript
CSS
CLIENT
Optimization
Profiling
Business LogicWEB
Profiling
Business LogicWEB
Optimization
Increase WEB/AS
Second Architecture
CLIENT WEB DB
Read/Write
WEB
WEB
Second Architecture
Easy!!!
Profiling
Storage LayerDB
Profiling
Storage LayerDB
I/O Consists of
Read/Write
Profiling
Generally
READs are more
than WRITEs
Profiling
Distribute READs
Profiling
200 writes/s
800 reads/s
Read > Write
Simple DB Architecture
Master
Slave
REPLICATION/FailOver
Query-Off Architecture
WEB/AS
Master
Slave
ONLY WRITE
Slave Slave
Only READ
REPLICATION
Query-Off Architecture
200
writes/s
800
reads/s
200
writes/s
400
reads/s
200
writes/s
400
reads/s
Read/1 Server Read/2 Server
Query-Off Architecture
Is performance
proportional to
numbers of Slaves?
Query-Off Architecture
700
writes/s
50
reads/s
700
writes/s
50
reads/s
700
writes/s
50
reads/s
700
writes/s
50
reads/s
700
writes/s
50
reads/s
Write Heavy Situation
Query-Off Architecture
Zero-Sum Game
Profiling
Distribute Writes
How?
Clustering
and
Sharding
Clustering
seems to be
Ideal
Clustering – Large one
Web
Web
Web
DB
DB DB
DB
Clustering
Difficult
Sharding
Sharding
WEB/AS
Master Master Master
User A Data
User C Data
User D Data
User B Data
User X Data
User Z Data
User Y Data
User E Data
User F Data
Cell Architecture
Cell 0 Cell 1 Cell 2
User
Cell Info
Server
ID: CharSyam
CellID: 1, Status: Normal
Get/set
Cell Architecture
A Cell is Full-Set
Can serve Users
Cell Examples #1
WEB/AS
Master Slave
WEB/AS WEB/AS
Cell Examples #2
WEB/AS WEB/AS WEB/AS
Master
Slave Slave Slave
READ only
WRITE only
Failure of Cell Architecture
Cell 0 Cell 1 Cell 2
User
Cell Info
Server
ID: CharSyam
CellID: 1, Status: Normal
Can’t Service
Failure of Cell Architecture
Cell 0 Cell 1 Cell 2
User
Cell Info
Server
ID: CharSyam
Can’t response
Get/set
• Benefits
–Easy to extend
–Failure is limited to some Users in same cell.
–Can deploy specific feature to some cell users.
• Liabilities
–To need more servers.
• To build full-set
Cell Architecture
Q&A
Thank you

More Related Content

PDF
The RDBMS You Should Be Using
PPTX
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
PDF
Espresso - Shahnawaz Saifi & Kiran Chand - DevOps Bangalore meetup March 28...
PPTX
The WordPress Way: Accessibility and Backwards Compatibility
PPTX
Evaluating Storage for VDI Projects
PPTX
ADF Anti-Patterns: Dangerous Tutorials
PPT
Web servicesoverview
PDF
Custom Development with Novell Teaming
The RDBMS You Should Be Using
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Espresso - Shahnawaz Saifi & Kiran Chand - DevOps Bangalore meetup March 28...
The WordPress Way: Accessibility and Backwards Compatibility
Evaluating Storage for VDI Projects
ADF Anti-Patterns: Dangerous Tutorials
Web servicesoverview
Custom Development with Novell Teaming

What's hot (20)

PPTX
Geek Sync | Azure Cloud & You: First Steps for the DBA
PDF
Vibe Custom Development
PPT
Web servicesoverview
PDF
Ten minutes elixir (매우 간단한 Fault-tolerance server)
PDF
Migrating to v1.9
PPTX
Web Apps atop a Content Repository
PDF
Take a load off! Load testing your Oracle APEX or JDeveloper web applications
PPTX
Hyper-V Dynamic Memory in Depth
PDF
Anvita Gita Supersite Case Study Nov2000
PPTX
Drop acid
PPT
Web 101
PPTX
Data Caching Strategies for Oracle Mobile Application Framework
PPTX
Spsbe using js-linkanddisplaytemplates
PPTX
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
PDF
Automated testing APEX Applications
PDF
XFILES, the APEX 4 version - The truth is in there
PDF
Drive dam
PDF
CQ 5.4 Deep-Dive
PPTX
JDBC
PPTX
Web Application Performance
Geek Sync | Azure Cloud & You: First Steps for the DBA
Vibe Custom Development
Web servicesoverview
Ten minutes elixir (매우 간단한 Fault-tolerance server)
Migrating to v1.9
Web Apps atop a Content Repository
Take a load off! Load testing your Oracle APEX or JDeveloper web applications
Hyper-V Dynamic Memory in Depth
Anvita Gita Supersite Case Study Nov2000
Drop acid
Web 101
Data Caching Strategies for Oracle Mobile Application Framework
Spsbe using js-linkanddisplaytemplates
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Automated testing APEX Applications
XFILES, the APEX 4 version - The truth is in there
Drive dam
CQ 5.4 Deep-Dive
JDBC
Web Application Performance
Ad

Similar to Cell architecture (20)

PDF
CouchDB Talk JChris NYC
PPT
Introducing adf business components
PDF
CQRS and Event Sourcing for Java Developers
PDF
SQL Server 2008 Fast Track Data Warehouse
KEY
Cloud Computing & Scaling Web Apps
ODP
XPages: The Next Step In Your Life As A Notes Developer
PDF
Data Replication Options in AWS
PPTX
50 Shades of SharePoint: SharePoint 2013 Insanity Demystified
PDF
Decoupled cms sunshinephp 2014
PDF
Best Practices for Running Microsoft SQL Server on AWS
PDF
2012 replication
PDF
SharePoint 2010 Boost your farm performance!
PPTX
The Essentials of Building Cloud-Based Web Apps with Azure
PPTX
Scalable Text File Service with MongoDB (Intuit)
PDF
AWS Innovate: Running Databases in AWS- Russell Nash
PPTX
Handling Massive Writes
PDF
Getting Started with Databricks SQL Analytics
PDF
2012 scale replication
PDF
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
PPTX
ASP.NET MVC Performance
CouchDB Talk JChris NYC
Introducing adf business components
CQRS and Event Sourcing for Java Developers
SQL Server 2008 Fast Track Data Warehouse
Cloud Computing & Scaling Web Apps
XPages: The Next Step In Your Life As A Notes Developer
Data Replication Options in AWS
50 Shades of SharePoint: SharePoint 2013 Insanity Demystified
Decoupled cms sunshinephp 2014
Best Practices for Running Microsoft SQL Server on AWS
2012 replication
SharePoint 2010 Boost your farm performance!
The Essentials of Building Cloud-Based Web Apps with Azure
Scalable Text File Service with MongoDB (Intuit)
AWS Innovate: Running Databases in AWS- Russell Nash
Handling Massive Writes
Getting Started with Databricks SQL Analytics
2012 scale replication
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
ASP.NET MVC Performance
Ad

More from DaeMyung Kang (20)

PPTX
Count min sketch
PDF
PDF
Ansible
PDF
Why GUID is needed
PDF
How to use redis well
PPTX
The easiest consistent hashing
PDF
How to name a cache key
PDF
Integration between Filebeat and logstash
PDF
How to build massive service for advance
PDF
Massive service basic
PDF
Data Engineering 101
PDF
How To Become Better Engineer
PPTX
Kafka timestamp offset_final
PPTX
Kafka timestamp offset
PPTX
Data pipeline and data lake
PDF
Redis acl
PDF
Coffee store
PDF
Scalable webservice
PDF
Number system
PDF
webservice scaling for newbie
Count min sketch
Ansible
Why GUID is needed
How to use redis well
The easiest consistent hashing
How to name a cache key
Integration between Filebeat and logstash
How to build massive service for advance
Massive service basic
Data Engineering 101
How To Become Better Engineer
Kafka timestamp offset_final
Kafka timestamp offset
Data pipeline and data lake
Redis acl
Coffee store
Scalable webservice
Number system
webservice scaling for newbie

Cell architecture