问题:将Power BI连接到具有重复/嵌套字段的BigQuery表(使用本机BQ连接器)时,这些字段不会出现在Power BI中,无法用于创建报表。
示例:使用名为bigquery-public-data:samples的Public BigQuery数据集,有一个名为github_nested的表,它有重复的字段,例如payload.pages.action(见下文)
但是,当使用Power BI连接到这个BigQuery表时,我只获得了一些字段(见下文)
据我了解,这是因为Power BI Big Query连接器不支持重复/嵌套或记录字段。
问题在构建Power BI报告时,是否有任何解决方法可以使BigQuery表中的所有列/字段(无论它们是重复/嵌套/记录)可用,特别是使用通过本机Power BI Big Query连接器实时连接?
我确实拥有BigQuery的写权限,因此如果需要作为解决方案的一部分,则可以在这些表的顶部创建具有重复/嵌套字段的视图。
一种可能的解决方法可能是在Big Query中创建一个视图,该视图取消重复的字段,然后将Power BI连接到所述视图。打开任何解决方法建议。
非常感谢任何帮助。
答案 0 :(得分:1)
截至2018年10月29日,Power BI没有本地Big Query连接器,它仅使用通用ODBC连接器。我建议不要将其用于生产,当前的限制是:
在本文中了解更多信息(我是作者):https://medium.com/@remy_david/which-bi-tool-for-big-query-d9eb838ff7ad
答案 1 :(得分:0)
products-and-stocks
表的示例架构:
[
{
name: 'timestamp',
type: 'TIMESTAMP'
}, {
name: 'data',
type: 'RECORD',
mode: "REPEATED",
fields: [
{
name: 'itemId',
type: 'STRING'
}, {
name: 'prodId',
type: 'STRING'
}, {
name: 'name',
type: 'STRING'
}, {
name: 'stockA',
type: 'INTEGER'
}, {
name: 'stockB',
type: 'INTEGER'
}, {
name: 'stockQ',
type: 'INTEGER'
}, {
name: 'stockD',
type: 'INTEGER'
}, {
name: 'stockE',
type: 'INTEGER'
}, {
name: 'weight',
type: 'INTEGER'
}, {
name: 'size',
type: 'RECORD',
fields: [
{
name: 'length',
type: 'INTEGER'
}, {
name: 'width',
type: 'INTEGER'
}, {
name: 'height',
type: 'INTEGER'
}
]
}, {
name: 'cnt',
type: 'INTEGER'
}, {
name: 'cntInBox',
type: 'INTEGER'
}, {
name: 'lifetime',
type: 'INTEGER'
}, {
name: 'barcode',
type: 'STRING',
mode: 'REPEATED',
}, {
name: 'dateStockUpdate',
type: 'TIMESTAMP'
}, {
name: 'label',
type: 'STRING'
}, {
name: 'comment',
type: 'STRING'
}, {
name: 'commentPack',
type: 'STRING'
}, {
name: 'skuBox',
type: 'INTEGER'
}, {
name: 'snRuleRegularExpression',
type: 'STRING'
}
]
}
]
在 BigQuery 中创建扁平化查询并将其保存为视图。
SELECT
`timestamp`,
repeated.*,
repeated.size.length as `size_length`,
repeated.size.width as `size_width`,
repeated.size.height as `size_height`,
ARRAY_TO_STRING(barcode, ", ") as barcodesFlat
FROM
`my-project-id.my-dataset.products-and-stocks`
CROSS JOIN UNNEST(`data`) as repeated
将此视图导入 Power BI。