James Corcoran, Head of Engineering EMEA, First Derivatives, "Simplifying Big Data Architecture...

33
Simplifying Big Data Architecture Paris 1 st December 2016

Transcript of James Corcoran, Head of Engineering EMEA, First Derivatives, "Simplifying Big Data Architecture...

Page 1: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

Simplifying Big Data Architecture

Paris 1st December 2016

Page 2: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

2 | KX SYSTEMS

Agenda

• About

• Kx Technology

• Solutions

• Technical Overview

• Resources

• Q & A

Page 3: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

3 | KX SYSTEMS

About

First Derivatives plc

People1,600 FTEs

LocationsIreland, London, New York,

Singapore,Sydney, Tokyo, Toronto, Zurich

HistoryFounded in 1996

Public listed CompanyAlways Profitable

Divisions

KxBig Fast Data

Capital Markets Consulting

Domain expertsTechnology experts

MRP/Prelytix Digital marketing

resources

Our Software

KxStreaming Analytics, In Memory Computing, - the market standard

Tools for KxDevelop, Deploy,

Visualize

Industry SolutionsPowered by Kx

Implemented and supported by us

Page 4: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

4 | KX SYSTEMS

Kx Technology Overview

• Integrated columnar database & programming system

• Streaming, real time and historical data

• Built for massive data volumes

• In-database analytics

• Parallelism

• Compression

• More

The kdb+ database Features

• Interpreted

• Event-driven

• Functional

• Array / Vector

• Query

• Time-series

q Programming Language

Page 5: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

5 | KX SYSTEMS

Tools for Kx Solutions

Solutions Overview

• Dashboards for Kx

• Analyst for Kx

• Control for Kx

• Stream for Kx

• Kx for Algos

• Kx for Flow

• Kx for Monitoring

• Kx for Pharma

• Kx for Surveillance

• Kx for Sensors

• Kx for Telcos

Visualise&

Discover

Architect&

Manage

Enterprise Concepts

Page 6: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

6 | KX SYSTEMS

kdb+

Technical Overview

Page 7: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

7 | KX SYSTEMS

kdb+

• Integrated columnar database & programming system

• Streaming, real time and historical data

• 32 bit free version

• 64 bit licensed version

Page 8: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

8 | KX SYSTEMS

kdb+ Features

• Standard OS & hardware

• In-database analytics

• Compression

• Parallelism

• Interfaces

Page 9: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

9 | KX SYSTEMS

q programming language

• Functional

• Array/Vector

• Query

• Interpreted

• Time-series

Page 10: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

10

q LanguageSeamless database and data manipulation language • We are fast not only due to data architecture, our native

programming language, q, runs inside the database not in separate processes with costly data passing.

• We are one of the few fully 64 bit databases and unique in having time as a native type, with nanosecond resolution and a full set of operations over time.

Quick to Deliver• Unlike many compile-link and run approaches q is

dynamic allowing much shorter development and deployment cycles

Allows you to get more from less code• q is terse - this means a smaller code base to maintain

and debug (one line in q versus many of Java).

Other Key Features• Array/Vector Language• Parallelism • Native Compression

Java

Project Euler Problem 1* in Java

Project Euler Problem 1* in q

*Find the Sum of all multiples of 3 or 5 below 1000. For more information on the Euler Programming Problems see - https://projecteuler.net

Page 11: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

11

Sample q query

select open: first price, high: max price, low: min price, close: last price from trade where date = 2013.05.01, sym = `AAPL

Page 12: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

12

q vs. standard SQL

• q supports order for faster execution• q eliminates many joins• Standard SQL does not enforce row order• Built-in support for CSV, JSON & XML• higher productivity & less maintenance

Page 13: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

13

Parallel queries in q

Serial:

calcEvent each eventTypesParallel:

calcEvent peach eventTypes

Page 14: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

14

Time-Series Analysis

• Native temporal data types• high-precision (nanosecond)• temporal arithmetic• asof join/bi-temporal joins• join time-series on-the-fly

Page 15: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

15

Time-Series Analysis cont’d

select count i by userAgent,5 xbar time.minute from events where date within (.z.D - 7;.z.D), eventType=`login

aj[`time; select time,price from trade where date=last date,sym=`MSFT; select time,bid,ask from quote where date=last date,sym=`MSFT]

Page 16: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

16

Streaming, Real-Time and Historical Data

Page 17: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

17 | KX SYSTEMS

Sample Architecture

Page 18: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

18 | KX SYSTEMS

Kx Solutions

Technical Overview

Page 19: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

19 | KX SYSTEMS

Dashboards for Kx

Page 20: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

20 | KX SYSTEMS

Analyst for Kx

Page 21: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

21 | KX SYSTEMS

Streams for KxFast Data Management

• Clustered services

• Load-balancing

• Failover

• Automated recovery

• Query Manager

• Messaging Server

• Alert Framework

• File Watchers & Loaders

• Scheduling

Page 22: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

22 | KX SYSTEMS

Kx

Resources

Page 23: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

23 | KX SYSTEMS

Resources – Wiki Page

Page 24: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

24 | KX SYSTEMS

Resources – Kx Community

Page 25: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

25 | KX SYSTEMS

Resources – Forum & Google Group

Page 26: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

26 | KX SYSTEMS

Resources – Github

Page 27: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

27 | KX SYSTEMS

Resources – Q For Mortals

Page 28: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

28 | KX SYSTEMS

Resources – Q Tips

Page 29: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

29 | KX SYSTEMS

Resources – Free 32-bit download

Page 30: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

30 | KX SYSTEMS

Resources – Kx Community Meetups

Page 31: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

31 | KX SYSTEMS

Resources – Lecture Series

Page 32: James Corcoran, Head of Engineering EMEA, First Derivatives,  "Simplifying Big Data Architecture with Kx"

32 | KX SYSTEMS

Thank You.

kx.com@kxsystems