6 ms·
Does cube support dynamically figuring out joins or is each cube a hard coded set of joins? My similar, much less polished project doesn't require you to speci
by totalhack 3y ago
Does cube support dynamically figuring out joins or is each cube a hard coded set of joins?
My similar, much less polished project doesn't require you to specify joins ahead of time outside of optionally defining a tree-like table lineage: https://github.com/totalhack/zillion https://github.com/totalhack/zillion
- pavel_tiunov 3y agoYep. Cube would automatically figure out the join path for you on top of the defined join graph in the data model using the Dijkstra algorithm. The best practice however is to use views: https://cube.dev/docs/schema/reference/view/#views https://cube.dev/docs/schema/reference/view/#views. Those can be used to explicitly control join paths and get an effect similar to what Looker Explore can provide.
- totalhack 3y agoCool, do you have an example showing a config/setup that can do dynamic joins? All the examples I see have joins explicitly defined at the cube level in the yaml config. Zillion uses networkx to create a graph of tables and relationships so it sounds like it's doing something similar. Views are a nice guardrail but can also get in the way! I've experienced this frustration first hand (and seen it with my business users) when using tools that focus on such a premise. Guess it depends how complex your data model is and how quickly your business is evolving / adding to that model. In the move-fast-break-stuff phase of a company they can get annoying at least.
- mdaniel 3y agoWhat's happening with this license? I am always worried when the GH license detector says ":shrug:" and I don't know of any easy way to diff the license file against what I presume is a GPLv3 base layer(?) https://github.com/totalhack/zillion/blob/v0.9.14/LICENSE https://github.com/totalhack/zillion/blob/v0.9.14/LICENSE
- josephcsible 3y agoI just did a diff of it against <https://www.gnu.org/licenses/lgpl-3.0.txt https://www.gnu.org/licenses/lgpl-3.0.txt> and the only differences are the lines above "GNU LESSER GENERAL PUBLIC LICENSE" at the top and a blank line at the bottom.
- totalhack 3y agoI didn't realize GitHub would struggle with this. I'll consider cleaning that up, thanks!