Tim Moreton CTO@timmoreton
Real Time
BIOver
C*
#CassandraEU
When NOSQL, when Hadoop?
2
#CassandraEU
Discovery Analytics
UnstructuredWarehouses
Data Mining
?Machine Learning
Operational Intelligence
Dashboards Real-time Decisions
Alerting
!
When NOSQL, when Hadoop?
2
#CassandraEU
Discovery Analytics
UnstructuredWarehouses
Data Mining
?Machine Learning
Operational Intelligence
Dashboards Real-time Decisions
Alerting
!
Complex, long-runningTotal lack of structure
Low latency, fresh data Some structure to exploit
When NOSQL, when Hadoop?
2
#CassandraEU
Discovery Analytics
UnstructuredWarehouses
Data Mining
?Machine Learning
Operational Intelligence
Dashboards Real-time Decisions
Alerting
!
Complex, long-runningTotal lack of structure
Low latency, fresh data Some structure to exploit
When NOSQL, when Hadoop?
2
#CassandraEU 3
• Scalable. No single point of {failure, bottleneck}• Fast. Especially for writes•Available. Effortless Multi-DC support•Dependable. Widespread mission-critical use•Counters. Building block of analytics!
WE C*
#CassandraEU 4
#CassandraEU 5
Acunu: Real-time Streaming BI
#CassandraEU 5
Acunu: Real-time Streaming BI
#CassandraEU 5
Acunu: Real-time Streaming BI
Events
#CassandraEU 5
Acunu: Real-time Streaming BI
Analytics turns events and SQL-like queries into C* operations
Events
#CassandraEU 5
Acunu: Real-time Streaming BI
Analytics turns events and SQL-like queries into C* operations
Events
Cassandra stores raw events and intermediate results
#CassandraEU 5
Acunu: Real-time Streaming BI
Analytics turns events and SQL-like queries into C* operations
Events
Cassandra stores raw events and intermediate results
Acunu Dashboards provides real-time visualization
Alerts
#CassandraEU 6
#CassandraEU
count by day count by hour of day
uniques by hashtag
1 Define aggregate cubesCREATE CUBE APPROX TOP(keyword) WHERE browser, time GROUP BY time
6
#CassandraEU
count by day count by hour of day
uniques by hashtag
2 New events update cubes
1 Define aggregate cubesCREATE CUBE APPROX TOP(keyword) WHERE browser, time GROUP BY time
6
#CassandraEU
count by day count by hour of day
uniques by hashtag
2 New events update cubes
1 Define aggregate cubesCREATE CUBE APPROX TOP(keyword) WHERE browser, time GROUP BY time
6
#CassandraEU
count by day count by hour of day
uniques by hashtagraw events
2 New events update cubes
1 Define aggregate cubesCREATE CUBE APPROX TOP(keyword) WHERE browser, time GROUP BY time
6
#CassandraEU
count by day count by hour of day
uniques by hashtagraw events
2 New events update cubes
1 Define aggregate cubesCREATE CUBE APPROX TOP(keyword) WHERE browser, time GROUP BY time
3 Rich instant queries over cubesSELECT TOP(keyword) FROM table WHERE browser = ‘chrome’ AND time BETWEEN..GROUP BY d1, d2, ... JOIN ... HAVING.. ORDER BY ..
+
6
#CassandraEU
count by day count by hour of day
uniques by hashtagraw events
2 New events update cubes
1 Define aggregate cubesCREATE CUBE APPROX TOP(keyword) WHERE browser, time GROUP BY time
3 Rich instant queries over cubesSELECT TOP(keyword) FROM table WHERE browser = ‘chrome’ AND time BETWEEN..GROUP BY d1, d2, ... JOIN ... HAVING.. ORDER BY ..
+
4 Drilldown to raw events
6
#CassandraEU
count by day count by hour of day
uniques by hashtagraw events
2 New events update cubes
1 Define aggregate cubesCREATE CUBE APPROX TOP(keyword) WHERE browser, time GROUP BY time
3 Rich instant queries over cubesSELECT TOP(keyword) FROM table WHERE browser = ‘chrome’ AND time BETWEEN..GROUP BY d1, d2, ... JOIN ... HAVING.. ORDER BY ..
+
5 Backfill new cubes using historic data
6
#CassandraEU
{ time: 13:50:11,latitude: 12.5,longitude: -43.4,duration: 24,device_type: .. }
Simplifying ingest Built-in visualizations
Easy Real-time Analytics for Devs
7
SELECT MAX(duration)WHERE device_type = ‘iphone’ GROUP BY longitude, latitude;
Rich queries, agile denormalization
#CassandraEU
Six Steps to Enlightenment
Install1 Create tables2 Define
cubes3 Turn on data feed4 Build
widgets5 Refine cubes6
With Acunu Analytics 4.3
8
#CassandraEU
Six Steps to Enlightenment
Install1 Create tables2 Define
cubes3 Turn on data feed4 Refine
cubes6
Dev Dev Dev Dev Business Dev
Build widgets5
With Acunu Analytics 4.3
8
#CassandraEU
Enlightenment for Mere Mortals
Install1 Upload events2 Turn on
data feed4Build widgets3 Refine
widgets5
With Acunu Analytics 5.0
9
#CassandraEU
Enlightenment for Mere Mortals
Install1 Upload events2 Turn on
data feed4Build widgets3 Refine
widgets5
Dev
With Acunu Analytics 5.0
9
#CassandraEU
Enlightenment for Mere Mortals
Install1 Turn on data feed4Build
widgets3 Refine widgets5
Dev Business
With Acunu Analytics 5.0
Upload events2
Automatically infer tables and schema from sample events
9
#CassandraEU
Enlightenment for Mere Mortals
Install1 Turn on data feed4 Refine
widgets5
Dev BusinessBusiness
With Acunu Analytics 5.0
Build widgets3Upload
events2
Drag-and-drop Explore view infers the cubes needed to build the widget you want
9
#CassandraEU
Enlightenment for Mere Mortals
Install1 Turn on data feed4 Refine
widgets5
Dev DevBusinessBusiness
With Acunu Analytics 5.0
Build widgets3Upload
events2
9
Out-of-the-box HTTP, Flume, Kafka and MQintegrations, plus new API to build your own
#CassandraEU
Enlightenment for Mere Mortals
Install1 Turn on data feed4
Dev Dev BusinessBusinessBusiness
With Acunu Analytics 5.0
Build widgets3Upload
events2 Refine widgets5
Widgets can be refined and repopulated with historic data automatically
9
#CassandraEU
Enlightenment for Mere Mortals
Install1 Turn on data feed4
Dev Dev BusinessBusinessBusiness
With Acunu Analytics 5.0
Build widgets3Upload
events2 Refine widgets5
9
#CassandraEU
Enlightenment for Mere Mortals
Install1 Turn on data feed4
Dev Dev BusinessBusinessBusiness
With Acunu Analytics 5.0
Build widgets3Upload
events2 Refine widgets5
9