Kdb+ Data Manipulation - Training Course
Learn techniques for creating advanced analytics,and producing better code in q. On this course you will go into much greater detail about what happens under the covers, be stepped through setting up your own database and consider common analytics and how best to implement them, including performing linear regression and binomial tree pricing in kdb.
The course is aimed at those familiar with kdb who want to write fewer lines of maintainable code to solve problems in the best way possible. For printing a PDF outline of the Advanced kdb+ course is available .
Contact us now to request Training
Course Content
Day 1
Functions | Recap of Functions, Dictionaries, Lists etc
Best practices for writing modular code for large scale kdb systems. |
---|---|
Tables | Defining, updating, deleting, adding columns, sorting.
Creating relationships between tables using enumeration and Foreign Keys |
Inter-Process Communication | Communication between servers, sending data (a)synchronously, buffering
Security / Stream processing - by overriding event handlers Stitching together real-time / historical data using a Gateway |
qSQL | Standard SQL queries: "select col from table where ..", what's unique to qSQL |
Day 2
Joins | Covers the standard SQL joins left-join, inner-join, union-join.
Specialized kdb joins: plus-join, equi-join, asof-join Optimizing joins and queries using attributes |
---|---|
Multithreading | built-in threading, Parallel processing. (Parallel screencast available) |
Disk Storage | Text Output and Standard serialization - for saving small files
Splaying / Partitioning - For storing large amounts of historical data Segments - For storing extremely large data sets and processing them efficiently in parallel |
Advanced Analytics | Building on our knowledge of qSQL and disk storage
Efficiently constructing analytics e.g. VWAP / TWAP |
Day 3
Further Analytics | Aggregating calculations on periods of time,
Creating moving functions, limitations of kdb+ |
---|---|
In-depth Use Case | Consideration of a real world problem,
Performing linear regression Implementing binomial trees for pricing securities efficiently in kdb+ |
Extremely large Databases with many cores | What is happening below the covers,
Best practices for constructing map-reduce queries and edge cases to be careful of. |
Prerequisites
This class assumes you have significant prior experience of kdb, you should be capable at manipulating dictionaries, lists, functions and the basics of tables.
If you do not have significant kdb experience our Introduction to kdb+ course is a better fit. Or if you're looking to focus more on administrating a kdb+ server consider the Architecture and Administration course.
Contact us now to request Training