SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Stan Levine
stan.levine@contextspace.com
CONTEXTSPACE, CAMUNDA AND CASSANDRA
•  ContextSpace is a platform for executing secure digital customer
engagement on a very large scale.
•  Digital engagement requires consistency, a.k.a. Business Process
Management.
•  Digital engagement requires Big Identity, with many contextual
profiles per person and massive quantities of behavioral data
from customer interactions and mobile devices, hence Cassandra.
WHO IS CONTEXTSPACE
Founded July 2011
Offices:
•  Tel Aviv, Israel
•  Sydney, Australia
WHO IS CONTEXTSPACE DESIGNED FOR?
Very large communities of consumers, with many contextual
relationships, typically found in:
•  Health Care
•  Telecom
•  Smart Cities
•  Digital Media
•  Retail
•  Energy
•  Service Providers
CONTEXTSPACE ARCHITECTURE
TYPICAL CONTEXTSPACE USE OF CAMUNDA
ContextSpace employs Camunda as a toolset to allow its customers
to develop consistent digital engagement business processes, with a
common underlying API access to all services and data.
We also create Camunda-based service processes to support highly
specialized industrial patterns that require:
•  Specific conditional processing
•  Industry data formats (such as HL7 FHIR)
•  Multiple service escalation paths
•  Long running processes
SIMPLE HEALTHCARE PROCESS PATTERN:
DIABETES MILLITUS TYPE 2 MONITORING
HIGH VELOCITY HEALTH OBSERVATION INGESTION
mHealth
Camunda
Processes
Cassandra
Persistence
Analytics
WHY DOES CONTEXTSPACE USE CASSANDRA?
•  Exceptional performance, linearly scaled
•  No DBAs, no tuning, fault tolerant, lights out operation
•  Inherently multi-data centre aware for active-active
distributed operations
•  Simple - replaces more than a dozen heterogeneous
technologies that our solution would otherwise require
All ContextSpace data services are based on Cassandra,
enabling reliable operations with low operational costs.
OPEN SOURCE CAMUNDA ON CASSANDRA
•  Begun in Berlin as “hackathon session” in July 2015
between Camunda and ContextSpace
•  Amazing Camunda Team!
•  Maintained by ContextSpace
•  Purpose: extend scalability, availability and
distributed processing to Camunda operations
•  Initial goal: support core BPM Engine functions,
including Job Executor
•  Target production launch: Q4 2015
CASSANDRA STRENGTHS
•  Great for stable or immutable data
•  Writes are faster than reads (both are very fast)
•  Highly granular, tunable consistency
•  Inherent data retention management
•  Very reliable
•  All nodes identical, no SPOF, no “fail-over” required
•  No effective limit to quantity of managed data
CASSANDRA LIMITATIONS
•  No ad-hoc searches– need to model your queries, not your
data
•  Deleting data can be problematic. Deleting entire rows
works well, “deleting” columns creates “tombstones” that
can decrease performance and compromise stability.
•  Rapidly changing columnar data is an anti-pattern
•  No native join operations
•  Rudimentary locking support
•  Rudimentary native indexing support
CASSANDRA INDICES
•  “Out of the Box” secondary indices are limited to low-
cardinality data. These are useless or even dangerous
to use.
•  Most developers employ custom indexing schemes very
successfully. For Camunda, a simple, unsorted reverse
lookup table will meet most requirements.
•  Camunda job scheduler requires sorted indices
•  Therefore, we have developed a Cassandra indexing
framework for Camunda that supports both sorted and
unsorted indexing.
CASSANDRA LOCKING
•  Native Cassandra locking is rudimentary
•  Atomic batches can be used for transactions (multiple
insert, update, delete in a single logical operation)
•  However, if batch performs a lock, all statements can
only apply to one partition (row).
•  With separate tables used for custom indices, scheduled
jobs, etc., we need to use multiple batches within one
transaction, however, this breaks the atomicity.
LOCKING APPROACH AND LIMITATIONS
•  We lock an entire process, including executions, event
subscriptions, and variables by placing all this data in one
Cassandra partition (row).
•  Indices and jobs are still not updated atomically, leading to
potential data integrity issues.
•  When locking the entire process, parallel (non-exclusive) tasks will
execute sequentially due to optimistic locking. This is tolerable for
many use cases, but undesirable for others (such as events that
need to occur on time). For example, our urgent customer
messaging events need to conform to service levels.
OVERCOMING LOCKING LIMITATIONS - ZOOKEEPER
•  Industry best practice for Cassandra locking is to use an external
lock manager. ContextSpace uses Zookeeper, which shares
Cassandra distributed and “lights-out” management strengths.
•  With Zookeeper, we can maintain any degree of locking
granularity, which permits parallel execution to be performed.
•  By removing locking from atomic batches, we can maintain full
atomicity for transactions.
•  We are currently implementing Zookeeper support and
recommend this configuration for production applications.
JOB SCHEDULER (ASYNCH EXECUTION)
•  Support for the Job Scheduler has recently been added to
this project.
•  Camunda job scheduling presents us with another
challenge.
•  We only need to pick jobs that are due. This requires using
global ordering of jobs by time.
•  This is essentially a queue.
JOB SCHEDULER (ASYNCH EXECUTION)
•  Cassandra and queuing patterns don’t like each other.
•  Cassandra can only maintain order within a single partition.
•  Remember the “tombstones?” Queuing operations generate a
heavy columnar delete workload. This creates the “perfect
storm” for Cassandra.
•  Accessing a common partition (which is always stored on a
single Cassandra node), will also create a database hotspot.
JOB SCHEDULER (ASYNCH EXECUTION)
•  In this situation, best practice is to partition scheduling data to
contain one time slice per partition (such as a day or an hour).
•  This addresses the problem with excessive tombstones, but
does not fully alleviate the hotspot. However, given Cassandra
performance, this will only become an issue for very large
workloads.
•  For high workload deployments, we will implement support for
an external queue manager. Kafka is a distributed queue
manager that shares lights-out characteristics with Cassandra
and Zookeeper and is already part of the ContextSpace
architecture.
CASSANDRA PERSISTENCE FOR CAMUNDA
•  Is Cassandra a natural match for Camunda? In a word, not
really….
•  Camunda creates and then deletes a lot. Cassandra generally
hates deletions.
•  Cassandra locking is enforced at partition (row) level only. Using
Zookeeper, we can update process, job execution and indices
atomically.
•  Locking one process within a row precludes parallel executions.  
Again, Zookeeper locking addresses this.
•  Job Executor always searching for next jobs at current time, will
consistently create hotspots in Cassandra. This is fine for most
workloads, but for very high loads we will support Kafka.
UNDERSTANDING THE STACK OPTIONS
•  CAMUNDA + CASSANDRA implements optimistic locking
and will not support parallel executions, but will be highly
available across multiple distributed data centres.
•  CAMUNDA + CASSANDRA + ZOOKEEPER implements
granular locking and can support the full capabilities of the
CAMUNDA BPM engine.
•  CAMUNDA + CASSANDRA + ZOOKEEPER + KAFKA
eliminates all anti-patterns and will provides support for
virtually unlimited workloads in a distributed environment
SUMMARY
•  Cassandra is not a “native fit” for Camunda
•  Therefore, much work has been done to counter anti-
patterns
•  Nevertheless, backing Camunda with Cassandra promises
incredible performance, scalability, availability and
operational gains
•  ContextSpace focus is on completing operational support
for the core BPM engine
•  Additional Camunda user application queries can then be
incrementally supported as they are required.
THANK YOU AND BRIEF Q&A
Stan Levine
stan.levine@contextspace.com

Weitere ähnliche Inhalte

Was ist angesagt?

jBPM 5 (JUDCon 2010-10-08)
jBPM 5 (JUDCon 2010-10-08)jBPM 5 (JUDCon 2010-10-08)
jBPM 5 (JUDCon 2010-10-08)Geoffrey De Smet
 
Testing the limits of cloud networks
Testing the limits of cloud networksTesting the limits of cloud networks
Testing the limits of cloud networksPLUMgrid
 
A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...
A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...
A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...Thoughtworks
 
Docebo: history of a journey from legacy to serverless
Docebo: history of a journey from legacy to serverlessDocebo: history of a journey from legacy to serverless
Docebo: history of a journey from legacy to serverlessAWS User Group Italy
 
The Journey To Serverless At Home24 - reflections and insights
The Journey To Serverless At Home24 - reflections and insights The Journey To Serverless At Home24 - reflections and insights
The Journey To Serverless At Home24 - reflections and insights AWS Germany
 
Silverstripe CMS 4.9.0 release and beyound
Silverstripe CMS 4.9.0 release and beyoundSilverstripe CMS 4.9.0 release and beyound
Silverstripe CMS 4.9.0 release and beyoundMaximeRainville1
 
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...Continuent
 
A simple workflow system using state machines
A simple workflow system using state machinesA simple workflow system using state machines
A simple workflow system using state machinesdhpeterson
 
RubyBarCamp Kiev 2009: Redmine
RubyBarCamp Kiev 2009: RedmineRubyBarCamp Kiev 2009: Redmine
RubyBarCamp Kiev 2009: RedmineVovaSlide
 
Jeffrey Richter
Jeffrey RichterJeffrey Richter
Jeffrey RichterCodeFest
 
Building and Scaling a WebSockets Pubsub System
Building and Scaling a WebSockets Pubsub SystemBuilding and Scaling a WebSockets Pubsub System
Building and Scaling a WebSockets Pubsub SystemKapil Reddy
 
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech TalkCloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech TalkRed Hat Developers
 
VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations! VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations! VMworld
 
Size as an Advantage: How Big Enterprises Can Move Fast
Size as an Advantage: How Big Enterprises Can Move FastSize as an Advantage: How Big Enterprises Can Move Fast
Size as an Advantage: How Big Enterprises Can Move FastChetan Desai
 
The good, the bad, the ugly side of step functions
The good, the bad, the ugly side of step functionsThe good, the bad, the ugly side of step functions
The good, the bad, the ugly side of step functionsMohsiur Rahman
 
Spring: Your Next Java Micro-Framework
Spring: Your Next Java Micro-FrameworkSpring: Your Next Java Micro-Framework
Spring: Your Next Java Micro-FrameworkVMware Tanzu
 
Kafka used at scale to deliver real-time notifications
Kafka used at scale to deliver real-time notificationsKafka used at scale to deliver real-time notifications
Kafka used at scale to deliver real-time notificationsSérgio Nunes
 
Dark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanDark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanAmbassador Labs
 

Was ist angesagt? (20)

jBPM 5 (JUDCon 2010-10-08)
jBPM 5 (JUDCon 2010-10-08)jBPM 5 (JUDCon 2010-10-08)
jBPM 5 (JUDCon 2010-10-08)
 
Testing the limits of cloud networks
Testing the limits of cloud networksTesting the limits of cloud networks
Testing the limits of cloud networks
 
A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...
A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...
A Functional Approach to Architecture - Kafka & Kafka Streams - Kevin Mas Rui...
 
Docebo: history of a journey from legacy to serverless
Docebo: history of a journey from legacy to serverlessDocebo: history of a journey from legacy to serverless
Docebo: history of a journey from legacy to serverless
 
The Journey To Serverless At Home24 - reflections and insights
The Journey To Serverless At Home24 - reflections and insights The Journey To Serverless At Home24 - reflections and insights
The Journey To Serverless At Home24 - reflections and insights
 
Silverstripe CMS 4.9.0 release and beyound
Silverstripe CMS 4.9.0 release and beyoundSilverstripe CMS 4.9.0 release and beyound
Silverstripe CMS 4.9.0 release and beyound
 
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
 
A simple workflow system using state machines
A simple workflow system using state machinesA simple workflow system using state machines
A simple workflow system using state machines
 
RubyBarCamp Kiev 2009: Redmine
RubyBarCamp Kiev 2009: RedmineRubyBarCamp Kiev 2009: Redmine
RubyBarCamp Kiev 2009: Redmine
 
prof3
prof3prof3
prof3
 
Jeffrey Richter
Jeffrey RichterJeffrey Richter
Jeffrey Richter
 
Building and Scaling a WebSockets Pubsub System
Building and Scaling a WebSockets Pubsub SystemBuilding and Scaling a WebSockets Pubsub System
Building and Scaling a WebSockets Pubsub System
 
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech TalkCloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech Talk
 
VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations! VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations!
 
3 migration
3 migration3 migration
3 migration
 
Size as an Advantage: How Big Enterprises Can Move Fast
Size as an Advantage: How Big Enterprises Can Move FastSize as an Advantage: How Big Enterprises Can Move Fast
Size as an Advantage: How Big Enterprises Can Move Fast
 
The good, the bad, the ugly side of step functions
The good, the bad, the ugly side of step functionsThe good, the bad, the ugly side of step functions
The good, the bad, the ugly side of step functions
 
Spring: Your Next Java Micro-Framework
Spring: Your Next Java Micro-FrameworkSpring: Your Next Java Micro-Framework
Spring: Your Next Java Micro-Framework
 
Kafka used at scale to deliver real-time notifications
Kafka used at scale to deliver real-time notificationsKafka used at scale to deliver real-time notifications
Kafka used at scale to deliver real-time notifications
 
Dark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanDark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill Monkman
 

Andere mochten auch

Cassandra by example - the path of read and write requests
Cassandra by example - the path of read and write requestsCassandra by example - the path of read and write requests
Cassandra by example - the path of read and write requestsgrro
 
Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?camunda services GmbH
 
Community Meeting Wien - Camunda Intro
Community Meeting Wien - Camunda IntroCommunity Meeting Wien - Camunda Intro
Community Meeting Wien - Camunda Introcamunda services GmbH
 
Camunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz IndonesiaCamunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz Indonesiacamunda services GmbH
 
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)camunda services GmbH
 
Case study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC projectCase study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC projectcamunda services GmbH
 
From APM to Full Stack with Blue Medora [FutureStack16]
From APM to Full Stack with Blue Medora [FutureStack16]From APM to Full Stack with Blue Medora [FutureStack16]
From APM to Full Stack with Blue Medora [FutureStack16]New Relic
 
Camunda BPM at Zalando: Order Processing at scale
Camunda BPM at Zalando: Order Processing at scaleCamunda BPM at Zalando: Order Processing at scale
Camunda BPM at Zalando: Order Processing at scalecamunda services GmbH
 
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
 
Camunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM OffensiveCamunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM Offensivecamunda services GmbH
 
Introducing Workflow Architectures Using Grails - Greach 2015
Introducing Workflow Architectures Using Grails - Greach 2015Introducing Workflow Architectures Using Grails - Greach 2015
Introducing Workflow Architectures Using Grails - Greach 2015Rubén Mondéjar Andreu
 

Andere mochten auch (20)

Cassandra by example - the path of read and write requests
Cassandra by example - the path of read and write requestsCassandra by example - the path of read and write requests
Cassandra by example - the path of read and write requests
 
Process Monitoring mit Camunda
Process Monitoring mit Camunda Process Monitoring mit Camunda
Process Monitoring mit Camunda
 
Sneak Preview: Camunda Optimize
Sneak Preview: Camunda OptimizeSneak Preview: Camunda Optimize
Sneak Preview: Camunda Optimize
 
Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?
 
Community Meeting Wien - Camunda Intro
Community Meeting Wien - Camunda IntroCommunity Meeting Wien - Camunda Intro
Community Meeting Wien - Camunda Intro
 
Camunda 7 4 Release Webinar
Camunda 7 4 Release WebinarCamunda 7 4 Release Webinar
Camunda 7 4 Release Webinar
 
Introduction - The Hack Session
Introduction - The Hack SessionIntroduction - The Hack Session
Introduction - The Hack Session
 
Camunda BPM Platform and Angular.js
Camunda BPM Platform and Angular.jsCamunda BPM Platform and Angular.js
Camunda BPM Platform and Angular.js
 
Camunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz IndonesiaCamunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz Indonesia
 
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
 
Camunda Docker
Camunda DockerCamunda Docker
Camunda Docker
 
Case study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC projectCase study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC project
 
Camunda BPM at bpmNEXT 2016
Camunda BPM at bpmNEXT 2016Camunda BPM at bpmNEXT 2016
Camunda BPM at bpmNEXT 2016
 
From APM to Full Stack with Blue Medora [FutureStack16]
From APM to Full Stack with Blue Medora [FutureStack16]From APM to Full Stack with Blue Medora [FutureStack16]
From APM to Full Stack with Blue Medora [FutureStack16]
 
Camunda BPM at Zalando: Order Processing at scale
Camunda BPM at Zalando: Order Processing at scaleCamunda BPM at Zalando: Order Processing at scale
Camunda BPM at Zalando: Order Processing at scale
 
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
 
SFScon16 - Edmund Schöpf: "Camunda BPM in Banking"
SFScon16 - Edmund Schöpf: "Camunda BPM in Banking"SFScon16 - Edmund Schöpf: "Camunda BPM in Banking"
SFScon16 - Edmund Schöpf: "Camunda BPM in Banking"
 
Camunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM OffensiveCamunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM Offensive
 
Introducing Workflow Architectures Using Grails - Greach 2015
Introducing Workflow Architectures Using Grails - Greach 2015Introducing Workflow Architectures Using Grails - Greach 2015
Introducing Workflow Architectures Using Grails - Greach 2015
 
Camunda 7 4 Release Webinar_EN
Camunda 7 4 Release Webinar_ENCamunda 7 4 Release Webinar_EN
Camunda 7 4 Release Webinar_EN
 

Ähnlich wie Camunda and Apache Cassandra

Business Growth Is Fueled By Your Event-Centric Digital Strategy
Business Growth Is Fueled By Your Event-Centric Digital StrategyBusiness Growth Is Fueled By Your Event-Centric Digital Strategy
Business Growth Is Fueled By Your Event-Centric Digital Strategyzitipoff
 
Using Apache Cassandra and Apache Kafka to Scale Next Gen Applications
Using Apache Cassandra and Apache Kafka to Scale Next Gen ApplicationsUsing Apache Cassandra and Apache Kafka to Scale Next Gen Applications
Using Apache Cassandra and Apache Kafka to Scale Next Gen ApplicationsData Con LA
 
Apply Coding Patterns in Azure
Apply Coding Patterns in AzureApply Coding Patterns in Azure
Apply Coding Patterns in AzureMarco Parenzan
 
mParticle's Journey to Scylla from Cassandra
mParticle's Journey to Scylla from CassandramParticle's Journey to Scylla from Cassandra
mParticle's Journey to Scylla from CassandraScyllaDB
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithMarkus Eisele
 
Cassandra - A Basic Introduction Guide
Cassandra - A Basic Introduction GuideCassandra - A Basic Introduction Guide
Cassandra - A Basic Introduction GuideMohammed Fazuluddin
 
Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...
Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...
Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...Continuent
 
AWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data AnalyticsAWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data AnalyticsAmazon Web Services
 
Apache Cassandra introduction
Apache Cassandra introductionApache Cassandra introduction
Apache Cassandra introductionfardinjamshidi
 
Cassandra implementation for collecting data and presenting data
Cassandra implementation for collecting data and presenting dataCassandra implementation for collecting data and presenting data
Cassandra implementation for collecting data and presenting dataChen Robert
 
Apache Cassandra in the Real World
Apache Cassandra in the Real WorldApache Cassandra in the Real World
Apache Cassandra in the Real WorldJeremy Hanna
 
Cabs, Cassandra, and Hailo
Cabs, Cassandra, and HailoCabs, Cassandra, and Hailo
Cabs, Cassandra, and HailoDave Gardner
 
DataStax - Analytics on Apache Cassandra - Paris Tech Talks meetup
DataStax - Analytics on Apache Cassandra - Paris Tech Talks meetupDataStax - Analytics on Apache Cassandra - Paris Tech Talks meetup
DataStax - Analytics on Apache Cassandra - Paris Tech Talks meetupVictor Coustenoble
 
SpringPeople - Introduction to Cloud Computing
SpringPeople - Introduction to Cloud ComputingSpringPeople - Introduction to Cloud Computing
SpringPeople - Introduction to Cloud ComputingSpringPeople
 
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...Amazon Web Services
 
How To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQLHow To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQLDataStax
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Continuent
 
Cassandra Summit 2014: Apache Cassandra Best Practices at Ebay
Cassandra Summit 2014: Apache Cassandra Best Practices at EbayCassandra Summit 2014: Apache Cassandra Best Practices at Ebay
Cassandra Summit 2014: Apache Cassandra Best Practices at EbayDataStax Academy
 
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Continuent
 

Ähnlich wie Camunda and Apache Cassandra (20)

Business Growth Is Fueled By Your Event-Centric Digital Strategy
Business Growth Is Fueled By Your Event-Centric Digital StrategyBusiness Growth Is Fueled By Your Event-Centric Digital Strategy
Business Growth Is Fueled By Your Event-Centric Digital Strategy
 
Using Apache Cassandra and Apache Kafka to Scale Next Gen Applications
Using Apache Cassandra and Apache Kafka to Scale Next Gen ApplicationsUsing Apache Cassandra and Apache Kafka to Scale Next Gen Applications
Using Apache Cassandra and Apache Kafka to Scale Next Gen Applications
 
Apply Coding Patterns in Azure
Apply Coding Patterns in AzureApply Coding Patterns in Azure
Apply Coding Patterns in Azure
 
mParticle's Journey to Scylla from Cassandra
mParticle's Journey to Scylla from CassandramParticle's Journey to Scylla from Cassandra
mParticle's Journey to Scylla from Cassandra
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolith
 
Cassandra - A Basic Introduction Guide
Cassandra - A Basic Introduction GuideCassandra - A Basic Introduction Guide
Cassandra - A Basic Introduction Guide
 
Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...
Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...
Webinar Slides: Multi-Region AWS Aurora vs Continuent Tungsten for MySQL & Ma...
 
FoundationDB - NoSQL and ACID
FoundationDB - NoSQL and ACIDFoundationDB - NoSQL and ACID
FoundationDB - NoSQL and ACID
 
AWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data AnalyticsAWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data Analytics
 
Apache Cassandra introduction
Apache Cassandra introductionApache Cassandra introduction
Apache Cassandra introduction
 
Cassandra implementation for collecting data and presenting data
Cassandra implementation for collecting data and presenting dataCassandra implementation for collecting data and presenting data
Cassandra implementation for collecting data and presenting data
 
Apache Cassandra in the Real World
Apache Cassandra in the Real WorldApache Cassandra in the Real World
Apache Cassandra in the Real World
 
Cabs, Cassandra, and Hailo
Cabs, Cassandra, and HailoCabs, Cassandra, and Hailo
Cabs, Cassandra, and Hailo
 
DataStax - Analytics on Apache Cassandra - Paris Tech Talks meetup
DataStax - Analytics on Apache Cassandra - Paris Tech Talks meetupDataStax - Analytics on Apache Cassandra - Paris Tech Talks meetup
DataStax - Analytics on Apache Cassandra - Paris Tech Talks meetup
 
SpringPeople - Introduction to Cloud Computing
SpringPeople - Introduction to Cloud ComputingSpringPeople - Introduction to Cloud Computing
SpringPeople - Introduction to Cloud Computing
 
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
AWS re:Invent 2016: Get Technically Inspired by Container-Powered Migrations ...
 
How To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQLHow To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQL
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
 
Cassandra Summit 2014: Apache Cassandra Best Practices at Ebay
Cassandra Summit 2014: Apache Cassandra Best Practices at EbayCassandra Summit 2014: Apache Cassandra Best Practices at Ebay
Cassandra Summit 2014: Apache Cassandra Best Practices at Ebay
 
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
 

Mehr von camunda services GmbH

Using Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through OperatorsUsing Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through Operatorscamunda services GmbH
 
Predictive Process Monitoring in Camunda
Predictive Process Monitoring in CamundaPredictive Process Monitoring in Camunda
Predictive Process Monitoring in Camundacamunda services GmbH
 
Camunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process AutomationCamunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process Automationcamunda services GmbH
 
Tips on how to build Camunda Run for production
Tips on how to build Camunda Run for productionTips on how to build Camunda Run for production
Tips on how to build Camunda Run for productioncamunda services GmbH
 
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in UnternehmenBlitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmencamunda services GmbH
 
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...camunda services GmbH
 
Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...camunda services GmbH
 
[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0camunda services GmbH
 
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...camunda services GmbH
 
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...camunda services GmbH
 
Process Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG BankwareProcess Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG Bankwarecamunda services GmbH
 
Process Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss LifeProcess Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss Lifecamunda services GmbH
 
Process Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-ITProcess Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-ITcamunda services GmbH
 
Process Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, RaiffeisenProcess Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, Raiffeisencamunda services GmbH
 
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AGProcess Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AGcamunda services GmbH
 
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native Worldcamunda services GmbH
 

Mehr von camunda services GmbH (20)

Using Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through OperatorsUsing Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through Operators
 
Predictive Process Monitoring in Camunda
Predictive Process Monitoring in CamundaPredictive Process Monitoring in Camunda
Predictive Process Monitoring in Camunda
 
Camunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process AutomationCamunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process Automation
 
Tips on how to build Camunda Run for production
Tips on how to build Camunda Run for productionTips on how to build Camunda Run for production
Tips on how to build Camunda Run for production
 
Process Driven Customer Interaction
Process Driven Customer InteractionProcess Driven Customer Interaction
Process Driven Customer Interaction
 
Exploring Automation in Government
Exploring Automation in GovernmentExploring Automation in Government
Exploring Automation in Government
 
The Pulse of Process Automation
The Pulse of Process AutomationThe Pulse of Process Automation
The Pulse of Process Automation
 
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in UnternehmenBlitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
 
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
 
Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...
 
Camunda BPM 7.13 Webinar
Camunda BPM 7.13 WebinarCamunda BPM 7.13 Webinar
Camunda BPM 7.13 Webinar
 
[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0
 
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
 
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
 
Process Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG BankwareProcess Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG Bankware
 
Process Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss LifeProcess Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss Life
 
Process Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-ITProcess Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-IT
 
Process Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, RaiffeisenProcess Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, Raiffeisen
 
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AGProcess Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
 
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
 

Kürzlich hochgeladen

Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 

Kürzlich hochgeladen (20)

Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 

Camunda and Apache Cassandra

  • 2. CONTEXTSPACE, CAMUNDA AND CASSANDRA •  ContextSpace is a platform for executing secure digital customer engagement on a very large scale. •  Digital engagement requires consistency, a.k.a. Business Process Management. •  Digital engagement requires Big Identity, with many contextual profiles per person and massive quantities of behavioral data from customer interactions and mobile devices, hence Cassandra.
  • 3. WHO IS CONTEXTSPACE Founded July 2011 Offices: •  Tel Aviv, Israel •  Sydney, Australia
  • 4. WHO IS CONTEXTSPACE DESIGNED FOR? Very large communities of consumers, with many contextual relationships, typically found in: •  Health Care •  Telecom •  Smart Cities •  Digital Media •  Retail •  Energy •  Service Providers
  • 6. TYPICAL CONTEXTSPACE USE OF CAMUNDA ContextSpace employs Camunda as a toolset to allow its customers to develop consistent digital engagement business processes, with a common underlying API access to all services and data. We also create Camunda-based service processes to support highly specialized industrial patterns that require: •  Specific conditional processing •  Industry data formats (such as HL7 FHIR) •  Multiple service escalation paths •  Long running processes
  • 7. SIMPLE HEALTHCARE PROCESS PATTERN: DIABETES MILLITUS TYPE 2 MONITORING
  • 8. HIGH VELOCITY HEALTH OBSERVATION INGESTION mHealth Camunda Processes Cassandra Persistence Analytics
  • 9. WHY DOES CONTEXTSPACE USE CASSANDRA? •  Exceptional performance, linearly scaled •  No DBAs, no tuning, fault tolerant, lights out operation •  Inherently multi-data centre aware for active-active distributed operations •  Simple - replaces more than a dozen heterogeneous technologies that our solution would otherwise require All ContextSpace data services are based on Cassandra, enabling reliable operations with low operational costs.
  • 10. OPEN SOURCE CAMUNDA ON CASSANDRA •  Begun in Berlin as “hackathon session” in July 2015 between Camunda and ContextSpace •  Amazing Camunda Team! •  Maintained by ContextSpace •  Purpose: extend scalability, availability and distributed processing to Camunda operations •  Initial goal: support core BPM Engine functions, including Job Executor •  Target production launch: Q4 2015
  • 11. CASSANDRA STRENGTHS •  Great for stable or immutable data •  Writes are faster than reads (both are very fast) •  Highly granular, tunable consistency •  Inherent data retention management •  Very reliable •  All nodes identical, no SPOF, no “fail-over” required •  No effective limit to quantity of managed data
  • 12. CASSANDRA LIMITATIONS •  No ad-hoc searches– need to model your queries, not your data •  Deleting data can be problematic. Deleting entire rows works well, “deleting” columns creates “tombstones” that can decrease performance and compromise stability. •  Rapidly changing columnar data is an anti-pattern •  No native join operations •  Rudimentary locking support •  Rudimentary native indexing support
  • 13. CASSANDRA INDICES •  “Out of the Box” secondary indices are limited to low- cardinality data. These are useless or even dangerous to use. •  Most developers employ custom indexing schemes very successfully. For Camunda, a simple, unsorted reverse lookup table will meet most requirements. •  Camunda job scheduler requires sorted indices •  Therefore, we have developed a Cassandra indexing framework for Camunda that supports both sorted and unsorted indexing.
  • 14. CASSANDRA LOCKING •  Native Cassandra locking is rudimentary •  Atomic batches can be used for transactions (multiple insert, update, delete in a single logical operation) •  However, if batch performs a lock, all statements can only apply to one partition (row). •  With separate tables used for custom indices, scheduled jobs, etc., we need to use multiple batches within one transaction, however, this breaks the atomicity.
  • 15. LOCKING APPROACH AND LIMITATIONS •  We lock an entire process, including executions, event subscriptions, and variables by placing all this data in one Cassandra partition (row). •  Indices and jobs are still not updated atomically, leading to potential data integrity issues. •  When locking the entire process, parallel (non-exclusive) tasks will execute sequentially due to optimistic locking. This is tolerable for many use cases, but undesirable for others (such as events that need to occur on time). For example, our urgent customer messaging events need to conform to service levels.
  • 16. OVERCOMING LOCKING LIMITATIONS - ZOOKEEPER •  Industry best practice for Cassandra locking is to use an external lock manager. ContextSpace uses Zookeeper, which shares Cassandra distributed and “lights-out” management strengths. •  With Zookeeper, we can maintain any degree of locking granularity, which permits parallel execution to be performed. •  By removing locking from atomic batches, we can maintain full atomicity for transactions. •  We are currently implementing Zookeeper support and recommend this configuration for production applications.
  • 17. JOB SCHEDULER (ASYNCH EXECUTION) •  Support for the Job Scheduler has recently been added to this project. •  Camunda job scheduling presents us with another challenge. •  We only need to pick jobs that are due. This requires using global ordering of jobs by time. •  This is essentially a queue.
  • 18. JOB SCHEDULER (ASYNCH EXECUTION) •  Cassandra and queuing patterns don’t like each other. •  Cassandra can only maintain order within a single partition. •  Remember the “tombstones?” Queuing operations generate a heavy columnar delete workload. This creates the “perfect storm” for Cassandra. •  Accessing a common partition (which is always stored on a single Cassandra node), will also create a database hotspot.
  • 19. JOB SCHEDULER (ASYNCH EXECUTION) •  In this situation, best practice is to partition scheduling data to contain one time slice per partition (such as a day or an hour). •  This addresses the problem with excessive tombstones, but does not fully alleviate the hotspot. However, given Cassandra performance, this will only become an issue for very large workloads. •  For high workload deployments, we will implement support for an external queue manager. Kafka is a distributed queue manager that shares lights-out characteristics with Cassandra and Zookeeper and is already part of the ContextSpace architecture.
  • 20. CASSANDRA PERSISTENCE FOR CAMUNDA •  Is Cassandra a natural match for Camunda? In a word, not really…. •  Camunda creates and then deletes a lot. Cassandra generally hates deletions. •  Cassandra locking is enforced at partition (row) level only. Using Zookeeper, we can update process, job execution and indices atomically. •  Locking one process within a row precludes parallel executions.   Again, Zookeeper locking addresses this. •  Job Executor always searching for next jobs at current time, will consistently create hotspots in Cassandra. This is fine for most workloads, but for very high loads we will support Kafka.
  • 21. UNDERSTANDING THE STACK OPTIONS •  CAMUNDA + CASSANDRA implements optimistic locking and will not support parallel executions, but will be highly available across multiple distributed data centres. •  CAMUNDA + CASSANDRA + ZOOKEEPER implements granular locking and can support the full capabilities of the CAMUNDA BPM engine. •  CAMUNDA + CASSANDRA + ZOOKEEPER + KAFKA eliminates all anti-patterns and will provides support for virtually unlimited workloads in a distributed environment
  • 22. SUMMARY •  Cassandra is not a “native fit” for Camunda •  Therefore, much work has been done to counter anti- patterns •  Nevertheless, backing Camunda with Cassandra promises incredible performance, scalability, availability and operational gains •  ContextSpace focus is on completing operational support for the core BPM engine •  Additional Camunda user application queries can then be incrementally supported as they are required.
  • 23. THANK YOU AND BRIEF Q&A Stan Levine stan.levine@contextspace.com