Syntax
Tenzir comes with its own language to define pipelines, dubbed Tenzir Query Language (TQL).1
We often get asked "why did you create yet another query language?" or "why are you not using SQL?". This is a valid question and we answer it in detail in our FAQs.
Even though TQL is a transformation language, we call it a "query language" to allude to the outcome of getting the data in the desired form. The language is geared towards working with richly typed, structured data across multiple schemas.
We put emphasis on the following principles when designing the language:
- Use natural language keywords where possible, e.g., verbs to convey actions.
- Lean on operator names that are familiar to Unix and Powershell users
- Avoid gratuitous syntax elements like brackets, braces, quotes, or punctuations.
- Exploit symmetries for an intuitive learning experience, e.g.,
from
andto
have their dualsread
andwrite
.
Let's dive into an example:
Here is how you write this pipeline in the Tenzir language, with inline comments describing what each operator does:
If you are curious why we created our own language as opposed to using SQL, please consult our FAQs.
- We pronounce it teaquel.↩