NoSQL the Telco way @dieswaytoofast { (V.P. Ubiquiti Networks)

The Business  Phone services for SMBs

The Business  Phone services for SMBs

 Hosted Phone services for SMBs

The Business  Phone services for SMBs

 Hosted Phone services for SMBs

 Hosted Cloud Communications service for SMBs

The Business  Phone services for SMBs ?  Hosted Phone services for SMBsT A  Hosted Cloud CommunicationsH service for SMBs W H U H The Business

The Metrics  Phone Calls per Second

The Metrics  Phone Calls per Second x 1000

The Metrics  Simultaneous Phone Calls

The Metrics  Simultaneous Phone Calls x 10,000

The Metrics  HTTP API requests

The Metrics  HTTP API requests ∞

The Metrics  Self-hosted (kinda)

 Self-hosted (kinda)

Bet the farm moment

 Erlang

The Infrastructure  Erlang

 Polyglot Persistence

The Infrastructure  Erlang

 Polyglot Persistence

The Infrastructure  Domain-specific data stores

Polyglot Persistence  Domain-specific data stores

SQL

Polyglot Persistence NoSQL

 Domain-specific data stores

SQL

Polyglot Persistence NoSQL

 Domain-specific data stores

SQL

Polyglot PersistenceFiles NoSQL

 Domain-specific data stores

Text SQL

Polyglot PersistenceFiles NoSQL Excel  Domain-specific data stores

Text SQL

Polyglot PersistenceFiles NoSQL Excel  Domain-specific data stores

Post-It Text SQL

Polyglot PersistenceFiles NoSQL Excel  Domain-specific data stores

Post-It Text SQL

Polyglot PersistenceFiles  Domain-specific data stores

 Solution Oriented

NoSQL  Domain-specific data stores

 Solution Oriented ? H U H NoSQL L Q S L Q S o N p h b 75  Not (necessarily) structured data

 Solution Oriented ? H U H NoSQL What d’you want the data to look like when you fetch it from the ? - Casey Rosenthal

Solution Oriented Key-Value

Solution Oriented Key-Value

SolutionObject Oriented Key-Value

Column SolutionObject Oriented Key-Value

Document Column SolutionObject Oriented Key-Value Graph Document Column SolutionObject Oriented Key-Value Graph y ll a t Document tu n n te Coelumns v si E n Solution Oriented o Object C d re Keey-Value d r Graph y O ll a t Document tu n n te Coelumns v si E n Solution Oriented o Object C d re Keey-Value d r Graph y O ll a t Documey nt tu n r n te o Coelumns m v si e E n SolutionM Oriented o Object C le d p re i Keey-Value lt e d u u r M Gral ph y O a ll V a t Documey nt tu n r n te o Coelumns m v si e E n SolutionM Oriented o Object C le d p re i Keey-Value lt e d u u r M Gral ph y O a ll V a t Documey nt tu n r n te o Coelumns m v si e E n SolutionM Oriented o Object C Solution Oriented

http://techcrunch.com/2012/10/27/big-data-right-now-five-trendy-open-source-technologies/

Example please?

"Everybody Knows" S W O N K Y D O YB ER V "E

! G ER N V I O R EE IN G EN Anything else?  I lied about reports

Anything else?  I lied about reports (kind-of)

Anything else? Do tell… If its easy, people might actually use it -

Sad but true… Friction - Bad...

Friction - Good... Friction - Good...

Really? Friction - Good...

Example please?

Anything else? Scaling is easy S W O N K Y D O YB ER ScalingV is easy "E Automatic Scaling is hard Automatic Scaling is hard Automatic Scaling is hard Automatic Scaling is hard Automatic Scaling is hard Back Office Systems New CFO New CEO

The Bottom Line? AGILITY

The Bottom Line

New CFO  Preprocess Call information  Separate out billing information

Redesign  Preprocess Call information  Separate out billing information

What d’you want the data to look like when you fetch it from the database? - Casey Rosenthal Redesign New CEO  Move all client info into one Database

Redesign

S W O N K Y D O YB ER V "E  More pre-computations (Date ranges! Argh!)

Redesign

 Expiring calls? Argh!

Redesign And the Failure modes!  Decouple authentication Mnesia

Redesign Automatic Scaling is hard  Caches Caches Everywhere… Mnesia

Redesign Automatic Scaling is hard Mnesia  Caches Caches Everywhere… Mnesia

Redesign Mnesia  Caches Caches Everywhere… Mnesia Mnesia Redesign Mnesia Mnesia Caches Caches Everywhere… Mnesia Mnesia Redesign Mnesia Mnesia Mnesia Caches Caches Everywhere… Mnesia Mnesia Redesign Mnesia Mnesia Mnesia Mnesia Caches Caches Everywhere… Mnesia Mnesia Redesign Mnesia Mnesia Mnesia Mnesia Caches Caches Everywhere… Mnesia Mnesia Mnesia Redesign Mnesia Mnesia Mnesia Mnesia Caches Caches Everywhere… Mnesia Mnesia Mnesia Redesign Mnesia

Redesign Redesign

Back Office Systems Redesign

 mahesh#dieswaytoofast.com / @dieswaytoofast

Questions