cube-js / cube-js/cube

How to correctly join cubes from different data sources?

Open
#9,044 3 comments 0 reactions 1 assignee Claimed by @igorlukanin View on GitHub
question
Dominant language
Rust
Stars
20.8k
Forks
2.1k
Avg merge
1d 2h
Merged PRs (30d)
181

Description

**Problem**

I have cube `A` that is based on a BigQuery database, and cube `B` that is based on a Postgres database.

Both of these cubes have an `id` column, and I would like to be able to join them, so I can get and additional column from Postgres that I don't have in BigQuery. In the simplified example below, I would like to end up with a join that has columns for `A.id`, `A.name`, `B.status` (where `A.id == B.id`).

_Is this possible? If so, could you please provide more detail on how to set it up?_

I have tried to follow the example in https://cube.dev/docs/reference/data-model/pre-aggregations#rollup_join, but it doesn't quite apply, since I don't have any measures on which I would like to rollup.

Thank you!

**Related Cube.js schema**
```javascript
cube(`A`, {
data_source: `bigquery`,
...
dimensions: {
id: {
sql: `id`,
type: `string`,
primaryKey: true,
public: true,
},
name: {
sql: `name`,
type: `string`,
},
}
})

cube(`B`, {
data_source: `postgres`,
...
dimensions: {
id: {
sql: `id`,
type: `string`,
primaryKey: true,
public: true,
},
status: {
sql: `status`,
type: `string`,
},
}
})
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.