2017-06-19 10 views
0

3列×37,636行のソーステーブルに対して次のクエリを実行していますが、実行に時間がかかります。どのようにパフォーマンスを向上させることができますか?クエリのパフォーマンスを向上させるにはどうすればよいですか?

ソーステーブルは、それ自体、問題が発生した場合の先行クエリの結果です。先例のクエリは、妥当な時間(分)で実行されますが、この1つは悪くなります。

ソーステーブルの列名は、Columns、Columns2、およびCountです。

let 
Source = Table.Buffer(GetWordCounts), 
#"Grouped Rows" = Table.Buffer(Table.Group(Source, {"Count"}, {{"AllData", each _, type table}})), 
Custom1 = Table.Buffer(Table.MaxN(#"Grouped Rows","Count",10)), 
#"Expanded AllData" = Table.ExpandTableColumn(Custom1, "AllData", {"Columns", "Columns2"}, {"Columns", "Columns2"}) 
in 
#"Expanded AllData" 

あなたが見ることができるように私は、いくつかの場所でTable.Bufferを追加しようとしたが、それが助けたり傷つけているかどうかはわかりません。

アイデア?

答えて

1

Excelで同じ量のテストデータを使用すると、約2秒以内に私と一緒に実行されます。このクエリの入力を別のExcelのworbookまたはpbixファイルに分離しても、同じパフォーマンスが低下しますか?私は、悪い性能が以前のステップによるものだと思う。

編集:

let 
    Source = Table.Buffer(GetWordCounts), 
    #"Removed Duplicates" = Table.Distinct(Source, {"Count"})[Count], 
    Max10 = List.Sort(#"Removed Duplicates",Order.Descending){9}, 
    #"Filtered Rows" = Table.SelectRows(Source, each [Count] >= Max10) 
in 
    #"Filtered Rows" 
+0

おかげ@MarcelBeug:代替コードあなたは、tryを与える可能性があります。私は元のクエリをExcelで分離して実行しようとしましたが、あなたと同じように、非常に速い結果を見ました。だから私は先例の質問を踏み出し、問題を発見したかもしれないが、なぜそれが問題なのか、それを解決する方法がわからない。あなたが私に提供したこれまでのソリューションと関係があります。[link](https://stackoverflow.com/questions/44395636/compare-each-columns-contents-with-all-other-columns-contents-and-present- matr/44402603#44402603)。 'Tabled = Table.FromColumns({ColumnNames}、型テーブル[Columns = text])、'で物事が本当に悪くなるようです。 –

+0

暗闇の中でのショットのように、「データプレビューをバックグラウンドでダウンロードできるようにする」と「テーブルの並列読み込みを有効にする」のチェックを外したところ、最初に述べたトラブル箇所まですばやく早く進むように見えました... # "グループ化された行"(または代わりに# "削除された重複")。 Tabledを通過するのに2分もかかりませんが、# "Grouped Rows(または#" Duplicates "が削除されました)でうまくいかず、時間がかかります。今はTabledが問題の一部ではないかもしれないと思っています結局のところ、私は本当に困惑しています。 –

関連する問題