SlideShare une entreprise Scribd logo
1  sur  56
Cassandra Performance and
    Scalability on AWS
           August 8th, 2012
           Adrian Cockcroft
      @adrianco #netflixcloud #cassandra12
   http://www.linkedin.com/in/adriancockcroft
Things we don’t do
Things we do do. Run benchmarks.
              Now.
YOLO
Screenshots from Live Demo

 Backup slides from pre-runs of the
 demo with some updates to show
     what actually happened
Asgard
cass_perf apps, with no instances running
Jenkins
Jenkins perf_test jobs
Jmeter Setup
Build parameters
Jmeter Setup
Build parameters
Jmeter Setup
Build parameters
Asgard
Iinitial set of cass instances up and running
Back to Presentation

While the load gets going….
Scalability from 48 to 288 nodes on AWS
 http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html


              Client Writes/s by node count – Replication Factor = 3
1200000
                                                                    1099837
1000000

 800000
                                                         Used 288 of m1.xlarge
 600000                                                  4 CPU, 15 GB RAM, 8 ECU
                                          537172         Cassandra 0.86
 400000                                                  Benchmark config only
                                366828                   existed for about 1hr
 200000               174373

      0
          0         50         100       150       200   250       300        350
Blah Blah                           Blah

 (I’m skipping all the cloud intro etc. Netflix
 runs in the cloud, if you hadn’t figured that
 out already you aren’t paying attention and
    should go read slideshare.net/netflix)
“Some people skate to the puck,
I skate to where the puck is going to be”
             Wayne Gretzky
Cassandra on AWS
The Past                     The Future
• Instance: m2.4xlarge       • Instance: hi1.4xlarge
• Storage: 2 drives, 1.7TB   • Storage: 2 SSD volumes, 2TB
• CPU: 8 Cores, 26 ECU       • CPU: 8 HT cores, 35 ECU
• RAM: 68GB                  • RAM: 64GB
• Network: 1Gbit             • Network: 10Gbit
• IOPS: ~500                 • IOPS: ~100,000
• Throughput: ~100Mbyte/s    • Throughput: ~1Gbyte/s
• Cost: $1.80/hr             • Cost: $3.10/hr
Cassandra Disk vs. SSD Benchmark
     Same Throughput, Lower Latency, Half Cost
Live Demo Workload
• Jenkins automation
   – Jmeter load driver
   – Asgard provisioning
   – Priam instance management
• Traffic
   – Reading/writing whole 100 column rows
   – Randomly selected from 25M row keys
   – Run for 10minutes, then double ring size
The Netflix Streaming Service
Major Front End Services
• Non-member Web Site www.netflix.com
    – Marketing driven, sign up flow, SOX/PCI scope

• Member Web Site movies.netflix.com
    – Personalization driven

• CDNs for delivering bulk video/audio
    – Netflix CDN: openconnect.netflix.com

• API for external and device user interfaces
    – Mostly private APIs, public API docs at developer.netflix.com

• API for controlling video playback
    – DRM, QoS management, Bookmarks
Netflix Deployed on AWS
 2009          2009           2010          2010        2010            2011

Content        Logs           Play          WWW          API              CS
  Content          S3                                                   International
                                 DRM         Sign-Up     Metadata
 Management     Terabytes                                                 CS lookup


    EC2                                                                 Diagnostics &
                  EMR         CDN routing     Search    Device Config
  Encoding                                                                 Actions


     S3                                       Movie      TV Movie       Customer Call
                Hive & Pig    Bookmarks
  Petabytes                                  Choosing    Choosing            Log


                Business                                   Social
                                Logging      Ratings                    CS Analytics
               Intelligence                              Facebook
  CDNs
   ISPs
 Terabits
Customers
Cassandra Instance Architecture

Linux Base AMI (CentOS)
     Priam
   Cassandra
   Manager
      Token
                    Java7
Management, Bac
kups, Autoscaling
 Tomcat/Java7       AppDynamics


 Monitoring
                      appagent
                     monitoring     Cassandra 1.09
 Log rotation
AppDynamics         GC and thread
machineagent        dump logging
     Etc.
Priam – Cassandra Automation
           Available at http://github.com/netflix

•   Netflix Platform Tomcat Code
•   Zero touch auto-configuration
•   State management for Cassandra JVM
•   Token allocation and assignment
•   Broken node auto-replacement
•   Full and incremental backup to S3
•   Restore sequencing from S3
•   Grow/Shrink Cassandra “ring”
Astyanax
               Available at http://github.com/netflix

• Features
  –   Complete abstraction of connection pool from RPC protocol
  –   Fluent Style API
  –   Operation retry with backoff
  –   Token aware
• Recipes
  –   Distribute row lock (without zookeeper)
  –   Multi-DC row lock
  –   Uniqueness constraint
  –   Multi-row uniqueness constraint
  –   Large file storage
Scale Up

Return to live demo to watch new
      nodes coming online
Kiklos
                Clusters growing from 12 to 24
   in-service, bootstrapping, garbage-collecting, cass-down


• http://explorers.us-east-
  1.dyntest.netflix.net:7001/jr/cassandradashbo
  ard
Kiklos
             Clusters growing from 12 to 24
in-service, bootstrapping, garbage-collecting, cass-down
Asgard

Showed 24 nodes per cluster, but
    didn’t get a screen shot
Back to Presentation

While jenkins/jmeter collects graphs
   and shuts down the systems
Cassandra on AWS

A highly available and durable
     deployment pattern
High Availability
• Cassandra stores 3 local copies, 1 per zone
  – Synchronous access, durable, highly available
  – Read/Write One fastest, use for fire and forget
  – Read/Write Quorum 2 of 3, use for read-after-write


• AWS Availability Zones
  – Separate buildings
  – Separate power etc.
  – Fairly close together
“Traditional” Cassandra Write Data Flows
        Single Region, Multiple Availability Zone, Not Token Aware

                                         Cassandra
                                         •Disks
                                        2•Zone A       2
                                             4 2
1. Client Writes to any   Cassandra 3                      3Cassandra   If a node goes
   Cassandra Node         •Disks5                           •Disks 5    offline, hinted handoff
2. Coordinator Node       •Zone C            1              •Zone B     completes the write
   replicates to nodes                                                  when the node comes
                                        Non Token
   and Zones                                                            back up.
3. Nodes return ack to                   Aware
   coordinator                           Clients                        Requests can choose to
4. Coordinator returns    Cassandra                         Cassandra   wait for one node, a
   ack to client          •Disks                            •Disks      quorum, or all nodes to
5. Data written to        •Zone B                           •Zone C     ack the write
   internal commit log                             3
   disk (no more than                    Cassandra                      SSTable disk writes and
   10 seconds later)                     •Disks    5                    compactions occur
                                         •Zone A
                                                                        asynchronously
Astyanax - Cassandra Write Data Flows
          Single Region, Multiple Availability Zone, Token Aware

                                       Cassandra
                                       •Disks
                                       •Zone A

1. Client Writes to      Cassandra 2                 2Cassandra   If a node goes
   nodes and Zones       •Disks3                      •Disks 3    offline, hinted handoff
2. Nodes return ack to   •Zone C           1          •Zone B     completes the write
   client                              Token                      when the node comes
3. Data written to                                                back up.
   internal commit log                 Aware
   disks (no more than                 Clients                    Requests can choose to
   10 seconds later)     Cassandra                    Cassandra   wait for one node, a
                         •Disks                       •Disks      quorum, or all nodes to
                         •Zone B                      •Zone C     ack the write
                                          2
                                       Cassandra                  SSTable disk writes and
                                       •Disks    3                compactions occur
                                       •Zone A
                                                                  asynchronously
Data Flows for Multi-Region Writes
          Token Aware, Consistency Level = Local Quorum

1. Client writes to local replicas                   If a node or region goes offline, hinted handoff
2. Local write acks returned to                      completes the write when the node comes back up.
   Client which continues when                       Nightly global compare and repair jobs ensure
   2 of 3 local nodes are                            everything stays consistent.
   committed
3. Local coordinator writes to
   remote coordinator.                                                       100+ms latency
                                                      Cassandra                                       Cassandra
4. When data arrives, remote                          • Disks
                                                      • Zone A
                                                                                                      • Disks
                                                                                                      • Zone A

   coordinator node acks and         Cassandra   2                2
                                                                  Cassandra              Cassandra                4Cassandra
                                          6
                                     • Disks                      • Disks 6 3           5• Disks6                 4 Disks6
   copies to other remote zones      • Zone C
                                                           1
                                                                  • Zone B               • Zone C
                                                                                                                   •
                                                                                                                   • Zone B

                                                                                                                        4
5. Remote nodes ack to local                           US                                              EU
   coordinator                                       Clients                                         Clients
                                     Cassandra                        2
                                                                  Cassandra              Cassandra                 Cassandra
6. Data flushed to internal          • Disks
                                     • Zone B
                                                                  • Disks
                                                                  • Zone C
                                                                          6              • Disks
                                                                                         • Zone B
                                                                                                                   • Disks
                                                                                                                   • Zone C

   commit log disks (no more                          Cassandra                                              5
                                                                                                     6Cassandra
                                                      • Disks
   than 10 seconds later)                             • Zone A
                                                                                                      • Disks
                                                                                                      • Zone A
Extending to Multi-Region
        Added production UK/Ireland support with no downtime
       Minimize impact on original cluster using bulk backup move

1.   Create cluster in EU                     Take a Boeing 737 on a domestic flight, upgrade it to a
                                              747 by adding more engines, fuel and bigger wings
2.   Backup US cluster to S3
                                              and fly it to Europe without landing it on the way…
3.   Restore backup in EU
4.   Local repair EU cluster
5.   Global repair/join
                                               Cassandra
                                                                      100+ms latency          Cassandra   1
                                               • Disks                                        • Disks
                                               • Zone A                                       • Zone A


                               Cassandra                   Cassandra              Cassandra               Cassandra
                               • Disks                     • Disks                • Disks                 • Disks
                               • Zone C                    • Zone B               • Zone C                • Zone B


                                                US                         5                    EU
                                              Clients                                         Clients
                               Cassandra                   Cassandra              Cassandra               Cassandra
                               • Disks                     • Disks                • Disks                 • Disks
                               • Zone B                    • Zone C               • Zone B                • Zone C


                                               Cassandra                                      Cassandra
                                               • Disks                                        • Disks
                                               • Zone A
                                                                                         3    • Zone A
                                                                                                              4
                                          2
                                                  S3
Cassandra Backup
• Full Backup                                              Cassandra

                                           Cassandra                       Cassandra

  – Time based snapshot
  – SSTable compress -> S3     Cassandra                                               Cassandra




• Incremental                                                S3
                                                           Backup
                             Cassandra                                                   Cassandra

  – SSTable write triggers
    compressed copy to S3
                                    Cassandra                                    Cassandra


• Archive                                          Cassandra       Cassandra


  – Copy cross region
                                  A
ETL for Cassandra
•   Data is de-normalized over many clusters!
•   Too many to restore from backups for ETL
•   Solution – read backup files using Hadoop
•   Aegisthus
    – http://techblog.netflix.com/2012/02/aegisthus-bulk-data-pipeline-out-of.html

    – High throughput raw SSTable processing
    – Re-normalizes many clusters to a consistent view
    – Extract, Transform, then Load into Teradata
Netflix Open Source Strategy
• Release PaaS Components git-by-git
  – Source at github.com/netflix – we build from it…
  – Intros and techniques at techblog.netflix.com
  – Blog post or new code every few weeks


• Motivations
  – Give back to Apache licensed OSS community
  – Motivate, retain, hire top engineers
  – “Peer pressure” code cleanup, external contributions
Open Source Projects and Posts
     Legend
 Github / Techblog             Priam                  Exhibitor          Servo and Autoscaling
                       Cassandra as a Service   Zookeeper as a Service          Scripts
Apache Contributions
                             Astyanax                                            Honu
                                                       Curator
   Techblog Post        Cassandra client for                               Log4j streaming to
                                                 Zookeeper Patterns
                               Java                                             Hadoop
   Coming Soon
                                                      EVCache
                            CassJMeter                                       Circuit Breaker
                                                  Memcached as a
                        Cassandra test suite                             Robust service pattern
                                                     Service

                            Cassandra                                            Asgard
                                                  Eureka / Discovery
                         Multi-region EC2                                AutoScaleGroup based
                                                  Service Directory
                         datastore support                                   AWS console

                             Aegisthus                Archaius
                                                                             Chaos Monkey
                          Hadoop ETL for         Dynamics Properties
                                                                         Robustness verification
                            Cassandra                 Service
Chaos Monkey
http://techblog.netflix.com/2012/07/chaos-monkey-released-into-wild.html

• Computers (Datacenter or AWS) randomly die
   – Fact of life, but too infrequent to test resiliency
• Test to make sure systems are resilient
   – Allow any instance to fail without customer impact
• Chaos Monkey hours
   – Monday-Friday 9am-3pm random instance kill
• Application configuration option
   – Apps now have to opt-out from Chaos Monkey
Asgard
http://techblog.netflix.com/2012/06/asgard-web-based-cloud-management-and.html


• Replacement for AWS Console at Scale
    – Groovy/Grails/JVM based
    – Supports all AWS regions on a global basis
    – Specific to AWS feature set

• Hides the AWS credentials
    – Use AWS IAM to issue restricted keys for Asgard
    – Each Asgard instance manages one account
    – One install each for test, prod, audit accounts
Roadmap for 2012
•   More resiliency and improved availability
•   More automation, orchestration
•   “Hardening” the platform, code clean-up
•   Lower latency for web services and devices
•   IPv6 – running now, see techblog for details
•   More open sourced components
•   Las Vegas in November - AWS Re:Invent
Back to Live Demo
Disclaimers
• We didn’t have time to tune the demo
• These are the plots from the live demo run
• Run’s need to be longer to get to steady state
• Data size only reached around 5GB per node
• Plenty of “I wonder why it did that” remains
• It’s a fair comparison, but not the best absolute
  performance possible for this workload and
  configuration
• When you remove the IO bottleneck, the next
  few bottlenecks appear…
Activity during the talk 10:30-11:30
 Custom AppDynamics dashboard showing CPU and IOPS per node
Jmeter Plots
• Plots are the output of the Jenkins build

• Each instance has its own set of plots

• Each availability zone has its own summary plots

• One of the three zone summary plots is compared for
  each metric

• Plot collection is currently duplicated as we are
  transitioning from “Epic” to “Atlas”
Jenkins
Collected results and graphs after job has completed
The past
m2.4xlarge



 Instances
 per zone




The future
hi1.4xlarge
The past
 m2.4xlarge

Transactions
per zone, same
as total client
transactions




 The future
 hi1.4xlarge
The past
m2.4xlarge




The future
hi1.4xlarge
The past
m2.4xlarge




Thousands of
Microseconds




The future
hi1.4xlarge
The past
m2.4xlarge




Microseconds




The future
hi1.4xlarge
The past
m2.4xlarge




The future
hi1.4xlarge
The past
m2.4xlarge




The future
hi1.4xlarge
Takeaway

  Netflix has built and deployed a scalable global platform based on
                           Cassandra and AWS.

Key components of the Netflix PaaS are being released as Open Source
          projects so you can build your own custom PaaS.

           If you like lots of SSD’s come and work for us….

                         http://github.com/Netflix
                        http://techblog.netflix.com
                        http://slideshare.net/Netflix

                 http://www.linkedin.com/in/adriancockcroft
                    @adrianco #netflixcloud #cassandra12

Contenu connexe

Tendances

Terraform: An Overview & Introduction
Terraform: An Overview & IntroductionTerraform: An Overview & Introduction
Terraform: An Overview & IntroductionLee Trout
 
AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...
AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...
AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...Simplilearn
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration ServiceAmazon Web Services Japan
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメEiji KOMINAMI
 
Cassandra Introduction & Features
Cassandra Introduction & FeaturesCassandra Introduction & Features
Cassandra Introduction & FeaturesDataStax Academy
 
Building a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKSBuilding a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKSDevOps.com
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 
A Pattern Language for Microservices
A Pattern Language for MicroservicesA Pattern Language for Microservices
A Pattern Language for MicroservicesChris Richardson
 
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理Amazon Web Services Japan
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud ArchitectureAdrian Cockcroft
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティスAmazon Web Services Japan
 
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatchAmazon Web Services Japan
 
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model Amazon Web Services Japan
 
Intro to AWS Developer Tools, featuring AWS CodeStar
Intro to AWS Developer Tools, featuring AWS CodeStarIntro to AWS Developer Tools, featuring AWS CodeStar
Intro to AWS Developer Tools, featuring AWS CodeStarAmazon Web Services
 
Getting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and ServerlessGetting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and ServerlessAmazon Web Services
 
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介Amazon Web Services Japan
 

Tendances (20)

Terraform: An Overview & Introduction
Terraform: An Overview & IntroductionTerraform: An Overview & Introduction
Terraform: An Overview & Introduction
 
AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...
AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...
AWS Interview Questions Part - 2 | AWS Interview Questions And Answers Part -...
 
AWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon AuroraAWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon Aurora
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメ
 
Introduction to Amazon EKS
Introduction to Amazon EKSIntroduction to Amazon EKS
Introduction to Amazon EKS
 
Cassandra Introduction & Features
Cassandra Introduction & FeaturesCassandra Introduction & Features
Cassandra Introduction & Features
 
Building a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKSBuilding a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKS
 
Deep Dive on AWS Lambda
Deep Dive on AWS LambdaDeep Dive on AWS Lambda
Deep Dive on AWS Lambda
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 
A Pattern Language for Microservices
A Pattern Language for MicroservicesA Pattern Language for Microservices
A Pattern Language for Microservices
 
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud Architecture
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
 
Data Stores @ Netflix
Data Stores @ NetflixData Stores @ Netflix
Data Stores @ Netflix
 
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
 
Intro to AWS Developer Tools, featuring AWS CodeStar
Intro to AWS Developer Tools, featuring AWS CodeStarIntro to AWS Developer Tools, featuring AWS CodeStar
Intro to AWS Developer Tools, featuring AWS CodeStar
 
Getting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and ServerlessGetting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and Serverless
 
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
 

En vedette

Architectures for High Availability - QConSF
Architectures for High Availability - QConSFArchitectures for High Availability - QConSF
Architectures for High Availability - QConSFAdrian Cockcroft
 
Yow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with NotesYow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with NotesAdrian Cockcroft
 
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...Adrian Cockcroft
 
Netflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconNetflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconAdrian Cockcroft
 
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Adrian Cockcroft
 
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionGluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionAdrian Cockcroft
 
Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013Adrian Cockcroft
 
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Adrian Cockcroft
 
SV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source PlatformSV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source PlatformAdrian Cockcroft
 
Performance tuning - A key to successful cassandra migration
Performance tuning - A key to successful cassandra migrationPerformance tuning - A key to successful cassandra migration
Performance tuning - A key to successful cassandra migrationRamkumar Nottath
 
AWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAdrian Cockcroft
 
Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Adrian Cockcroft
 
Cassandra and Solid State Drives
Cassandra and Solid State DrivesCassandra and Solid State Drives
Cassandra and Solid State DrivesRick Branson
 
Performance architecture for cloud connect
Performance architecture for cloud connectPerformance architecture for cloud connect
Performance architecture for cloud connectAdrian Cockcroft
 
DataStax: Extreme Cassandra Optimization: The Sequel
DataStax: Extreme Cassandra Optimization: The SequelDataStax: Extreme Cassandra Optimization: The Sequel
DataStax: Extreme Cassandra Optimization: The SequelDataStax Academy
 

En vedette (20)

Architectures for High Availability - QConSF
Architectures for High Availability - QConSFArchitectures for High Availability - QConSF
Architectures for High Availability - QConSF
 
Yow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with NotesYow Conference Dec 2013 Netflix Workshop Slides with Notes
Yow Conference Dec 2013 Netflix Workshop Slides with Notes
 
Gluecon keynote
Gluecon keynoteGluecon keynote
Gluecon keynote
 
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
 
Netflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconNetflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at Gluecon
 
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
 
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionGluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
 
Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013Bottleneck analysis - Devopsdays Silicon Valley 2013
Bottleneck analysis - Devopsdays Silicon Valley 2013
 
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
Gluecon 2013 - Netflix Cloud Native Tutorial Details (part 2)
 
SV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source PlatformSV Forum Platform Architecture SIG - Netflix Open Source Platform
SV Forum Platform Architecture SIG - Netflix Open Source Platform
 
NetflixOSS Meetup
NetflixOSS MeetupNetflixOSS Meetup
NetflixOSS Meetup
 
Netflix and Open Source
Netflix and Open SourceNetflix and Open Source
Netflix and Open Source
 
Dystopia as a Service
Dystopia as a ServiceDystopia as a Service
Dystopia as a Service
 
Performance tuning - A key to successful cassandra migration
Performance tuning - A key to successful cassandra migrationPerformance tuning - A key to successful cassandra migration
Performance tuning - A key to successful cassandra migration
 
AWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at Netflix
 
Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016
 
Cassandra and Solid State Drives
Cassandra and Solid State DrivesCassandra and Solid State Drives
Cassandra and Solid State Drives
 
Performance architecture for cloud connect
Performance architecture for cloud connectPerformance architecture for cloud connect
Performance architecture for cloud connect
 
Netflix in the Cloud
Netflix in the CloudNetflix in the Cloud
Netflix in the Cloud
 
DataStax: Extreme Cassandra Optimization: The Sequel
DataStax: Extreme Cassandra Optimization: The SequelDataStax: Extreme Cassandra Optimization: The Sequel
DataStax: Extreme Cassandra Optimization: The Sequel
 

Similaire à Cassandra Performance and Scalability on AWS

Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source EffortsCassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source EffortsAcunu
 
C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...
C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...
C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...DataStax Academy
 
Andy Parsons Pivotal June 2011
Andy Parsons Pivotal June 2011Andy Parsons Pivotal June 2011
Andy Parsons Pivotal June 2011Andy Parsons
 
Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...
Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...
Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...Ontico
 
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...Amazon Web Services
 
ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012
ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012
ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012Amazon Web Services
 
Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...
Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...
Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...Lviv Startup Club
 
Cassandra Operations at Netflix
Cassandra Operations at NetflixCassandra Operations at Netflix
Cassandra Operations at Netflixgreggulrich
 
VDI storage and storage virtualization
VDI storage and storage virtualizationVDI storage and storage virtualization
VDI storage and storage virtualizationSisimon Soman
 
Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...DataWorks Summit
 
High order bits from cassandra & hadoop
High order bits from cassandra & hadoopHigh order bits from cassandra & hadoop
High order bits from cassandra & hadoopsrisatish ambati
 
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...Lviv Startup Club
 
Cassandra for mission critical data
Cassandra for mission critical dataCassandra for mission critical data
Cassandra for mission critical dataOleksandr Semenov
 
High order bits from cassandra & hadoop
High order bits from cassandra & hadoopHigh order bits from cassandra & hadoop
High order bits from cassandra & hadoopsrisatish ambati
 
Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...
Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...
Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...Chris Fregly
 
Servers fail, who cares?
Servers fail, who cares? Servers fail, who cares?
Servers fail, who cares? greggulrich
 
Cluster Computing with Dryad
Cluster Computing with DryadCluster Computing with Dryad
Cluster Computing with Dryadbutest
 
Cassandra for Sysadmins
Cassandra for SysadminsCassandra for Sysadmins
Cassandra for SysadminsNathan Milford
 

Similaire à Cassandra Performance and Scalability on AWS (20)

Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source EffortsCassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
 
C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...
C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...
C* Summit 2013: Netflix Open Source Tools and Benchmarks for Cassandra by Adr...
 
Andy Parsons Pivotal June 2011
Andy Parsons Pivotal June 2011Andy Parsons Pivotal June 2011
Andy Parsons Pivotal June 2011
 
Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...
Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...
Cистема распределенного, масштабируемого и высоконадежного хранения данных дл...
 
Svc 202-netflix-open-source
Svc 202-netflix-open-sourceSvc 202-netflix-open-source
Svc 202-netflix-open-source
 
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
 
ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012
ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012
ARC203 Highly Available Architecture at Netflix - AWS re: Invent 2012
 
Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...
Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...
Yaroslav Nedashkovsky - "Data Engineering in Information Security: how to col...
 
Cassandra Operations at Netflix
Cassandra Operations at NetflixCassandra Operations at Netflix
Cassandra Operations at Netflix
 
Cassandra at no_sql
Cassandra at no_sqlCassandra at no_sql
Cassandra at no_sql
 
VDI storage and storage virtualization
VDI storage and storage virtualizationVDI storage and storage virtualization
VDI storage and storage virtualization
 
Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...
 
High order bits from cassandra & hadoop
High order bits from cassandra & hadoopHigh order bits from cassandra & hadoop
High order bits from cassandra & hadoop
 
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
 
Cassandra for mission critical data
Cassandra for mission critical dataCassandra for mission critical data
Cassandra for mission critical data
 
High order bits from cassandra & hadoop
High order bits from cassandra & hadoopHigh order bits from cassandra & hadoop
High order bits from cassandra & hadoop
 
Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...
Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...
Global Big Data Conference Sept 2014 AWS Kinesis Spark Streaming Approximatio...
 
Servers fail, who cares?
Servers fail, who cares? Servers fail, who cares?
Servers fail, who cares?
 
Cluster Computing with Dryad
Cluster Computing with DryadCluster Computing with Dryad
Cluster Computing with Dryad
 
Cassandra for Sysadmins
Cassandra for SysadminsCassandra for Sysadmins
Cassandra for Sysadmins
 

Plus de Adrian Cockcroft

Netflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search RoadshowNetflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search RoadshowAdrian Cockcroft
 
Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumAdrian Cockcroft
 
Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3) Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3) Adrian Cockcroft
 
Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)Adrian Cockcroft
 
Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)Adrian Cockcroft
 
Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...
Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...
Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...Adrian Cockcroft
 
Migrating Netflix from Datacenter Oracle to Global Cassandra
Migrating Netflix from Datacenter Oracle to Global CassandraMigrating Netflix from Datacenter Oracle to Global Cassandra
Migrating Netflix from Datacenter Oracle to Global CassandraAdrian Cockcroft
 
Netflix Velocity Conference 2011
Netflix Velocity Conference 2011Netflix Velocity Conference 2011
Netflix Velocity Conference 2011Adrian Cockcroft
 
Cmg06 utilization is useless
Cmg06 utilization is uselessCmg06 utilization is useless
Cmg06 utilization is uselessAdrian Cockcroft
 

Plus de Adrian Cockcroft (13)

Netflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search RoadshowNetflix Global Applications - NoSQL Search Roadshow
Netflix Global Applications - NoSQL Search Roadshow
 
Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV Forum
 
Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3) Cloud Architecture Tutorial - Why and What (1of 3)
Cloud Architecture Tutorial - Why and What (1of 3)
 
Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)Cloud Architecture Tutorial - Platform Component Architecture (2of3)
Cloud Architecture Tutorial - Platform Component Architecture (2of3)
 
Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)
 
Global Netflix Platform
Global Netflix PlatformGlobal Netflix Platform
Global Netflix Platform
 
Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...
Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...
Global Netflix - HPTS Workshop - Scaling Cassandra benchmark to over 1M write...
 
Migrating Netflix from Datacenter Oracle to Global Cassandra
Migrating Netflix from Datacenter Oracle to Global CassandraMigrating Netflix from Datacenter Oracle to Global Cassandra
Migrating Netflix from Datacenter Oracle to Global Cassandra
 
Netflix Velocity Conference 2011
Netflix Velocity Conference 2011Netflix Velocity Conference 2011
Netflix Velocity Conference 2011
 
Migrating to Public Cloud
Migrating to Public CloudMigrating to Public Cloud
Migrating to Public Cloud
 
Netflix in the cloud 2011
Netflix in the cloud 2011Netflix in the cloud 2011
Netflix in the cloud 2011
 
Cmg06 utilization is useless
Cmg06 utilization is uselessCmg06 utilization is useless
Cmg06 utilization is useless
 
NoSQL for Netflix
NoSQL for NetflixNoSQL for Netflix
NoSQL for Netflix
 

Dernier

A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 

Dernier (20)

A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 

Cassandra Performance and Scalability on AWS

  • 1. Cassandra Performance and Scalability on AWS August 8th, 2012 Adrian Cockcroft @adrianco #netflixcloud #cassandra12 http://www.linkedin.com/in/adriancockcroft
  • 3. Things we do do. Run benchmarks. Now.
  • 5. Screenshots from Live Demo Backup slides from pre-runs of the demo with some updates to show what actually happened
  • 6. Asgard cass_perf apps, with no instances running
  • 11. Asgard Iinitial set of cass instances up and running
  • 12. Back to Presentation While the load gets going….
  • 13.
  • 14. Scalability from 48 to 288 nodes on AWS http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html Client Writes/s by node count – Replication Factor = 3 1200000 1099837 1000000 800000 Used 288 of m1.xlarge 600000 4 CPU, 15 GB RAM, 8 ECU 537172 Cassandra 0.86 400000 Benchmark config only 366828 existed for about 1hr 200000 174373 0 0 50 100 150 200 250 300 350
  • 15. Blah Blah Blah (I’m skipping all the cloud intro etc. Netflix runs in the cloud, if you hadn’t figured that out already you aren’t paying attention and should go read slideshare.net/netflix)
  • 16. “Some people skate to the puck, I skate to where the puck is going to be” Wayne Gretzky
  • 17. Cassandra on AWS The Past The Future • Instance: m2.4xlarge • Instance: hi1.4xlarge • Storage: 2 drives, 1.7TB • Storage: 2 SSD volumes, 2TB • CPU: 8 Cores, 26 ECU • CPU: 8 HT cores, 35 ECU • RAM: 68GB • RAM: 64GB • Network: 1Gbit • Network: 10Gbit • IOPS: ~500 • IOPS: ~100,000 • Throughput: ~100Mbyte/s • Throughput: ~1Gbyte/s • Cost: $1.80/hr • Cost: $3.10/hr
  • 18. Cassandra Disk vs. SSD Benchmark Same Throughput, Lower Latency, Half Cost
  • 19. Live Demo Workload • Jenkins automation – Jmeter load driver – Asgard provisioning – Priam instance management • Traffic – Reading/writing whole 100 column rows – Randomly selected from 25M row keys – Run for 10minutes, then double ring size
  • 21. Major Front End Services • Non-member Web Site www.netflix.com – Marketing driven, sign up flow, SOX/PCI scope • Member Web Site movies.netflix.com – Personalization driven • CDNs for delivering bulk video/audio – Netflix CDN: openconnect.netflix.com • API for external and device user interfaces – Mostly private APIs, public API docs at developer.netflix.com • API for controlling video playback – DRM, QoS management, Bookmarks
  • 22. Netflix Deployed on AWS 2009 2009 2010 2010 2010 2011 Content Logs Play WWW API CS Content S3 International DRM Sign-Up Metadata Management Terabytes CS lookup EC2 Diagnostics & EMR CDN routing Search Device Config Encoding Actions S3 Movie TV Movie Customer Call Hive & Pig Bookmarks Petabytes Choosing Choosing Log Business Social Logging Ratings CS Analytics Intelligence Facebook CDNs ISPs Terabits Customers
  • 23. Cassandra Instance Architecture Linux Base AMI (CentOS) Priam Cassandra Manager Token Java7 Management, Bac kups, Autoscaling Tomcat/Java7 AppDynamics Monitoring appagent monitoring Cassandra 1.09 Log rotation AppDynamics GC and thread machineagent dump logging Etc.
  • 24. Priam – Cassandra Automation Available at http://github.com/netflix • Netflix Platform Tomcat Code • Zero touch auto-configuration • State management for Cassandra JVM • Token allocation and assignment • Broken node auto-replacement • Full and incremental backup to S3 • Restore sequencing from S3 • Grow/Shrink Cassandra “ring”
  • 25. Astyanax Available at http://github.com/netflix • Features – Complete abstraction of connection pool from RPC protocol – Fluent Style API – Operation retry with backoff – Token aware • Recipes – Distribute row lock (without zookeeper) – Multi-DC row lock – Uniqueness constraint – Multi-row uniqueness constraint – Large file storage
  • 26. Scale Up Return to live demo to watch new nodes coming online
  • 27. Kiklos Clusters growing from 12 to 24 in-service, bootstrapping, garbage-collecting, cass-down • http://explorers.us-east- 1.dyntest.netflix.net:7001/jr/cassandradashbo ard
  • 28. Kiklos Clusters growing from 12 to 24 in-service, bootstrapping, garbage-collecting, cass-down
  • 29. Asgard Showed 24 nodes per cluster, but didn’t get a screen shot
  • 30. Back to Presentation While jenkins/jmeter collects graphs and shuts down the systems
  • 31. Cassandra on AWS A highly available and durable deployment pattern
  • 32. High Availability • Cassandra stores 3 local copies, 1 per zone – Synchronous access, durable, highly available – Read/Write One fastest, use for fire and forget – Read/Write Quorum 2 of 3, use for read-after-write • AWS Availability Zones – Separate buildings – Separate power etc. – Fairly close together
  • 33. “Traditional” Cassandra Write Data Flows Single Region, Multiple Availability Zone, Not Token Aware Cassandra •Disks 2•Zone A 2 4 2 1. Client Writes to any Cassandra 3 3Cassandra If a node goes Cassandra Node •Disks5 •Disks 5 offline, hinted handoff 2. Coordinator Node •Zone C 1 •Zone B completes the write replicates to nodes when the node comes Non Token and Zones back up. 3. Nodes return ack to Aware coordinator Clients Requests can choose to 4. Coordinator returns Cassandra Cassandra wait for one node, a ack to client •Disks •Disks quorum, or all nodes to 5. Data written to •Zone B •Zone C ack the write internal commit log 3 disk (no more than Cassandra SSTable disk writes and 10 seconds later) •Disks 5 compactions occur •Zone A asynchronously
  • 34. Astyanax - Cassandra Write Data Flows Single Region, Multiple Availability Zone, Token Aware Cassandra •Disks •Zone A 1. Client Writes to Cassandra 2 2Cassandra If a node goes nodes and Zones •Disks3 •Disks 3 offline, hinted handoff 2. Nodes return ack to •Zone C 1 •Zone B completes the write client Token when the node comes 3. Data written to back up. internal commit log Aware disks (no more than Clients Requests can choose to 10 seconds later) Cassandra Cassandra wait for one node, a •Disks •Disks quorum, or all nodes to •Zone B •Zone C ack the write 2 Cassandra SSTable disk writes and •Disks 3 compactions occur •Zone A asynchronously
  • 35. Data Flows for Multi-Region Writes Token Aware, Consistency Level = Local Quorum 1. Client writes to local replicas If a node or region goes offline, hinted handoff 2. Local write acks returned to completes the write when the node comes back up. Client which continues when Nightly global compare and repair jobs ensure 2 of 3 local nodes are everything stays consistent. committed 3. Local coordinator writes to remote coordinator. 100+ms latency Cassandra Cassandra 4. When data arrives, remote • Disks • Zone A • Disks • Zone A coordinator node acks and Cassandra 2 2 Cassandra Cassandra 4Cassandra 6 • Disks • Disks 6 3 5• Disks6 4 Disks6 copies to other remote zones • Zone C 1 • Zone B • Zone C • • Zone B 4 5. Remote nodes ack to local US EU coordinator Clients Clients Cassandra 2 Cassandra Cassandra Cassandra 6. Data flushed to internal • Disks • Zone B • Disks • Zone C 6 • Disks • Zone B • Disks • Zone C commit log disks (no more Cassandra 5 6Cassandra • Disks than 10 seconds later) • Zone A • Disks • Zone A
  • 36. Extending to Multi-Region Added production UK/Ireland support with no downtime Minimize impact on original cluster using bulk backup move 1. Create cluster in EU Take a Boeing 737 on a domestic flight, upgrade it to a 747 by adding more engines, fuel and bigger wings 2. Backup US cluster to S3 and fly it to Europe without landing it on the way… 3. Restore backup in EU 4. Local repair EU cluster 5. Global repair/join Cassandra 100+ms latency Cassandra 1 • Disks • Disks • Zone A • Zone A Cassandra Cassandra Cassandra Cassandra • Disks • Disks • Disks • Disks • Zone C • Zone B • Zone C • Zone B US 5 EU Clients Clients Cassandra Cassandra Cassandra Cassandra • Disks • Disks • Disks • Disks • Zone B • Zone C • Zone B • Zone C Cassandra Cassandra • Disks • Disks • Zone A 3 • Zone A 4 2 S3
  • 37. Cassandra Backup • Full Backup Cassandra Cassandra Cassandra – Time based snapshot – SSTable compress -> S3 Cassandra Cassandra • Incremental S3 Backup Cassandra Cassandra – SSTable write triggers compressed copy to S3 Cassandra Cassandra • Archive Cassandra Cassandra – Copy cross region A
  • 38. ETL for Cassandra • Data is de-normalized over many clusters! • Too many to restore from backups for ETL • Solution – read backup files using Hadoop • Aegisthus – http://techblog.netflix.com/2012/02/aegisthus-bulk-data-pipeline-out-of.html – High throughput raw SSTable processing – Re-normalizes many clusters to a consistent view – Extract, Transform, then Load into Teradata
  • 39. Netflix Open Source Strategy • Release PaaS Components git-by-git – Source at github.com/netflix – we build from it… – Intros and techniques at techblog.netflix.com – Blog post or new code every few weeks • Motivations – Give back to Apache licensed OSS community – Motivate, retain, hire top engineers – “Peer pressure” code cleanup, external contributions
  • 40. Open Source Projects and Posts Legend Github / Techblog Priam Exhibitor Servo and Autoscaling Cassandra as a Service Zookeeper as a Service Scripts Apache Contributions Astyanax Honu Curator Techblog Post Cassandra client for Log4j streaming to Zookeeper Patterns Java Hadoop Coming Soon EVCache CassJMeter Circuit Breaker Memcached as a Cassandra test suite Robust service pattern Service Cassandra Asgard Eureka / Discovery Multi-region EC2 AutoScaleGroup based Service Directory datastore support AWS console Aegisthus Archaius Chaos Monkey Hadoop ETL for Dynamics Properties Robustness verification Cassandra Service
  • 41. Chaos Monkey http://techblog.netflix.com/2012/07/chaos-monkey-released-into-wild.html • Computers (Datacenter or AWS) randomly die – Fact of life, but too infrequent to test resiliency • Test to make sure systems are resilient – Allow any instance to fail without customer impact • Chaos Monkey hours – Monday-Friday 9am-3pm random instance kill • Application configuration option – Apps now have to opt-out from Chaos Monkey
  • 42. Asgard http://techblog.netflix.com/2012/06/asgard-web-based-cloud-management-and.html • Replacement for AWS Console at Scale – Groovy/Grails/JVM based – Supports all AWS regions on a global basis – Specific to AWS feature set • Hides the AWS credentials – Use AWS IAM to issue restricted keys for Asgard – Each Asgard instance manages one account – One install each for test, prod, audit accounts
  • 43. Roadmap for 2012 • More resiliency and improved availability • More automation, orchestration • “Hardening” the platform, code clean-up • Lower latency for web services and devices • IPv6 – running now, see techblog for details • More open sourced components • Las Vegas in November - AWS Re:Invent
  • 44. Back to Live Demo
  • 45. Disclaimers • We didn’t have time to tune the demo • These are the plots from the live demo run • Run’s need to be longer to get to steady state • Data size only reached around 5GB per node • Plenty of “I wonder why it did that” remains • It’s a fair comparison, but not the best absolute performance possible for this workload and configuration • When you remove the IO bottleneck, the next few bottlenecks appear…
  • 46. Activity during the talk 10:30-11:30 Custom AppDynamics dashboard showing CPU and IOPS per node
  • 47. Jmeter Plots • Plots are the output of the Jenkins build • Each instance has its own set of plots • Each availability zone has its own summary plots • One of the three zone summary plots is compared for each metric • Plot collection is currently duplicated as we are transitioning from “Epic” to “Atlas”
  • 48. Jenkins Collected results and graphs after job has completed
  • 49. The past m2.4xlarge Instances per zone The future hi1.4xlarge
  • 50. The past m2.4xlarge Transactions per zone, same as total client transactions The future hi1.4xlarge
  • 56. Takeaway Netflix has built and deployed a scalable global platform based on Cassandra and AWS. Key components of the Netflix PaaS are being released as Open Source projects so you can build your own custom PaaS. If you like lots of SSD’s come and work for us…. http://github.com/Netflix http://techblog.netflix.com http://slideshare.net/Netflix http://www.linkedin.com/in/adriancockcroft @adrianco #netflixcloud #cassandra12

Notes de l'éditeur

  1. Complete connection pool abstractionQueries and mutations wrapped in objects created by the Keyspace implementation making it possible to retry failed operations.  This varies from other connection pool implementations on which the operation is created on a specific connection and must be completely redone if it fails.Simplified serialization via method overloading.  The low level thrift library only understands data that is serialized to a byte array.  Hector requires serializers to be specified for nearly every call.  Astyanax minimizes the places where serializers are specified by using predefined ColumnFamiliy and ColumnPath definitions which specify the serializers.  The API also overloads set and get operation for common data types.The internal library does not log anything.  All internal events are instead ... calls to a ConnectionPoolMonitor interface.  This allows customization of log levels and filtering of repeating events outside of the scope of the connection poolSuper columns will soon be replaced by Composite column names. As such it is recommended to not use super columns at all and to use Composite column names instead. There is some support for super columns in Astyanax but those methods have been deprecated and will eventually be removed.