SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Neustar Cassandra Experience




11/30/11
Chirag Patel
    © Neustar, Inc. / Proprietary and Confidential
Who is Neustar?




2   © Neustar, Inc. / Proprietary and Confidential
UltraDNS Overview

» Cloud based DNS Services
  »   Managed External DNS
      »   Basic DNS
      »   Traffic Management Services
  » UltraDDI - Managed Internal DNS, DHCP & IPAM
  » Ultra Internet Gateway – Recursive DNS
  » SiteProtect – DDOS Mitigation Service
Existing design
» External applications inject DNS data
  » UI / SOAP-API / AXFR / IXFR
  » Millions of record changes per day
» Oracle as persistent store
  » Millions of zones
  » Hundreds of Millions of records
» Oracle replicates this data into our DNS Server nodes
  »   15 nodes globally distributed
» DNS Server answers DNS queries
  »   17 Billion queries per day
Existing design
                          Injecting Applications




                        Oracle Master Databases




  Oracle Replicate   Oracle Replicate              Oracle Replicate
     Database           Database                      Database




    DNS Server         DNS Server                    DNS Server
DNSSEC Requirements
» What is DNSSEC?
    »   IETF specifications for securing DNS information
    »   Authentication of DNS answers
»   Support for adding DNS Security into existing infrastructure
»   Typical record increase of 8x per zone
»   Support for versioning existing and new DNS data
»   Support for storing DNS data before signing
»   DNSSEC &non-DNSSEC injecting applications
»   DNS Server will still read data from Oracle
»   Separate Beta environment for DNSSEC
Why Cassandra?
» Write optimized
» Eventually consistent
» Highly scalable
» Highly available even with heavy write loads
» Easy to understand data model
» Excellent high level, easy to use client libraries available
  (hector, pycassa)
» Lot of resources available online
    »   Mailing list, incl. Jonathan Ellis are extremely responsive
Migration to Cassandra
                         Injecting Applications




 Signer           Cassandra Cluster               Oracle Master Databases




          Oracle Replicate   Oracle Replicate           Oracle Replicate
             Database           Database                   Database


                                                             DNS
                                    DNS
            DNS Server                                      Server
                                   Server
                                                            Node N
Proof of Concept
»   Consulting from Riptano (Now DataStax)
»   2 day data design brain storming
»   Used Cassandra v0.7
»   Used Hector Cassandra client v0.7
Cassandra Data Design
           Zone Indexes                          Zone

 Account     Index      Zone         Zone       Zone     Serialize
 ID          Key        Name         Name       VID      d Zone



           Record Indexes                ZoneVersion
 Zone_RTy     Index     Record       Zone   Zone
 pe           Key       ID           Name   VID



              Record                     ZoneRecordChanges

 Zone        RecordID   Serialized   Zone VID   Record     Change
 Name                   Record                  ID         Type
Searching Example
           Zone Indexes                                  Zone
                                           google.com    V2     <Zone Data V2>
 1   Type_Primary_google.c   google.com.
     om                                                  V1     <Zone Data V1>
     Type_Primary_yahoo.c    yahoo.com     yahoo.com     V2     <Zone Data V2>
     om
                                                         V1     <Zone Data V1>


          Record Indexes                                 Record
 Yahoo.com._   Name_a1_R2          R2
 A                                          Yahoo.com   R2           <R2 Data>
               Name_a3_R3          R3
                                                        R3           <R3 Data>
               TTL_0086400_R2      R2
               TTL_0096400_R3      R3
Versioning Example
                 Zone                                             ZoneVersion
yahoo.com        V3     <Zone Data V3>             Yahoo.com           V3       <Empty>
                 V2     <Zone Data V2>                                 V2       <Empty>
                 V1     <Zone Data V1>                                 V1       <Empty>


                                                         ZoneRecordChanges
            Record                                 V3                 R4           Add

Yahoo.com   R4              <R4 Data>                                 R2           Del

            R3              <R3 Data>              V2                 R3           Add
                                                                      R1           Del
                                                   V1                 R1           Add
                                                                      R2           Add


  Yahoo.com.            Del R4, Add   Yahoo.com.        Del R3, Add        Yahoo.com.
                        R2                              R1
  V3                                  V2                                   V2
                                           D
  R3                                  R3                                   R1
  R4                                  R2                                   R2
Performance Comparison
» Significant improvement in Write times
  » Shotgun across multiple Cassandra nodes in a datacenter
  » Insertions times went from minutes to seconds
» No wait between writes
  »   Oracle replication would choke on large inserts
Problems faced
»   Versioning
»   Indexing/Searching
»   Pagination
»   Sync issues with Oracle
»   Training QA
»   Training OPS
Lessons learned
» Difficult to sync Oracle & Cassandra together
» Versioning is difficult, need to take different approach
» Pagination might require to cache data in memory
  »   Redis or memcached
» Searching needs to be well thought of before designing
  data model
» Need to involve Operations & QA team sooner for more
  feedback
Future Plans
»   Deploy Cassandra in main production environment
»   Simplify existing data model
»   Common Interface to interact with Oracle & Cassandra
»   Use Cassandra to store smaller set of isolated data.
»   Replace Oracle fully with Cassandra in one injecting
    application
Questions?




Contact Kevin.Mahoney@neustar.biz for details

Weitere ähnliche Inhalte

Ähnlich wie Neustar Cassandra Experience

Living on the edge
Living on the edgeLiving on the edge
Living on the edgeAdrian Cole
 
RonDB, a NewSQL Feature Store for AI applications.pdf
RonDB, a NewSQL Feature Store for AI applications.pdfRonDB, a NewSQL Feature Store for AI applications.pdf
RonDB, a NewSQL Feature Store for AI applications.pdfmikael329498
 
Active Directory Fundamentals
Active Directory FundamentalsActive Directory Fundamentals
Active Directory FundamentalsAngie Miller
 
Big Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingBig Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingAraf Karsh Hamid
 
Getting started with MariaDB with Docker
Getting started with MariaDB with DockerGetting started with MariaDB with Docker
Getting started with MariaDB with DockerMariaDB plc
 
Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011Henrik Ingo
 
SharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperSharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperK.Mohamed Faizal
 
Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...
Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...
Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...mfrancis
 
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)confluent
 
DNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approachDNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approachScaleway
 
Build Dynamic DNS server from scratch in C (Part1)
Build Dynamic DNS server from scratch in C (Part1)Build Dynamic DNS server from scratch in C (Part1)
Build Dynamic DNS server from scratch in C (Part1)Yen-Kuan Wu
 
Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...
Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...
Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...javier ramirez
 
Building Your Data Warehouse with Amazon Redshift
Building Your Data Warehouse with Amazon RedshiftBuilding Your Data Warehouse with Amazon Redshift
Building Your Data Warehouse with Amazon RedshiftAmazon Web Services
 
DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]
DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]
DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]APNIC
 
Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...
Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...
Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...SQLExpert.pl
 

Ähnlich wie Neustar Cassandra Experience (20)

Riak perf wins
Riak perf winsRiak perf wins
Riak perf wins
 
Living on the edge
Living on the edgeLiving on the edge
Living on the edge
 
RonDB, a NewSQL Feature Store for AI applications.pdf
RonDB, a NewSQL Feature Store for AI applications.pdfRonDB, a NewSQL Feature Store for AI applications.pdf
RonDB, a NewSQL Feature Store for AI applications.pdf
 
Ad fundamentals
Ad fundamentalsAd fundamentals
Ad fundamentals
 
Active Directory Fundamentals
Active Directory FundamentalsActive Directory Fundamentals
Active Directory Fundamentals
 
Big Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingBig Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb Sharding
 
Getting started with MariaDB with Docker
Getting started with MariaDB with DockerGetting started with MariaDB with Docker
Getting started with MariaDB with Docker
 
Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011
 
Fundamentals
FundamentalsFundamentals
Fundamentals
 
SharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperSharePoint 2010 Online for Developer
SharePoint 2010 Online for Developer
 
Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...
Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...
Apache Directory and the OSGi Service Platform - Enrique Rodriguez, PMC Membe...
 
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
 
DNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approachDNS: from manual records to a modern & dynamic approach
DNS: from manual records to a modern & dynamic approach
 
Build Dynamic DNS server from scratch in C (Part1)
Build Dynamic DNS server from scratch in C (Part1)Build Dynamic DNS server from scratch in C (Part1)
Build Dynamic DNS server from scratch in C (Part1)
 
6421 b Module-03
6421 b Module-036421 b Module-03
6421 b Module-03
 
Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...
Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...
Big Data analytics with Nginx, Logstash, Redis, Google Bigquery and Neo4j, ja...
 
1 technical-dns-workshop-day1
1 technical-dns-workshop-day11 technical-dns-workshop-day1
1 technical-dns-workshop-day1
 
Building Your Data Warehouse with Amazon Redshift
Building Your Data Warehouse with Amazon RedshiftBuilding Your Data Warehouse with Amazon Redshift
Building Your Data Warehouse with Amazon Redshift
 
DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]
DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]
DNSSEC Tutorial, by Champika Wijayatunga [APNIC 38]
 
Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...
Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...
Always On - Wydajność i bezpieczeństwo naszych danych - High Availability SQL...
 

Mehr von Neustar, Inc.

Vacation Traveler Insights
Vacation Traveler InsightsVacation Traveler Insights
Vacation Traveler InsightsNeustar, Inc.
 
Game of Screens: Tech kingdoms creating the omni-channel experience
Game of Screens: Tech kingdoms creating the omni-channel experienceGame of Screens: Tech kingdoms creating the omni-channel experience
Game of Screens: Tech kingdoms creating the omni-channel experienceNeustar, Inc.
 
The Truth About Cross-Device Marketing & Millennials
The Truth About Cross-Device Marketing & MillennialsThe Truth About Cross-Device Marketing & Millennials
The Truth About Cross-Device Marketing & MillennialsNeustar, Inc.
 
Trends Shaping Local Search in 2014
Trends Shaping Local Search in 2014Trends Shaping Local Search in 2014
Trends Shaping Local Search in 2014Neustar, Inc.
 
What We are Learning About DNS Security: DNSSEC and Much More..
What We are Learning About DNS Security:  DNSSEC and Much More..What We are Learning About DNS Security:  DNSSEC and Much More..
What We are Learning About DNS Security: DNSSEC and Much More..Neustar, Inc.
 
FOSE 2011: DNSSEC and the Government, Lessons Learned
FOSE 2011: DNSSEC and the Government, Lessons LearnedFOSE 2011: DNSSEC and the Government, Lessons Learned
FOSE 2011: DNSSEC and the Government, Lessons LearnedNeustar, Inc.
 
How To Trust The Cloud
How To Trust The CloudHow To Trust The Cloud
How To Trust The CloudNeustar, Inc.
 
The Future of the Internet: Open Research Topics
The Future of the Internet: Open Research TopicsThe Future of the Internet: Open Research Topics
The Future of the Internet: Open Research TopicsNeustar, Inc.
 

Mehr von Neustar, Inc. (10)

Vacation Traveler Insights
Vacation Traveler InsightsVacation Traveler Insights
Vacation Traveler Insights
 
Game of Screens: Tech kingdoms creating the omni-channel experience
Game of Screens: Tech kingdoms creating the omni-channel experienceGame of Screens: Tech kingdoms creating the omni-channel experience
Game of Screens: Tech kingdoms creating the omni-channel experience
 
The Truth About Cross-Device Marketing & Millennials
The Truth About Cross-Device Marketing & MillennialsThe Truth About Cross-Device Marketing & Millennials
The Truth About Cross-Device Marketing & Millennials
 
Hi-Def Marketing
Hi-Def MarketingHi-Def Marketing
Hi-Def Marketing
 
Adweek and Neustar
Adweek and NeustarAdweek and Neustar
Adweek and Neustar
 
Trends Shaping Local Search in 2014
Trends Shaping Local Search in 2014Trends Shaping Local Search in 2014
Trends Shaping Local Search in 2014
 
What We are Learning About DNS Security: DNSSEC and Much More..
What We are Learning About DNS Security:  DNSSEC and Much More..What We are Learning About DNS Security:  DNSSEC and Much More..
What We are Learning About DNS Security: DNSSEC and Much More..
 
FOSE 2011: DNSSEC and the Government, Lessons Learned
FOSE 2011: DNSSEC and the Government, Lessons LearnedFOSE 2011: DNSSEC and the Government, Lessons Learned
FOSE 2011: DNSSEC and the Government, Lessons Learned
 
How To Trust The Cloud
How To Trust The CloudHow To Trust The Cloud
How To Trust The Cloud
 
The Future of the Internet: Open Research Topics
The Future of the Internet: Open Research TopicsThe Future of the Internet: Open Research Topics
The Future of the Internet: Open Research Topics
 

Kürzlich hochgeladen

Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
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
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
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
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 

Kürzlich hochgeladen (20)

Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
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
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

Neustar Cassandra Experience

  • 1. Neustar Cassandra Experience 11/30/11 Chirag Patel © Neustar, Inc. / Proprietary and Confidential
  • 2. Who is Neustar? 2 © Neustar, Inc. / Proprietary and Confidential
  • 3. UltraDNS Overview » Cloud based DNS Services » Managed External DNS » Basic DNS » Traffic Management Services » UltraDDI - Managed Internal DNS, DHCP & IPAM » Ultra Internet Gateway – Recursive DNS » SiteProtect – DDOS Mitigation Service
  • 4. Existing design » External applications inject DNS data » UI / SOAP-API / AXFR / IXFR » Millions of record changes per day » Oracle as persistent store » Millions of zones » Hundreds of Millions of records » Oracle replicates this data into our DNS Server nodes » 15 nodes globally distributed » DNS Server answers DNS queries » 17 Billion queries per day
  • 5. Existing design Injecting Applications Oracle Master Databases Oracle Replicate Oracle Replicate Oracle Replicate Database Database Database DNS Server DNS Server DNS Server
  • 6. DNSSEC Requirements » What is DNSSEC? » IETF specifications for securing DNS information » Authentication of DNS answers » Support for adding DNS Security into existing infrastructure » Typical record increase of 8x per zone » Support for versioning existing and new DNS data » Support for storing DNS data before signing » DNSSEC &non-DNSSEC injecting applications » DNS Server will still read data from Oracle » Separate Beta environment for DNSSEC
  • 7. Why Cassandra? » Write optimized » Eventually consistent » Highly scalable » Highly available even with heavy write loads » Easy to understand data model » Excellent high level, easy to use client libraries available (hector, pycassa) » Lot of resources available online » Mailing list, incl. Jonathan Ellis are extremely responsive
  • 8. Migration to Cassandra Injecting Applications Signer Cassandra Cluster Oracle Master Databases Oracle Replicate Oracle Replicate Oracle Replicate Database Database Database DNS DNS DNS Server Server Server Node N
  • 9. Proof of Concept » Consulting from Riptano (Now DataStax) » 2 day data design brain storming » Used Cassandra v0.7 » Used Hector Cassandra client v0.7
  • 10. Cassandra Data Design Zone Indexes Zone Account Index Zone Zone Zone Serialize ID Key Name Name VID d Zone Record Indexes ZoneVersion Zone_RTy Index Record Zone Zone pe Key ID Name VID Record ZoneRecordChanges Zone RecordID Serialized Zone VID Record Change Name Record ID Type
  • 11. Searching Example Zone Indexes Zone google.com V2 <Zone Data V2> 1 Type_Primary_google.c google.com. om V1 <Zone Data V1> Type_Primary_yahoo.c yahoo.com yahoo.com V2 <Zone Data V2> om V1 <Zone Data V1> Record Indexes Record Yahoo.com._ Name_a1_R2 R2 A Yahoo.com R2 <R2 Data> Name_a3_R3 R3 R3 <R3 Data> TTL_0086400_R2 R2 TTL_0096400_R3 R3
  • 12. Versioning Example Zone ZoneVersion yahoo.com V3 <Zone Data V3> Yahoo.com V3 <Empty> V2 <Zone Data V2> V2 <Empty> V1 <Zone Data V1> V1 <Empty> ZoneRecordChanges Record V3 R4 Add Yahoo.com R4 <R4 Data> R2 Del R3 <R3 Data> V2 R3 Add R1 Del V1 R1 Add R2 Add Yahoo.com. Del R4, Add Yahoo.com. Del R3, Add Yahoo.com. R2 R1 V3 V2 V2 D R3 R3 R1 R4 R2 R2
  • 13. Performance Comparison » Significant improvement in Write times » Shotgun across multiple Cassandra nodes in a datacenter » Insertions times went from minutes to seconds » No wait between writes » Oracle replication would choke on large inserts
  • 14. Problems faced » Versioning » Indexing/Searching » Pagination » Sync issues with Oracle » Training QA » Training OPS
  • 15. Lessons learned » Difficult to sync Oracle & Cassandra together » Versioning is difficult, need to take different approach » Pagination might require to cache data in memory » Redis or memcached » Searching needs to be well thought of before designing data model » Need to involve Operations & QA team sooner for more feedback
  • 16. Future Plans » Deploy Cassandra in main production environment » Simplify existing data model » Common Interface to interact with Oracle & Cassandra » Use Cassandra to store smaller set of isolated data. » Replace Oracle fully with Cassandra in one injecting application