The Problem
My company publishes datasets to all subscribers on Domo Everywhere. Customers often need to manipulate these datasets (filtering, renaming, adding columns), which works fine in Dataset Views. They also frequently need to join datasets. While Views can handle joins for materialized datasets, joins on the datasets we publish to subscribers fail. The functionality appears available, but Domo confirmed it does not work for non-materialized datasets.
This creates two major issues:
- User Experience – Customers see functionality that looks enabled but does not work.
- Credit Usage Impact – Every join must be done in MagicETL, costing us a credit each time it runs. Since we refresh datasets three times per day, subscriber ETLs update just as often, compounding costs quickly.
This is not just an annoyance for my instance. Any Domo customer publishing datasets to subscribers will run into the same problem. Enabling joins in Views for non-materialized datasets would eliminate wasted credits and prevent users from having to go to the more complex MagicETL interface for simple joins.
Issues specific to my setup that add urgency
- We publish Views (e.g., View A = join of Datasets 1+2; View B = join of Datasets 3+4).
- Customers then join View A and View B in MagicETL, which runs every time underlying datasets update.
- With three refreshes per day, a single ETL can consume 12 credits daily. Even with workarounds (setting update frequency to run only after all sources update), it still costs 6 credits per day.
- Customers rarely grasp this nuance, and I have no way to enforce optimal settings.
- The new Data Refresh Permissions don’t solve the problem - I can't add a limitation on time (e.g. when datasets update … the ETL and hasn't refreshed within the last hour) because then the update will only run when the very first of the underlying datasets updates.
Bottom Line
Customers need the ability to join published datasets directly in Views. Without it, we and others waste credits and frustrate users with misleading functionality.