Skip to content

quarylabs/quary

Folders and files

NameName
Last commit message
Last commit date

Latest commit

fbfd9f6 · Mar 1, 2024

History

15 Commits
Mar 1, 2024
Feb 21, 2024
Feb 29, 2024
Feb 29, 2024
Feb 21, 2024
Feb 21, 2024
Feb 21, 2024
Feb 29, 2024
Feb 21, 2024
Feb 20, 2024
Feb 21, 2024
Mar 1, 2024
Feb 21, 2024
Feb 21, 2024

Repository files navigation

quary

Quary Community

quary_core_image

What is Quary?

Quary enables teams to model, test and deploy data transformations. This core is a fast and lightweight SQL transformation engine written in Rust.

Understanding Quary

Teams use Quary to transform their raw data tables in a data warehouse into actionable trustworthy insights. Users can easily transform their data by writing SQL select statements, which Quary then converts into tables and views within the data warehouse.

A Quary project is formed by a collection of these select statements, also known as models. These models often build upon one another, creating a structured flow of data transformation. Quary simplifies the process of visualizing dependencies from the source (raw table) to the final insight. Additionally, it provides testing capabilities for the models at each stage, ensuring data integrity and accuracy.

Getting Started

Installation

brew install quarylabs/quary/quary

Usage

Check out our template here of an example Quary project. The following commands will show you how to get started, and run some basic commands.

mkdir example # create an empty project folder
cd example
quary init    # initialise the folder with a sample project
quary compile # checks that everything compiles correctly. I.e. all the SQL references are correct.
quary test -s # runs the tests defined in the .yaml files
quary build   # compiles the SQL and executes it against the current target database.

Note that you will most likely want to use our Visual Studio Code extension

Commands

quary help

Support

If you run into any problems using Quary, please let us know. We want Quary to be easy-to-use, so if you are getting confused, it is our fault, not yours. Create an issue and we'll be happy to help you out.