2016-10-05 3 views
0

Я пытаюсь использовать преимущества DocumentDB/Elastic/NoSQL для извлечения больших данных и визуализации. Я хочу использовать PowerBI для этого, но это очень хорошо, но я не знаю, как смоделировать документ с 1 вложенными полями данных. Например.PowerBI и вложенные данные 1: N

{ 
    name: string, 
    age: int 
    children: [ { name: string }... ] 
} 

В нормальном случае, вы бы сплющить таблицу путем расширения вложенных ценностей и присоединения к ним, но как же делать, что, когда это 1: N/A список. Есть ли способ извлечь это в свою таблицу?

Я думал о создании моста, который переводит документ в таблицы данных, но это кажется неправильным способом, и еще раз доказывает некоторые сложности в отношении того, сколько конечных точек и запросов должно быть сделано.

Я не могу не думать, что это проблема, так как многие места анализируют и визуализируют большие объемы данных, хранящихся без sql. Альтернативой является нормализованная реляционная база данных, но наличие миллионов и миллионов записей в том, что вы анализируете, также кажется неправильным, когда nosql настроен для этих сценариев.

ответ

0

Если данные 1: N, но не сколь угодно глубокие, вы можете использовать expand option на вкладке запроса. Вы получите одну строку для каждого экземпляра клиента, которая имеет все атрибуты контейнера.

Если вы хотите получить более сложный подход, вы можете нормализовать схему, расширив только столбец идентификатора клиента (при условии, что он есть один в ваших данных) в одну таблицу, и расширив детали клиента в другой, а затем создав связь через них. Это облегчает агрегацию (например, количество родителей). Вы просто загрузите данные дважды и удалите столбцы, которые вам не нужны.

+0

У меня есть идея, но, к сожалению, для меня это не представляется возможным. Если я развожу его в другую таблицу (что идеально, что я хочу), у меня есть проблема, что я не могу создать отношения, потому что нет уникальных столбцов. В документе (nosql) отношение создается изначально, потому что оно вложено в структуру документа - так есть ли способ искусственно захватить эти отношения «на лету» с мощностью bi? – Dennis

Смежные вопросы