異なるデータ スライスを持つパーティションのマージ
パーティション ウィザードで指定したデータ スライスを持つパーティションをマージすると、マージ処理の結果として得られるパーティションには、予期しない不正なデータが含まれている場合があります。これを回避するには、マージ後のパーティション内のデータを指定するフィルタを作成します。
フィルタを使用したデータの重複防止
たとえば、3 種類の清涼飲料水商品についての情報を含むキューブに、同一のファクト テーブルを使用する 3 つのパーティションがあるとします。これらのパーティションには、各製品に基づいたデータ スライスがあります。パーティション 1 には ColaFull、パーティション 2 には ColaDecaf、パーティション 3 には ColaDiet のデータがそれぞれ含まれます。ここで、パーティション 3 がパーティション 2 にマージされる場合、マージ後のパーティション (パーティション 2) 内のデータとキューブ データは共に正確です。しかし、パーティション 2 が処理され、パーティション 2 にフィルタがないと、その内容は商品レベルのメンバの親によって決定されます。この親である SoftDrinks には、パーティション 1 の商品である ColaFull も含まれます。パーティション 2 の処理では、ColaFull も含めたパーティションのすべての清涼飲料水のデータが読み込まれます。この結果、キューブには ColaFull のデータが重複して含まれ、エンド ユーザーに不正なデータが返されます。
この例では、パーティション 3 をパーティション 2 にマージした後で、マージ後のパーティション 2 で ("Product" = 'ColaDecaf' OR "Product" = 'ColaDiet') のようなフィルタを作成できます。これにより、ColaDecaf と ColaDiet のデータのみをファクト テーブルから取得し、ColaFull のデータは除外するように指定できます。または、パーティション 2 とパーティション 3 の作成時にフィルタを指定することもできます。これらのフィルタはマージ処理で結合されます。いずれの場合も、パーティションを処理した後にキューブに重複データが含まれることはなくなります。