NOVEMBER 2018
Aleksandar Aleksandrov & Félix Mattrat
Clickhouse at MessageBird Analysing billions of events in real-time* - - PowerPoint PPT Presentation
Clickhouse at MessageBird Analysing billions of events in real-time* Aleksandar Aleksandrov & Flix Mattrat NOVEMBER 2018 About us Data engineers & Team leads Aleksandar Flix Aleksandrov Mattrat 2 225+ Agreements ABOUT
NOVEMBER 2018
Aleksandar Aleksandrov & Félix Mattrat
2
Aleksandar Aleksandrov Félix Mattrat
Data engineers & Team leads
ABOUT
MessageBird is a cloud communications platform that empowers consumers to communicate with your business in the same way they communicate with their friends - seamlessly, on their own timeline and with the context of previous conversations.
We have 225+ direct-to-carrier agreements with operators worldwide.
Customers in over 60+ countries, across a great variety of industries.
More than 180 employees speaking over 20 languages based in the Americas, Europe & Asia.
3
For additional information visit: www.messagebird.com
01. 02. 03. 4 04.
5
Mostly about statistics and reporting
DATA AT MESSAGEBIRD
6
DATA AT MESSAGEBIRD
the past
7
8
AGE OF DARKNESS
9
AGE OF DARKNESS
10
ENLIGHTENMENT - QUEST FOR AN ALTERNATIVE
11
ENLIGHTENMENT - QUEST FOR AN ALTERNATIVE
12
13
ENLIGHTENMENT - QUEST FOR AN ALTERNATIVE
14
15
ENLIGHTENMENT - QUEST FOR AN ALTERNATIVE
16
ENLIGHTENMENT - QUEST FOR AN ALTERNATIVE
17
ENLIGHTENMENT - QUEST FOR AN ALTERNATIVE
interface
18
ENLIGHTENMENT - QUEST FOR AN ALTERNATIVE
19
ENLIGHTENMENT - CLICKHOUSE USE CASE
20
21
ENLIGHTENMENT - CLICKHOUSE USE CASE
SELECT toStartOfQuarter(created_at) AS Quarter, mcc AS Country, floor(sum(sign * rate)) AS Total, sum(sign) AS MessageCount FROM messages WHERE created_at >= '2018-01-01' AND customer = 666 GROUP BY Quarter, Country
30 rows in set. Elapsed: 0.33sec. Processed 497.91 million rows, 4.95 GB (1.42 billions rows/s., 14.39 GB/s.)
22
ENLIGHTENMENT - CLICKHOUSE USE CASE
23
ENLIGHTENMENT - CLICKHOUSE USE CASE
24
25
ENLIGHTENMENT - CLICKHOUSE USE CASE
single row per PK
26
sign date id status price
1 2018-10-08 666 ACCEPTED 0.01
ENLIGHTENMENT - CLICKHOUSE USE CASE
Primary key style
27
sign date id status price
1 2018-10-08 666 ACCEPTED 0.01
2018-10-08 666 ACCEPTED 0.01
ENLIGHTENMENT - CLICKHOUSE USE CASE
28
sign date id status price
1 2018-10-08 666 ACCEPTED 0.01
2018-10-08 666 ACCEPTED 0.01 1 2018-10-08 666 DELIVERED 0.05
ENLIGHTENMENT - CLICKHOUSE USE CASE
29
SELECT sum(sign * price) AS total FROM dataset
sign date id status price
1 2018-10-08 666 ACCEPTED 0.01
2018-10-08 666 ACCEPTED 0.01 1 2018-10-08 666 DELIVERED 0.05
ENLIGHTENMENT - CLICKHOUSE USE CASE
30
sign price sign * price
1 0.01 0.01
0.01
1 0.05 0.05
ENLIGHTENMENT - CLICKHOUSE USE CASE
SELECT sum(sign * price) AS total FROM dataset
sign date id status price
1 2018-10-08 666 ACCEPTED 0.01
2018-10-08 666 ACCEPTED 0.01 1 2018-10-08 666 DELIVERED 0.05
ENLIGHTENMENT - CLICKHOUSE USE CASE
32
33
ENLIGHTENMENT - CLICKHOUSE USE CASE
34
35
36
ENLIGHTENMENT - CLICKHOUSE USE CASE
37
ENLIGHTENMENT - CLICKHOUSE USE CASE
38
39
40
ENLIGHTENMENT - CLICKHOUSE USE CASE
41
42
ENLIGHTENMENT - CLICKHOUSE USE CASE
faster
local table
43
44
ENLIGHTENMENT - CLICKHOUSE USE CASE
45
ENLIGHTENMENT - CLICKHOUSE USE CASE
pipeline with ClickHouse from an average of 1000 events/s to 10000+ event/s without having to scale the cluster.
46
47
ENLIGHTENMENT - CLICKHOUSE USE CASE
48
ENLIGHTENMENT - CLICKHOUSE USE CASE
intelligence tools integration can be challenging
49
ENLIGHTENMENT - CLICKHOUSE USE CASE
50
SELECT sum(sign * price) AS total FROM dataset WHERE dataset = 666 SELECT sign, price AS total FROM dataset ENLIGHTENMENT - CLICKHOUSE USE CASE
51
SELECT sum(sign * price) AS total FROM dataset WHERE dataset = 666 SELECT sign, price AS total FROM dataset WHERE dataset = 666 ENLIGHTENMENT - CLICKHOUSE USE CASE
52
ENLIGHTENMENT - CLICKHOUSE USE CASE
down the filters and aggregations
53
54
ENLIGHTENMENT - CLICKHOUSE USE CASE
Did we say we are hiring?
55
FUTURE - WRAPPING WORDS
Late questions? Come say hello or drop us an email. aleksandar@messagebird.com & felix@messagebird.com
www.messagebird.com/careers