2016-10-05 3 views
0

大きなデータを取得して可視化するために、DocumentDB/Elastic/NoSQLの利点を活用しようとしています。私はPowerBIを使ってそれをやりたいのですが、これはかなり良いですが、1:Nのネストされたデータフィールドを持つドキュメントをどのようにモデル化するのかという手がかりはありません。例えば。PowerBIとネストされた1:Nデータ

通常の場合には
{ 
    name: string, 
    age: int 
    children: [ { name: string }... ] 
} 

、ネストされた値を拡大し、それらを結合して、テーブルを平らになり、それが1だとき、どのように1があることをするのか:N /リスト。多分それをそれ自身のテーブルに抽出する方法はありますか?

ドキュメントをデータテーブルに変換するブリッジを作成しようと考えていましたが、これは間違ったやりかたのように感じられます。さらに、いくつのエンドポイントとクエリを作成する必要があるかについていくつかの問題があります。

多くの場所でSQLに格納されている大量のデータを分析して視覚化するので、これは解決された問題だとは思えません。代わりに正規化されたリレーショナルデータベースがありますが、nosqlがこれらのシナリオ用に調整されている場合、解析する数百万と数百万ものエントリも正しくないように見えます。

答えて

0

データ1:N(ただし、任意の深さではない場合)は、クエリタブでexpand optionを使用できます。コンテナのすべての属性を持つ顧客のインスタンスごとに1つの行が表示されます。

さらに洗練されたものにしたい場合は、顧客ID列のみを1つのテーブルに展開し、顧客の詳細を別のテーブルに展開して関係を作成することで、スキーマを正規化することができますそれらをまたぐ。それは集計をより簡単にします(親の数のように)。データを2回ロードし、必要のない列を削除するだけです。

+0

私はあなたの考えを得るが、残念ながらそれは私のために実現可能ではないようだ。私が別のテーブル(それが理想的には私が望むもの)に展開すると、ユニークな列がないため、関係を作成できないという問題があります。ドキュメント(nosql)では、ドキュメント構造にネストされているため、リレーションが本質的に作成されています。このため、パワーバイで「オンザフライ」の関係を人為的に取り込む方法はありますか? – Dennis

関連する問題