Timeline Query Language

What is TQL?

TQL, or Timeline Query Language, is a Python data processing library for machine learning applications, focused on processing heterogenous time series event data into ML-ready datasets. TQL is NOT a replacement for traditional machine learning packages such as Scikit-Learn, TensorFlow, H2O, etc, but instead aims to make every other part of the machine learning engineering process, such as data cleaning, feature extraction, and production model deployment quick and easy so you can focus on the data science.

TQL first builds Timelines from raw event log data, creating a sorted record of a user’s journey over time. TQL then can execute queries against those timelines, creating datasets with one row per event, allowing you to easily extract complex longitudinal features that are very difficult to express using traditional SQL. Read more about the TQL data processing model here.


Obtaining a license key

TQL is currently being offered for preview in a private beta. Request to be included in the private beta here.


At a minimum, we recommend the following for compatibility with TQL:

  • Python 3.6+ (get it here)

  • Java 8+ (install instructions here)

  • Snappy Compression Library (install instructions here)

Tip: We strongly recommend you use a python virtual environment manager to isolate the installation of TQL from your other Python applications, such as venv or conda.


Install TQL using your package manager of choice, such as pip:

pip install --extra-index-url=https://user:password@pypi.nanigans.com zeenk-tql
Tip: If using pip, in order to avoid installation issues make sure you update pip to the latest version by using the command:
pip install --upgrade pip

Where To Next?