Description
Introduction
The “Getting Started with q Language Programming” training is designed to provide a strong foundation in the q programming language used in kdb+, the high-performance, columnar, time-series database widely adopted in financial services, telecom, energy, and real-time analytics.
This course introduces participants to q’s expressive syntax, vector-oriented operations, and functional programming paradigm. Learners will gain hands-on experience in data manipulation, querying, and scripting using q, enabling them to work confidently with high-frequency and large-scale datasets.
By the end of the training, participants will understand how q works internally, how to write efficient queries, and how to build basic analytical solutions using kdb+.
Prerequisites
- Basic understanding of programming concepts (variables, functions, loops, conditionals)
- Familiarity with databases and SQL fundamentals
- Basic knowledge of data structures (arrays, lists, dictionaries)
- Understanding of data analytics concepts is a plus
- No prior experience in q is required
Table of Contents
Module 1: Introduction to kdb+ and q
- Overview of kdb+ architecture
- What is q language?
- kdb+ vs traditional RDBMS
- Installation and setup
- q console basics
Module 2: q Fundamentals
- Data types in q (atoms, lists)
- Basic operators and expressions
- Variables and assignments
- Input/output operations
- Comments and script execution
Module 3: Working with Lists and Dictionaries
- Creating and manipulating lists
- Nested lists
- Dictionaries and keyed dictionaries
- Enumerations
- Symbol data type
Module 4: Tables in q
- Creating tables
- Keyed tables
- In-memory vs on-disk tables
- Table attributes
- Meta data and schema inspection
Module 5: Querying Data in q
- Select statements
- Where clauses
- Aggregations and grouping
- Update and delete operations
- Functional query form
Module 6: Functions and Functional Programming
- Defining functions in q
- Lambda expressions
- Adverbs (each, over, scan)
- Iterators and projections
- Function composition
Module 7: Date, Time & Temporal Data
- Date, time, datetime, timestamp types
- Temporal arithmetic
- Time-series queries
- Windowed aggregations
Module 8: Scripting and Execution
- Writing q scripts
- Loading and saving data
- Command-line execution
- Environment variables
- Basic performance considerations
Module 9: Error Handling & Debugging
- Common error types
- Debugging techniques
- Best practices for writing clean q code
Module 10: Hands-On Labs & Mini Project
- Building a small time-series analytics solution
- Query optimization exercises
- Real-world dataset practice
- Final assessment







Reviews
There are no reviews yet.