SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
Scaling to billions 
Lessons learned at Circonus
Theo Schlossnagle 
@postwait 
CEO Circonus
What is Circonus? 
and why does it need to scale?
Circonus 
Telemetry collection 
Telemetry analysis 
Visualization 
Alerting 
SaaS… trillions of measurements
Architecture Collection 
• Distributed collection nodes 
• Distributed aggregation nodes 
• Distributed storage nodes 
• Centralized message bus 
(for now, federate if needed) 
Storage 
Agg 
MQ
Distributed Collection 
• It all starts with Reconnoiter 
https://github.com/circonus-labs/reconnnoiter 
• This is, by its design, distributed. 
• It is hard to collect 
trillions of measurements per day 
on a single node.
Jobs are run 
• They collect data and bundle it into messages (protobufs) 
• A single message may have one to thousands of 
measurements. 
• Data can be requested (pulled) by Reconnoiter 
• Data can be received (puhed) into Reconnoiter 
• Uses jlog (https://github.com/omniti-labs/jlog) to store and 
forward the telemetry data. 
• C and lua (LuaJIT).
Aggregation 
• In the beginning, we started with a single aggregator 
receiving all messages. 
• Redundancy was simple, but scale was not. 
• It is not that difficult to 
route billions of messages per day 
on a single node.
Storage 
• We started with Postgres 
• Great database, 
but our time-series data was not efficiently stored 
in a relational database.
Column-store hack on Postgres 
• We altered the schema. 
• Instead of one measurement per row… 
– 1440 measurements in array in a single row 
– one row per day
Data volume grew 
• Our data volume grew and we federated streams of data 
across pairs of redundant Postgres databases. 
• This would scale as needed. 
• Had unreasonable management burden.
Safety first… 
How to switch from one database 
technology to another? 
Cut-over always has casualties. 
Solution 1: partial cut-over 
Solution 2: concurrent operations
We built “Snowth” 
• We realized all our measurement storage operations were 
commutative. 
• We designed distributed, consistent-hashed telemetry 
storage system with no single point of failure.
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n2-­‐2 
n2-­‐3 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n4-­‐1 
n4-­‐2 
n4-­‐4 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐3 
n3-­‐4 
n4-­‐3 
n6-­‐2 
n6-­‐4
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n2-­‐2 
n2-­‐3 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n3-­‐4 
n4-­‐1 
n4-­‐2 
n4-­‐3 
n4-­‐4 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐2 
n6-­‐3 
n6-­‐4 
o1
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n2-­‐2 
n2-­‐3 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n3-­‐4 
n4-­‐1 
n4-­‐2 
n4-­‐3 
n4-­‐4 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐2 
n6-­‐3 
n6-­‐4 
o1
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n2-­‐2 
n2-­‐3 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n4-­‐1 
n4-­‐2 
n4-­‐4 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐3 
n3-­‐4 
n4-­‐3 
n6-­‐2 
n6-­‐4
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n2-­‐2 
n2-­‐3 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n3-­‐4 
n4-­‐1 
n4-­‐2 
n4-­‐4 
n4-­‐3 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐2 
n6-­‐3 
n6-­‐4
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n2-­‐2 
n2-­‐3 
Availability 
Zone 
1 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n3-­‐4 
n4-­‐1 
n4-­‐2 
n4-­‐4 
n4-­‐3 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐2 
n6-­‐3 
n6-­‐4 Availability 
Zone 
2
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n2-­‐2 
n2-­‐3 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n3-­‐4 
n4-­‐1 
n4-­‐2 
n4-­‐4 
n4-­‐3 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐2 
n6-­‐3 
n6-­‐4 
o1 
Availability 
Zone 
2 
Availability 
Zone 
1
Availability 
Zone 
1 
Availability 
Zone 
2 
n1-­‐1 
n1-­‐2 
n1-­‐3 
n1-­‐4 
n2-­‐1 
n4-­‐4 
n2-­‐2 
n2-­‐3 
n2-­‐4 
n3-­‐1 
n3-­‐2 
n3-­‐3 
n3-­‐4 
n4-­‐1 
n4-­‐2 
n4-­‐3 
n5-­‐1 
n5-­‐2 
n5-­‐3 
n5-­‐4 
n6-­‐1 
n6-­‐2 
n6-­‐3 
n6-­‐4 
o1
Availability 
Zone 
1 
Availability 
Zone 
2 
n1-­‐ 
1 
n1-­‐ 
2 
n1-­‐ 
3 
n1-­‐ 
4 
n2-­‐ 
1 
n2-­‐ 
2 
n2-­‐ 
3 
n2-­‐ 
4 
n3-­‐ 
1 
n3-­‐ 
2 
n3-­‐ 
3 
n3-­‐ 
4 
n4-­‐ 
1 
n4-­‐ 
2 
n4-­‐ 
4 
n4-­‐ 
3 
n5-­‐ 
1 
n5-­‐ 
2 
n5-­‐ 
3 
n5-­‐ 
4 
n6-­‐ 
1 
n6-­‐ 
2 
n6-­‐ 
3 
n6-­‐ 
4 
n1-­‐ 
1 
n1-­‐ 
2 
n1-­‐ 
3 
n1-­‐ 
4 
n2-­‐ 
1 
n2-­‐ 
2 
n2-­‐ 
3 
n2-­‐ 
4 
n3-­‐ 
1 
n3-­‐ 
2 
n3-­‐ 
3 
n3-­‐ 
4 
n4-­‐ 
1 
n4-­‐ 
2 
n4-­‐ 
4 
n4-­‐ 
3 
n5-­‐ 
1 
n5-­‐ 
2 
n5-­‐ 
3 
n5-­‐ 
4 
n6-­‐ 
1 
n6-­‐ 
2 
n6-­‐ 
3 
n6-­‐ 
4
A real ring 
Keep it simple, stupid. 
We actually don’t do split AZ.
Rethinking it all
Time & Safety 
Small, well-defined API allowed for low-maintenance, 
concurrent operations and ongoing development.
As needs increased… 
• We added computation support into the database. 
– allowing simple “cheap” computation 
to be “moved” to the data 
– allowing data to be moved to 
complex “expensive” computation
Real-time Analysis 
• Real-time (or soft real-time) requires 
low latency, high-throughput systems. 
• We used RabbitMQ. 
• Things worked well until they broke.
Message Sizes Matter 
• Benchmarks suck: 
they never resemble your use-case 
• MQ benchmarks burned me. 
• Our message sizes are between 0.2k and 6k. 
• It turns out many MQ benchmarks are at 0k. 
*WHAT?!*
RabbitMQ falls 
• At around 50k message per second at our message sizes, 
RabbitMQ failed. 
• Worse, it did not fail gracefully. 
• Another example of a product that works well… 
until it is worthless.
Soul-searching lead to Fq 
• We looked and looked. 
• Kafka led the pack, but still… 
• Existing solutions didn’t meet our use-case. 
• We built Fq: 
https://github.com/postwait/fq
Fq 
• Subscribers can specify queue semantics: 
– public (multiple competing subscribers), private 
– block (pause sender flow control), drop 
– backlog 
– transient, permanent 
– memory, file-backed 
– many millions of messages (gigabits) per second
Safety first… 
How to switch from one message 
queueing technology to another? 
Cut-over always has casualties. 
Solution 1: partial cut-over 
Solution 2: concurrent operations
Duplicity 
“concurrent” deployment of 
message queues means one thing: 
• every consumer must support 
detection and handling of 
duplicate message delivery 
AXIOM: 
there are 3 numbers in computing: 
0, 1 and ∞.
solve 
easy 
problems 
1. Temporal relevance 
M: Message 
f: process 
old messages don’t matter to us… 
say > 10 seconds 
(dedup only N=20 past seconds) 
2. Timestamp messages at source 
If TM > max(T) 
DUPTM %N ⃪ ∅ 
T ⃪ T ∪ TM 
If DUPTM %N ∌ h(M) 
f(M) 
DUPTM %N ⃪ DUPTM %N ∪ h(M) 
TM % N 
DUP 
0 1 2 N-1
A failure 
and no one cared.
Спасибо.

Weitere ähnliche Inhalte

Was ist angesagt?

Securing Sharded Networks with Swarm
Securing Sharded Networks with SwarmSecuring Sharded Networks with Swarm
Securing Sharded Networks with SwarmFluence Labs
 
NoSQL and Einstein's theory of relativity
NoSQL and Einstein's theory of relativityNoSQL and Einstein's theory of relativity
NoSQL and Einstein's theory of relativityLars Marius Garshol
 
Low level java programming
Low level java programmingLow level java programming
Low level java programmingPeter Lawrey
 
The Concierge Paradigm
The Concierge ParadigmThe Concierge Paradigm
The Concierge ParadigmGareth Brown
 
Introduction to Quantum Cryptography
Introduction to Quantum CryptographyIntroduction to Quantum Cryptography
Introduction to Quantum CryptographyAndrew Manoske
 
Reshaping Core Genomics Software Tools for the Manycore Era
Reshaping Core Genomics Software Tools for the Manycore EraReshaping Core Genomics Software Tools for the Manycore Era
Reshaping Core Genomics Software Tools for the Manycore EraIntel® Software
 
Microservices 101: Exploiting Reality's Constraints with Technology
Microservices 101: Exploiting Reality's Constraints with TechnologyMicroservices 101: Exploiting Reality's Constraints with Technology
Microservices 101: Exploiting Reality's Constraints with TechnologyLegacy Typesafe (now Lightbend)
 
Trace everything, when APM meets SysAdmins
Trace everything, when APM meets SysAdminsTrace everything, when APM meets SysAdmins
Trace everything, when APM meets SysAdminsSysdig
 
Post Quantum Cryptography: Technical Overview
Post Quantum Cryptography: Technical OverviewPost Quantum Cryptography: Technical Overview
Post Quantum Cryptography: Technical OverviewRamesh Nagappan
 
Chronicle accelerate building a digital currency
Chronicle accelerate   building a digital currencyChronicle accelerate   building a digital currency
Chronicle accelerate building a digital currencyPeter Lawrey
 
Quantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, CiscoQuantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, CiscoVishnu Pendyala
 
Introduction to OpenHFT for Melbourne Java Users Group
Introduction to OpenHFT for Melbourne Java Users GroupIntroduction to OpenHFT for Melbourne Java Users Group
Introduction to OpenHFT for Melbourne Java Users GroupPeter Lawrey
 
You're monitoring Kubernetes Wrong
You're monitoring Kubernetes WrongYou're monitoring Kubernetes Wrong
You're monitoring Kubernetes WrongSysdig
 
Large scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutionsLarge scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutionsHan Zhou
 
DPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and DemonstrationDPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and DemonstrationOPNFV
 
CCNxCon2012: Session 5: Object Sizes in Named Data Networking
CCNxCon2012: Session 5: Object Sizes in Named Data NetworkingCCNxCon2012: Session 5: Object Sizes in Named Data Networking
CCNxCon2012: Session 5: Object Sizes in Named Data NetworkingPARC, a Xerox company
 
LF_DPDK17_Accelerating P4-based Dataplane with DPDK
LF_DPDK17_Accelerating P4-based Dataplane with DPDKLF_DPDK17_Accelerating P4-based Dataplane with DPDK
LF_DPDK17_Accelerating P4-based Dataplane with DPDKLF_DPDK
 
Micro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical SystemsMicro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical SystemsHeechul Yun
 
Quantum Cryptography
Quantum CryptographyQuantum Cryptography
Quantum CryptographyNARESHGOTMAL
 

Was ist angesagt? (20)

Modern Cryptography
Modern CryptographyModern Cryptography
Modern Cryptography
 
Securing Sharded Networks with Swarm
Securing Sharded Networks with SwarmSecuring Sharded Networks with Swarm
Securing Sharded Networks with Swarm
 
NoSQL and Einstein's theory of relativity
NoSQL and Einstein's theory of relativityNoSQL and Einstein's theory of relativity
NoSQL and Einstein's theory of relativity
 
Low level java programming
Low level java programmingLow level java programming
Low level java programming
 
The Concierge Paradigm
The Concierge ParadigmThe Concierge Paradigm
The Concierge Paradigm
 
Introduction to Quantum Cryptography
Introduction to Quantum CryptographyIntroduction to Quantum Cryptography
Introduction to Quantum Cryptography
 
Reshaping Core Genomics Software Tools for the Manycore Era
Reshaping Core Genomics Software Tools for the Manycore EraReshaping Core Genomics Software Tools for the Manycore Era
Reshaping Core Genomics Software Tools for the Manycore Era
 
Microservices 101: Exploiting Reality's Constraints with Technology
Microservices 101: Exploiting Reality's Constraints with TechnologyMicroservices 101: Exploiting Reality's Constraints with Technology
Microservices 101: Exploiting Reality's Constraints with Technology
 
Trace everything, when APM meets SysAdmins
Trace everything, when APM meets SysAdminsTrace everything, when APM meets SysAdmins
Trace everything, when APM meets SysAdmins
 
Post Quantum Cryptography: Technical Overview
Post Quantum Cryptography: Technical OverviewPost Quantum Cryptography: Technical Overview
Post Quantum Cryptography: Technical Overview
 
Chronicle accelerate building a digital currency
Chronicle accelerate   building a digital currencyChronicle accelerate   building a digital currency
Chronicle accelerate building a digital currency
 
Quantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, CiscoQuantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, Cisco
 
Introduction to OpenHFT for Melbourne Java Users Group
Introduction to OpenHFT for Melbourne Java Users GroupIntroduction to OpenHFT for Melbourne Java Users Group
Introduction to OpenHFT for Melbourne Java Users Group
 
You're monitoring Kubernetes Wrong
You're monitoring Kubernetes WrongYou're monitoring Kubernetes Wrong
You're monitoring Kubernetes Wrong
 
Large scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutionsLarge scale overlay networks with ovn: problems and solutions
Large scale overlay networks with ovn: problems and solutions
 
DPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and DemonstrationDPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and Demonstration
 
CCNxCon2012: Session 5: Object Sizes in Named Data Networking
CCNxCon2012: Session 5: Object Sizes in Named Data NetworkingCCNxCon2012: Session 5: Object Sizes in Named Data Networking
CCNxCon2012: Session 5: Object Sizes in Named Data Networking
 
LF_DPDK17_Accelerating P4-based Dataplane with DPDK
LF_DPDK17_Accelerating P4-based Dataplane with DPDKLF_DPDK17_Accelerating P4-based Dataplane with DPDK
LF_DPDK17_Accelerating P4-based Dataplane with DPDK
 
Micro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical SystemsMicro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical Systems
 
Quantum Cryptography
Quantum CryptographyQuantum Cryptography
Quantum Cryptography
 

Ähnlich wie Lessons Learned Scaling Circonus to Billions

Finding Needles in Haystacks (The Size of Countries)
Finding Needles in Haystacks (The Size of Countries)Finding Needles in Haystacks (The Size of Countries)
Finding Needles in Haystacks (The Size of Countries)packetloop
 
Tsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in ChinaTsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in ChinaDataStax Academy
 
Provenance for Data Munging Environments
Provenance for Data Munging EnvironmentsProvenance for Data Munging Environments
Provenance for Data Munging EnvironmentsPaul Groth
 
Challenges and Opportunities of Big Data Genomics
Challenges and Opportunities of Big Data GenomicsChallenges and Opportunities of Big Data Genomics
Challenges and Opportunities of Big Data GenomicsYasin Memari
 
HES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you canHES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you canHackito Ergo Sum
 
Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!stricaud
 
Cassandra - A Decentralized Structured Storage System
Cassandra - A Decentralized Structured Storage SystemCassandra - A Decentralized Structured Storage System
Cassandra - A Decentralized Structured Storage SystemVarad Meru
 
Architecting for the cloud elasticity security
Architecting for the cloud elasticity securityArchitecting for the cloud elasticity security
Architecting for the cloud elasticity securityLen Bass
 
Advanced Administration, Monitoring and Backup
Advanced Administration, Monitoring and BackupAdvanced Administration, Monitoring and Backup
Advanced Administration, Monitoring and BackupMongoDB
 
Got Big Data? Splunk on Nutanix
Got Big Data? Splunk on NutanixGot Big Data? Splunk on Nutanix
Got Big Data? Splunk on NutanixNEXTtour
 
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis SystemScalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis SystemTamas K Lengyel
 
Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...
Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...
Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...Lucidworks
 
More Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit JunoMore Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit JunoKota Tsuyuzaki
 
Big data solution for ngs data analysis
Big data solution for ngs data analysisBig data solution for ngs data analysis
Big data solution for ngs data analysisYun Lung Li
 
Organizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz KitaOrganizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz KitaAEM HUB
 
Disaggregated Networking - The Drivers, the Software & The High Availability
Disaggregated Networking - The Drivers, the Software & The High AvailabilityDisaggregated Networking - The Drivers, the Software & The High Availability
Disaggregated Networking - The Drivers, the Software & The High AvailabilityOpen Networking Summit
 
Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...
Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...
Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...Universitat Politècnica de Catalunya
 
Designing and Implementing your IOT Solutions with Open Source
Designing and Implementing your IOT Solutions with Open SourceDesigning and Implementing your IOT Solutions with Open Source
Designing and Implementing your IOT Solutions with Open SourceDataWorks Summit/Hadoop Summit
 
Solr Compute Cloud - An Elastic SolrCloud Infrastructure
Solr Compute Cloud - An Elastic SolrCloud Infrastructure Solr Compute Cloud - An Elastic SolrCloud Infrastructure
Solr Compute Cloud - An Elastic SolrCloud Infrastructure Nitin S
 

Ähnlich wie Lessons Learned Scaling Circonus to Billions (20)

Finding Needles in Haystacks (The Size of Countries)
Finding Needles in Haystacks (The Size of Countries)Finding Needles in Haystacks (The Size of Countries)
Finding Needles in Haystacks (The Size of Countries)
 
Tsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in ChinaTsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in China
 
Provenance for Data Munging Environments
Provenance for Data Munging EnvironmentsProvenance for Data Munging Environments
Provenance for Data Munging Environments
 
Challenges and Opportunities of Big Data Genomics
Challenges and Opportunities of Big Data GenomicsChallenges and Opportunities of Big Data Genomics
Challenges and Opportunities of Big Data Genomics
 
HES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you canHES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you can
 
Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!
 
Cassandra - A Decentralized Structured Storage System
Cassandra - A Decentralized Structured Storage SystemCassandra - A Decentralized Structured Storage System
Cassandra - A Decentralized Structured Storage System
 
Architecting for the cloud elasticity security
Architecting for the cloud elasticity securityArchitecting for the cloud elasticity security
Architecting for the cloud elasticity security
 
Advanced Administration, Monitoring and Backup
Advanced Administration, Monitoring and BackupAdvanced Administration, Monitoring and Backup
Advanced Administration, Monitoring and Backup
 
Got Big Data? Splunk on Nutanix
Got Big Data? Splunk on NutanixGot Big Data? Splunk on Nutanix
Got Big Data? Splunk on Nutanix
 
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis SystemScalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
 
Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...
Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...
Solr Compute Cloud – An Elastic Solr Infrastructure: Presented by Nitin Sharm...
 
Multicore Processors
Multicore ProcessorsMulticore Processors
Multicore Processors
 
More Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit JunoMore Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit Juno
 
Big data solution for ngs data analysis
Big data solution for ngs data analysisBig data solution for ngs data analysis
Big data solution for ngs data analysis
 
Organizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz KitaOrganizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
 
Disaggregated Networking - The Drivers, the Software & The High Availability
Disaggregated Networking - The Drivers, the Software & The High AvailabilityDisaggregated Networking - The Drivers, the Software & The High Availability
Disaggregated Networking - The Drivers, the Software & The High Availability
 
Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...
Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...
Video Analysis with Recurrent Neural Networks (Master Computer Vision Barcelo...
 
Designing and Implementing your IOT Solutions with Open Source
Designing and Implementing your IOT Solutions with Open SourceDesigning and Implementing your IOT Solutions with Open Source
Designing and Implementing your IOT Solutions with Open Source
 
Solr Compute Cloud - An Elastic SolrCloud Infrastructure
Solr Compute Cloud - An Elastic SolrCloud Infrastructure Solr Compute Cloud - An Elastic SolrCloud Infrastructure
Solr Compute Cloud - An Elastic SolrCloud Infrastructure
 

Mehr von Ontico

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...Ontico
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Ontico
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Ontico
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Ontico
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Ontico
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)Ontico
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Ontico
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Ontico
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)Ontico
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)Ontico
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Ontico
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Ontico
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Ontico
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Ontico
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)Ontico
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Ontico
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Ontico
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...Ontico
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Ontico
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Ontico
 

Mehr von Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Kürzlich hochgeladen

Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Lucknow
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Sonam Pathan
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationLinaWolf1
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMartaLoveguard
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一Fs
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITMgdsc13
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一Fs
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012rehmti665
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Dana Luther
 

Kürzlich hochgeladen (20)

young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 Documentation
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptx
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITM
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
 

Lessons Learned Scaling Circonus to Billions

  • 1. Scaling to billions Lessons learned at Circonus
  • 3. What is Circonus? and why does it need to scale?
  • 4. Circonus Telemetry collection Telemetry analysis Visualization Alerting SaaS… trillions of measurements
  • 5.
  • 6. Architecture Collection • Distributed collection nodes • Distributed aggregation nodes • Distributed storage nodes • Centralized message bus (for now, federate if needed) Storage Agg MQ
  • 7. Distributed Collection • It all starts with Reconnoiter https://github.com/circonus-labs/reconnnoiter • This is, by its design, distributed. • It is hard to collect trillions of measurements per day on a single node.
  • 8. Jobs are run • They collect data and bundle it into messages (protobufs) • A single message may have one to thousands of measurements. • Data can be requested (pulled) by Reconnoiter • Data can be received (puhed) into Reconnoiter • Uses jlog (https://github.com/omniti-labs/jlog) to store and forward the telemetry data. • C and lua (LuaJIT).
  • 9. Aggregation • In the beginning, we started with a single aggregator receiving all messages. • Redundancy was simple, but scale was not. • It is not that difficult to route billions of messages per day on a single node.
  • 10. Storage • We started with Postgres • Great database, but our time-series data was not efficiently stored in a relational database.
  • 11. Column-store hack on Postgres • We altered the schema. • Instead of one measurement per row… – 1440 measurements in array in a single row – one row per day
  • 12. Data volume grew • Our data volume grew and we federated streams of data across pairs of redundant Postgres databases. • This would scale as needed. • Had unreasonable management burden.
  • 13. Safety first… How to switch from one database technology to another? Cut-over always has casualties. Solution 1: partial cut-over Solution 2: concurrent operations
  • 14. We built “Snowth” • We realized all our measurement storage operations were commutative. • We designed distributed, consistent-hashed telemetry storage system with no single point of failure.
  • 15. n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n2-­‐2 n2-­‐3 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n4-­‐1 n4-­‐2 n4-­‐4 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐3 n3-­‐4 n4-­‐3 n6-­‐2 n6-­‐4
  • 16. n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n2-­‐2 n2-­‐3 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n3-­‐4 n4-­‐1 n4-­‐2 n4-­‐3 n4-­‐4 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐2 n6-­‐3 n6-­‐4 o1
  • 17. n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n2-­‐2 n2-­‐3 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n3-­‐4 n4-­‐1 n4-­‐2 n4-­‐3 n4-­‐4 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐2 n6-­‐3 n6-­‐4 o1
  • 18. n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n2-­‐2 n2-­‐3 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n4-­‐1 n4-­‐2 n4-­‐4 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐3 n3-­‐4 n4-­‐3 n6-­‐2 n6-­‐4
  • 19. n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n2-­‐2 n2-­‐3 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n3-­‐4 n4-­‐1 n4-­‐2 n4-­‐4 n4-­‐3 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐2 n6-­‐3 n6-­‐4
  • 20. n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n2-­‐2 n2-­‐3 Availability Zone 1 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n3-­‐4 n4-­‐1 n4-­‐2 n4-­‐4 n4-­‐3 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐2 n6-­‐3 n6-­‐4 Availability Zone 2
  • 21. n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n2-­‐2 n2-­‐3 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n3-­‐4 n4-­‐1 n4-­‐2 n4-­‐4 n4-­‐3 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐2 n6-­‐3 n6-­‐4 o1 Availability Zone 2 Availability Zone 1
  • 22. Availability Zone 1 Availability Zone 2 n1-­‐1 n1-­‐2 n1-­‐3 n1-­‐4 n2-­‐1 n4-­‐4 n2-­‐2 n2-­‐3 n2-­‐4 n3-­‐1 n3-­‐2 n3-­‐3 n3-­‐4 n4-­‐1 n4-­‐2 n4-­‐3 n5-­‐1 n5-­‐2 n5-­‐3 n5-­‐4 n6-­‐1 n6-­‐2 n6-­‐3 n6-­‐4 o1
  • 23. Availability Zone 1 Availability Zone 2 n1-­‐ 1 n1-­‐ 2 n1-­‐ 3 n1-­‐ 4 n2-­‐ 1 n2-­‐ 2 n2-­‐ 3 n2-­‐ 4 n3-­‐ 1 n3-­‐ 2 n3-­‐ 3 n3-­‐ 4 n4-­‐ 1 n4-­‐ 2 n4-­‐ 4 n4-­‐ 3 n5-­‐ 1 n5-­‐ 2 n5-­‐ 3 n5-­‐ 4 n6-­‐ 1 n6-­‐ 2 n6-­‐ 3 n6-­‐ 4 n1-­‐ 1 n1-­‐ 2 n1-­‐ 3 n1-­‐ 4 n2-­‐ 1 n2-­‐ 2 n2-­‐ 3 n2-­‐ 4 n3-­‐ 1 n3-­‐ 2 n3-­‐ 3 n3-­‐ 4 n4-­‐ 1 n4-­‐ 2 n4-­‐ 4 n4-­‐ 3 n5-­‐ 1 n5-­‐ 2 n5-­‐ 3 n5-­‐ 4 n6-­‐ 1 n6-­‐ 2 n6-­‐ 3 n6-­‐ 4
  • 24. A real ring Keep it simple, stupid. We actually don’t do split AZ.
  • 26. Time & Safety Small, well-defined API allowed for low-maintenance, concurrent operations and ongoing development.
  • 27. As needs increased… • We added computation support into the database. – allowing simple “cheap” computation to be “moved” to the data – allowing data to be moved to complex “expensive” computation
  • 28. Real-time Analysis • Real-time (or soft real-time) requires low latency, high-throughput systems. • We used RabbitMQ. • Things worked well until they broke.
  • 29. Message Sizes Matter • Benchmarks suck: they never resemble your use-case • MQ benchmarks burned me. • Our message sizes are between 0.2k and 6k. • It turns out many MQ benchmarks are at 0k. *WHAT?!*
  • 30. RabbitMQ falls • At around 50k message per second at our message sizes, RabbitMQ failed. • Worse, it did not fail gracefully. • Another example of a product that works well… until it is worthless.
  • 31. Soul-searching lead to Fq • We looked and looked. • Kafka led the pack, but still… • Existing solutions didn’t meet our use-case. • We built Fq: https://github.com/postwait/fq
  • 32. Fq • Subscribers can specify queue semantics: – public (multiple competing subscribers), private – block (pause sender flow control), drop – backlog – transient, permanent – memory, file-backed – many millions of messages (gigabits) per second
  • 33. Safety first… How to switch from one message queueing technology to another? Cut-over always has casualties. Solution 1: partial cut-over Solution 2: concurrent operations
  • 34. Duplicity “concurrent” deployment of message queues means one thing: • every consumer must support detection and handling of duplicate message delivery AXIOM: there are 3 numbers in computing: 0, 1 and ∞.
  • 35. solve easy problems 1. Temporal relevance M: Message f: process old messages don’t matter to us… say > 10 seconds (dedup only N=20 past seconds) 2. Timestamp messages at source If TM > max(T) DUPTM %N ⃪ ∅ T ⃪ T ∪ TM If DUPTM %N ∌ h(M) f(M) DUPTM %N ⃪ DUPTM %N ∪ h(M) TM % N DUP 0 1 2 N-1
  • 36. A failure and no one cared.