Time series analysis addresses different problems that classic database solutions cannot cope with.
Problems include joining by non-matching timestamps (asof and window joins), moving aggregates,
bucketing by time interval, fill forward and executing statistical and machine learning methods close
to the data to avoid huge data transfers. The expressiveness of the query language is critical in
solving these tasks.
Q/kdb+ has dominated data analysis for the last twenty years in the financial industry and gains
more popularity in IOT, telco, automotive, pharma, etc. This Turing-complete programming language
is extremely fast and easy to express complex logic. Simplicity comes from its vectorial nature
(implicit iteration), support for functional programming and that tables are first class citizens of the
language. In this course, you will get an introduction to the q language and the kdb+ ecosystem
including Python integration and cloud tools.
• Introduction to q/kdb+, history, specialties of the language, aspects of time series analyses,
examples, introduction to vector and functional programming
• q basics 1: atoms, temporal type, lists, operators, functions, vector programming
• q basics 2: Dictionaries, tables, persisting data
• q basics 3: functional programming, casting, execution control, IO, interprocess
communication
• Special joins for time series analysis: asof and window join
• q-sql, a powerful extension of ANSI SQL for complex analysis
• Data visualization and interactive data analysis by Jupyter notebooks,
• Interoperability: mixing Python and q code
• Time series statistical methods
• Applying machine learning algorithms on time series
• Building powerful, interactive, real-time ticking dashboards
• Bringing data and analytics into the cloud - how cloud can help data scientists? What are the
main challenges the cloud can introduce? kdb+ and the cloud