2016-09-05 8 views
0

ペンタホで何かに苦労しています。ペンタホがこの問題を処理できるかどうかは完全にはわかりません。私はできる限り最善の方法で説明しようとします。多段階データールックアップケトル/ペンタホ

私はディメンションテーブルからIDを検索しIDを返すために使用する必要がある参照番号という実際の販売に列を持ちます。しかし、最初の列でディメンション内のルックアップでnullが返された場合は、同じフィールドをディメンション内の別の列のファクトテーブル参照から確認し、次に別の列を再度チェックする必要があります。

Pentahoには、3つの異なるルックアップのプロセスを経て、その3つのカラムのうちの1つに一致するものが実際に販売されている場合にidを返す方法がありますか?

ご協力いただければ幸いです。私は自分のデータベースとしてMySQLを使用してい

答えて

0

これはややPentahoのデータ統合のための基本的な作業のようです。

あなたは別のフィールド内のすべての検索結果を保存します(ディメンションの種類に応じて) データベース検索(または)寸法検索/更新を実行することにより、手動でこれを行うことができます。最初の非null値を選択し、最終的にはあなたが必要な場合は選択が不要になったルックアップの結果と3つの列を削除するにはスクリプトを値 -

はその後、null coalescingを実行するために修正Javaスクリプトバリューを使用しています。

以下

は簡略化された場合と、画面ですが、私はあなたがそれの後ろの論理に従うと私はあなたがタスクを達成するために使用できる手順を述べてきたようにあなたのケースのシナリオでそれを実装することができると確信してい:

enter image description here

+0

こんにちは、ありがとうございます。これは私が現在行っていることですが、それははるかに長い時間がかかります。しかし、二番目の検索では、私たちは "まだ一致していません"レコードを見ています。 –

+0

どういう意味ですか?実装する?実行するには?とにかく、ディメンションの異なる列を指すファクト表に「ディメンションTK」を持つのは奇妙なことです。 1つのルックアップだけを実行するSQL文をいつでも実行できます。 –

+0

ええ、私は知っています...非常に面白いデータを扱うときはどうなりますか?だから実際の売上列は、私の次元の3つの列のうちの1つに当てはまる可能性があります。だから私は実行によって意味するものは、実際の販売テーブルに一致した次元からIDを追加することになっているETLです –

0

フィルタステップを使用する方がはるかに高速です。検索された最初の値がヌルのヌルフィルタで、ヌルストリームを2番目のルックアップに破棄し、見つかったデータを「見つかった」ステップに分割した場合。あなたが望むものがあるまで、すすぎ洗いを繰り返します。

次に、複数のマージ結合を使用して、データセットをつなぎ合わせます。結果のストリームがすべて同一である場合、マージ結合ステップは正直である必要はないかもしれませんが、そうでない場合はいくつかの選択ステップで達成できます。一度にすべてを見る必要はありません。これは、一度すべてを調べて評価するために、並列処理を全く利用していません。

これは役に立ちますか?

関連する問題