quarylabs / quary Goto Github PK
View Code? Open in Web Editor NEWTransform data together. Model, test and deploy as a team.
Home Page: https://www.quary.dev
License: MIT License
Transform data together. Model, test and deploy as a team.
Home Page: https://www.quary.dev
License: MIT License
For middling data AWS Athena is an excellent low cost warehouse/lakehouse that works with open table formats like iceberg, hudi and delta lake.
Would definitely get us to try quarry if Athena was supported!
Whether this is a bug or multiple or not a bug is arguably subjective, but I wanted to tried to give quary a chance and didn't do so great due to multiple paper cuts and uncertainties, and I thought it might be useful to you as an outsider's perspective.
I have done a bunch of data work, but haven't used dbt before either, which might explain some of the issues or not.
TL;DR: I tried all three ways to try out quary, only the command line worked, and that can easily be made much better.
Initially I tried to just use the tool from the command line and rely on its internal documentation + https://github.com/quarylabs/quary/.
First thing I tried after deciding to give it a shot is cargo install quary
, and was surprised to find it not published.
Next I started from the current repo, which offered installs either through brew or the vscode extension.
I don't love vscode, so first I tried cargo build --release
. That didn't work.
I looked at the subcrates and guessed cargo install --path rust/cli
would be it, that worked (after updating to latest stable rust).
Not sure where to go from there, I tried quary --help
.
"a very fast and useful database tool" doesn't tell me what it does. Very fast at deleting DBs? ;)
After trying a few different things, I came back and tried quary init
, which filled my directory with what looks like a complete small project based on the template. This is pretty nice, actually, better than what I did before, which was to clone the template myself. The reason I didn't try this first is because the help doesn't explain that's what it does. In my experience most tools with an init
, like git init
, create a valid but empty project. The help entry of "Initialize a new project in the current directory" could have turned out to be either.
Once in the template project, I was not quite sure what to do.
compile? what even needs compilation?
build? "build the seed and model views".
--verbose
.test? sounds good.
-s
and that passed the tests.-s
before knowing about the in memory db thing, I would not have had an idea that that will solve my problem, this issue is not mentioned in the internal or repo help.quary run
, try it, and it is unrecognized.So at this point, I think using the command line might work, I can't rely on internal documentation to get along. That's ok, gotta start somewhere. Maybe I should be using the vscode extension anyway?
So I fired up VSCode on my machine, opened a project folder, got the recommendation to install the extension, agreed, tried to run some Quary commands and...
Got a lot of "initializing extensions" that didn't go anywhere.
Killed VSCode, brought it back up on the folder, tried again, and immediately got an option to "sign in to quary".
cargo install quary
works, and quary help
is enough to get an idea how it works as a system.See above
I know this is a pre-release, so these are just the kinds of problems it is useful to catch. I don't know enough about your strategy to know whether using the open source part would be reasonable for me, but look forward to learning more.
hi I wonder if it's possible to run one model from CLI. it'll be an analog of dbt
dbt run --models model_name
thank you
I ran quary build
and got a result as a view
in postgres
but it's not a materialized view
. I checked quary/rust/core/src/database_postgres
and it has
fn automatic_cache_sql_create_statement(
&self,
model: &str,
model_cache_name: &str,
) -> Vec<String> {
vec![format!(
"CREATE OR REPLACE VIEW {} AS SELECT * FROM {}",
in dbt
I can add materialized: materialized_view
to dbt_project.yml
but don't see such an option in quary
.
Which config I need to change to get a materialized view.
Thank you
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.