SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
Big Data at CallFire

Vijesh Mehta (Co-Founder and CTO)
Agenda

•  A little about CallFire

•  CallFire’s technical challenges

•  How CallFire deals with data

•  Summary
Some background about myself

•  I am one of the founders of CallFire.
  –  Started in 2005 in a small apartment
  –  Now 28 people
  –  Bootstrapped and profitable

•  I’ve been writing software primarily in the
   Java space for 12 years. CallFire is all
   Java.
  –  We use : Wicket, Guice, Hibernate, MySQL,
     Cassandra, ActiveMQ, XEN, Puppet
About CallFire

•  We are a cloud telephony provider.
   –  Outbound Phone calls
   –  Phone Numbers
   –  SMS through long and short codes
   –  IVR – Interactive Voice Response
   –  Power Dialing

•  CallFire’s call volume can get large very quickly.
   –  Hurricane Sandy : 1.9 million emergency calls

•  4 Engineers and 1 System admin managing
   operations and new features.
      •  We just hired 7 more engineers this year, and still hiring!
Technical Challenges by Numbers

•  1.4 billion calls and texts
     –  Growing exponentially
•    Over 50,000 accounts
•    Over 6 million campaigns
•    80 million sound files
•    14 TB in storage (NFS)
•    MySQL : Over 10,000 qps at peak

 Big data isn’t always big company problem!
Growing faster each day

                Campaigns	
  over	
  Time	
  
7000000	
  

6000000	
  

5000000	
  

4000000	
  

3000000	
  

2000000	
  

1000000	
  

        0	
  
The first challenge

•  Problem : We outgrew our datacenter. New
   systems need access to central storage.
   Replication across a 1gb/s interconnect.

•  Needed Solution:
  –  Must work across datacenter
  –  Must scale as demand increases
  –  Must be fault tolerant
  –  Must deal with over 80 million sound files
  –  Cheaper the better
Solutions Considered (2010)
                                  NFS	
                              GLUSTER	
                              HDFS	
                              CASSANDRA	
  
Fault	
  Tolerant	
               Yes,	
  if	
  configured	
          Yes	
                                  Yes	
                               Yes	
  

Datacenter	
                      Maybe.	
  Rsync	
  isn’t	
         Not	
  at	
  the	
  Dme	
              Yes	
                               Yes	
  
Replica>on	
                      fun	
  with	
  lots	
  of	
  
                                  files.	
  
Easy	
  to	
  add	
  storage	
   No	
                                Not	
  at	
  the	
  Dme	
              Yes	
                               Yes	
  

No	
  Single	
  point	
  of	
     No	
                               Yes	
                                  Not	
  exactly,	
                   Yes	
  
failure	
                                                                                                   NameNode.	
  
Data	
  always	
                  No,	
  hard	
  to	
  sort	
        No,	
  same	
  as	
  a	
  file	
        Yes	
                               Yes	
  
accessible	
  easily	
            through	
  file	
                   system	
  
                                  systems.	
  	
  

Notes	
                           Not	
  working	
  for	
  us.	
     Looks	
  good,	
  tried	
  it	
        Didn’t	
  like	
  the	
  name	
     Everything	
  we	
  
                                  Too	
  much	
                      for	
  a	
  while.	
  Easy	
  at	
     node	
  issue.	
  May	
             need,	
  quick	
  to	
  
                                  management	
  and	
                first	
  because	
  it	
  was	
         have	
  been	
  a	
  good	
         learn.	
  We	
  went	
  all	
  
                                  downDme.	
                         a	
  file	
  system.	
                  way	
  to	
  go.	
                  in!	
  



*	
  Only	
  LAN	
  soluDons	
  considered.	
  Calls	
  had	
  too	
  much	
  latency	
  in	
  the	
  cloud,	
  or	
  even	
  
across	
  datacenter.	
  
Cassandra

•  Storage isn’t the best use of Cassandra.

•  Do not exceed 50% of drive space.
  –  Compaction needs the space. Hard lesson learned.

•  Fault Tolerance: Replication factor of 3.

•  Result
      •  1 TB of data = 6 TB of storage needed!
      •  CallFire has a 74TB Cassandra Cluster
Extending the scope

•  We like SQL and Hibernate.
   –  Pros: Easy, Flexible, Ad-Hoc Queries, Locks
   –  Cons: Scaling


•  Solution: Sharding with Cassandra for universal data


         Shard	
  1	
             Shard	
  2	
         Shard	
  3	
  




                            Cassandra	
  Cluster	
  
Sharding + Big Data

•  Cassandra makes sharding easier
  –  Easy to store universal data. (Authentication)
  –  Performs very well


•  Tungsten Replicator (Big Data with SQL)
  –  Sharding makes joins impossible, so fan your
     data into central places.
  –  NoSQL can’t handle ad-hoc queries. No
     worries, you can still have SQL.
Big Data Summary

•  Not Just for big companies, data grows rapidly in
   todays environment.
   –  Nice article about Obama’s Data Crunchers:
   –    http://swampland.time.com/2012/11/07/inside-the-secret-world-of-quants-and-data-crunchers-who-helped-obama-win/




•  NoSQL systems have easier scaling and fault
   tolerance mechanisms.
   –  Not uncommon to see small teams with 10-20 node
      clusters.

•  SQL is still a big part of the equation. (Tungsten)
   –  Fan in information across partitions
   –  Replicate across datacenters
   –  Keep your ad-hoc dreams alive!
Passive / Archived Storage
Backblaze	
  –	
  $5,300	
  for	
  empty	
  case.	
  Holds	
  45	
  Drives	
  (117TB	
  usable	
  space)	
  




hUp://www.protocase.com/products/index.php?e=Backblaze	
  

Contenu connexe

Similaire à Big data at CallFire

Storage Systems For Scalable systems
Storage Systems For Scalable systemsStorage Systems For Scalable systems
Storage Systems For Scalable systemselliando dias
 
Mary Firme Content Marketing for Demand Creation
Mary Firme Content Marketing for Demand Creation Mary Firme Content Marketing for Demand Creation
Mary Firme Content Marketing for Demand Creation Mary Firme
 
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...DataWorks Summit/Hadoop Summit
 
Big data explanation with real time use case
 Big data explanation with real time use case Big data explanation with real time use case
Big data explanation with real time use caseN.Jagadish Kumar
 
Overview of Redundant Disk Arrays
Overview of Redundant Disk ArraysOverview of Redundant Disk Arrays
Overview of Redundant Disk ArraysAndrew Robinson
 
Ceph Day Santa Clara: Ceph at DreamHost
Ceph Day Santa Clara: Ceph at DreamHost Ceph Day Santa Clara: Ceph at DreamHost
Ceph Day Santa Clara: Ceph at DreamHost Ceph Community
 
Make Life Suck Less (Building Scalable Systems)
Make Life Suck Less (Building Scalable Systems)Make Life Suck Less (Building Scalable Systems)
Make Life Suck Less (Building Scalable Systems)guest0f8e278
 
Improving Hadoop Cluster Performance via Linux Configuration
Improving Hadoop Cluster Performance via Linux ConfigurationImproving Hadoop Cluster Performance via Linux Configuration
Improving Hadoop Cluster Performance via Linux ConfigurationDataWorks Summit
 
Patella railsconf 2012
Patella railsconf 2012Patella railsconf 2012
Patella railsconf 2012Jeff Dwyer
 
Scaling a High Traffic Web Application: Our Journey from Java to PHP
Scaling a High Traffic Web Application: Our Journey from Java to PHPScaling a High Traffic Web Application: Our Journey from Java to PHP
Scaling a High Traffic Web Application: Our Journey from Java to PHP120bi
 
Scaling High Traffic Web Applications
Scaling High Traffic Web ApplicationsScaling High Traffic Web Applications
Scaling High Traffic Web ApplicationsAchievers Tech
 
Nimble Storage Series A presentation 2007
Nimble Storage Series A presentation 2007Nimble Storage Series A presentation 2007
Nimble Storage Series A presentation 2007Wing Venture Capital
 
Web20expo Scalable Web Arch
Web20expo Scalable Web ArchWeb20expo Scalable Web Arch
Web20expo Scalable Web Archroyans
 
Web20expo Scalable Web Arch
Web20expo Scalable Web ArchWeb20expo Scalable Web Arch
Web20expo Scalable Web Archguest18a0f1
 
Web20expo Scalable Web Arch
Web20expo Scalable Web ArchWeb20expo Scalable Web Arch
Web20expo Scalable Web Archmclee
 
Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2Marco Tusa
 
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYCScalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYCCal Henderson
 
High performance Infrastructure Oct 2013
High performance Infrastructure Oct 2013High performance Infrastructure Oct 2013
High performance Infrastructure Oct 2013Server Density
 
Scaling HDFS for Exabyte Storage@twitter
Scaling HDFS for Exabyte Storage@twitterScaling HDFS for Exabyte Storage@twitter
Scaling HDFS for Exabyte Storage@twitterlohitvijayarenu
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive WritesLiran Zelkha
 

Similaire à Big data at CallFire (20)

Storage Systems For Scalable systems
Storage Systems For Scalable systemsStorage Systems For Scalable systems
Storage Systems For Scalable systems
 
Mary Firme Content Marketing for Demand Creation
Mary Firme Content Marketing for Demand Creation Mary Firme Content Marketing for Demand Creation
Mary Firme Content Marketing for Demand Creation
 
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
 
Big data explanation with real time use case
 Big data explanation with real time use case Big data explanation with real time use case
Big data explanation with real time use case
 
Overview of Redundant Disk Arrays
Overview of Redundant Disk ArraysOverview of Redundant Disk Arrays
Overview of Redundant Disk Arrays
 
Ceph Day Santa Clara: Ceph at DreamHost
Ceph Day Santa Clara: Ceph at DreamHost Ceph Day Santa Clara: Ceph at DreamHost
Ceph Day Santa Clara: Ceph at DreamHost
 
Make Life Suck Less (Building Scalable Systems)
Make Life Suck Less (Building Scalable Systems)Make Life Suck Less (Building Scalable Systems)
Make Life Suck Less (Building Scalable Systems)
 
Improving Hadoop Cluster Performance via Linux Configuration
Improving Hadoop Cluster Performance via Linux ConfigurationImproving Hadoop Cluster Performance via Linux Configuration
Improving Hadoop Cluster Performance via Linux Configuration
 
Patella railsconf 2012
Patella railsconf 2012Patella railsconf 2012
Patella railsconf 2012
 
Scaling a High Traffic Web Application: Our Journey from Java to PHP
Scaling a High Traffic Web Application: Our Journey from Java to PHPScaling a High Traffic Web Application: Our Journey from Java to PHP
Scaling a High Traffic Web Application: Our Journey from Java to PHP
 
Scaling High Traffic Web Applications
Scaling High Traffic Web ApplicationsScaling High Traffic Web Applications
Scaling High Traffic Web Applications
 
Nimble Storage Series A presentation 2007
Nimble Storage Series A presentation 2007Nimble Storage Series A presentation 2007
Nimble Storage Series A presentation 2007
 
Web20expo Scalable Web Arch
Web20expo Scalable Web ArchWeb20expo Scalable Web Arch
Web20expo Scalable Web Arch
 
Web20expo Scalable Web Arch
Web20expo Scalable Web ArchWeb20expo Scalable Web Arch
Web20expo Scalable Web Arch
 
Web20expo Scalable Web Arch
Web20expo Scalable Web ArchWeb20expo Scalable Web Arch
Web20expo Scalable Web Arch
 
Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2
 
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYCScalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
 
High performance Infrastructure Oct 2013
High performance Infrastructure Oct 2013High performance Infrastructure Oct 2013
High performance Infrastructure Oct 2013
 
Scaling HDFS for Exabyte Storage@twitter
Scaling HDFS for Exabyte Storage@twitterScaling HDFS for Exabyte Storage@twitter
Scaling HDFS for Exabyte Storage@twitter
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive Writes
 

Dernier

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Dernier (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Big data at CallFire

  • 1. Big Data at CallFire Vijesh Mehta (Co-Founder and CTO)
  • 2. Agenda •  A little about CallFire •  CallFire’s technical challenges •  How CallFire deals with data •  Summary
  • 3. Some background about myself •  I am one of the founders of CallFire. –  Started in 2005 in a small apartment –  Now 28 people –  Bootstrapped and profitable •  I’ve been writing software primarily in the Java space for 12 years. CallFire is all Java. –  We use : Wicket, Guice, Hibernate, MySQL, Cassandra, ActiveMQ, XEN, Puppet
  • 4. About CallFire •  We are a cloud telephony provider. –  Outbound Phone calls –  Phone Numbers –  SMS through long and short codes –  IVR – Interactive Voice Response –  Power Dialing •  CallFire’s call volume can get large very quickly. –  Hurricane Sandy : 1.9 million emergency calls •  4 Engineers and 1 System admin managing operations and new features. •  We just hired 7 more engineers this year, and still hiring!
  • 5. Technical Challenges by Numbers •  1.4 billion calls and texts –  Growing exponentially •  Over 50,000 accounts •  Over 6 million campaigns •  80 million sound files •  14 TB in storage (NFS) •  MySQL : Over 10,000 qps at peak Big data isn’t always big company problem!
  • 6. Growing faster each day Campaigns  over  Time   7000000   6000000   5000000   4000000   3000000   2000000   1000000   0  
  • 7. The first challenge •  Problem : We outgrew our datacenter. New systems need access to central storage. Replication across a 1gb/s interconnect. •  Needed Solution: –  Must work across datacenter –  Must scale as demand increases –  Must be fault tolerant –  Must deal with over 80 million sound files –  Cheaper the better
  • 8. Solutions Considered (2010) NFS   GLUSTER   HDFS   CASSANDRA   Fault  Tolerant   Yes,  if  configured   Yes   Yes   Yes   Datacenter   Maybe.  Rsync  isn’t   Not  at  the  Dme   Yes   Yes   Replica>on   fun  with  lots  of   files.   Easy  to  add  storage   No   Not  at  the  Dme   Yes   Yes   No  Single  point  of   No   Yes   Not  exactly,   Yes   failure   NameNode.   Data  always   No,  hard  to  sort   No,  same  as  a  file   Yes   Yes   accessible  easily   through  file   system   systems.     Notes   Not  working  for  us.   Looks  good,  tried  it   Didn’t  like  the  name   Everything  we   Too  much   for  a  while.  Easy  at   node  issue.  May   need,  quick  to   management  and   first  because  it  was   have  been  a  good   learn.  We  went  all   downDme.   a  file  system.   way  to  go.   in!   *  Only  LAN  soluDons  considered.  Calls  had  too  much  latency  in  the  cloud,  or  even   across  datacenter.  
  • 9. Cassandra •  Storage isn’t the best use of Cassandra. •  Do not exceed 50% of drive space. –  Compaction needs the space. Hard lesson learned. •  Fault Tolerance: Replication factor of 3. •  Result •  1 TB of data = 6 TB of storage needed! •  CallFire has a 74TB Cassandra Cluster
  • 10. Extending the scope •  We like SQL and Hibernate. –  Pros: Easy, Flexible, Ad-Hoc Queries, Locks –  Cons: Scaling •  Solution: Sharding with Cassandra for universal data Shard  1   Shard  2   Shard  3   Cassandra  Cluster  
  • 11. Sharding + Big Data •  Cassandra makes sharding easier –  Easy to store universal data. (Authentication) –  Performs very well •  Tungsten Replicator (Big Data with SQL) –  Sharding makes joins impossible, so fan your data into central places. –  NoSQL can’t handle ad-hoc queries. No worries, you can still have SQL.
  • 12. Big Data Summary •  Not Just for big companies, data grows rapidly in todays environment. –  Nice article about Obama’s Data Crunchers: –  http://swampland.time.com/2012/11/07/inside-the-secret-world-of-quants-and-data-crunchers-who-helped-obama-win/ •  NoSQL systems have easier scaling and fault tolerance mechanisms. –  Not uncommon to see small teams with 10-20 node clusters. •  SQL is still a big part of the equation. (Tungsten) –  Fan in information across partitions –  Replicate across datacenters –  Keep your ad-hoc dreams alive!
  • 13. Passive / Archived Storage Backblaze  –  $5,300  for  empty  case.  Holds  45  Drives  (117TB  usable  space)   hUp://www.protocase.com/products/index.php?e=Backblaze