0

複数の製品カタログをマージ (および重複排除)するための戦略を考えています。

SQL を使用しないデータベースを使用し、部分的に重複する製品のN 個のカタログを照会する必要があります。

分類、タグ、説明などの特定の側面を正規化する必要があり、どのカタログに各固有のアイテムが含まれているかを追跡する必要があります (たとえば、UPC による各カタログ内の製品の重複排除)。

私の現在の考えは、個々のカタログを独自のテーブルにインポートし、自己構築したアルゴリズムを使用して「類似」アイテムを識別し、正規化を実行してから、正規化および重複排除されたデータを含む最終的な「マスター」テーブルを作成することです - (マスターレコードの値は、選択されたカタログまたはカタログの組み合わせからコピーされ、そのアイテムを含むカタログへのリンクが含まれます)。

この件に関して他にどんな考えがあるのだろうか?自分自身をよりよく教育するために、どの研究分野を調べる必要がありますか?

4

3 に答える 3

1

あなたは多くの詳細を提供しませんでしたが、私が理解していることから、HBaseを使用している場合は、次のことができます。

  1. すべてのデータを元の形式またはそれに近い形式でhbaseに書き込みます
  2. マップ/リデュースを作成して整理します。

    2.1。マップフェーズで、潜在的なキーを正規化して発行します

    2.2。削減フェーズ(同じキーを持つすべてのレコードを取得する)でマスターレコードを生成します

  3. マスターレコードを目的の場所にエクスポートします
于 2012-09-16T14:50:51.183 に答える
1

これは、1940年代から(正直なところ)名前レコードリンケージの下で膨大な研究分野となっています(ただし、残念ながら、「ID解決」、「データマッチング」、「マージ/パージ」など、他の多くの名前でも知られています。等)。ここで学ぶことは膨大な量であり、人々はあなたが使用できる多くの技術とツールを開発してきました。自分で何かを書く前に、これらに精通することを強くお勧めします。

重要な問題はパフォーマンスであることに注意してください。基本的に、すべてのレコードペア(O(n ^ 2))を比較する必要があり、理想的には、あいまい文字列コンパレータ(すべて低速)を使用する必要があります。それだけで、パフォーマンスの問題がすでに解決されているツールを使用する十分な理由があり、文字列コンパレータなども提供できます。

ウィキペディアのリンクには、調査とツールの両方への参照があります。私はそれを見ることを強くお勧めします。

とにかく、もっと知りたいのであれば、この主題に関する最初の本(私が知っている)が今年初めに出版されました:PeterChristenによるDataMatching。2つの優れた概要論文は、重複レコードの検出です。調査(Elmagarmid、Ipeirotis、Verykios)と、レコードリンケージの概要と現在の研究の方向性(William Winkler)です。リンクを投稿しますが、スパム対策では許可されません。私は今年の初めに、問題、調査、および解決策の概要を説明するプレゼンテーションを行いました(スライドシェア、タイトル「共通の識別子なしでデータをリンクする」にあります)。

于 2012-09-26T09:43:10.173 に答える
1

ここには、レポート目的で NoSql から毎晩 / 毎週 Sql スキーマを生成するいくつかのローカル企業があります。

私が理解していることから、使用されているアプローチはまさにあなたが説明した方法です。あなたのデータセットは非常に大きいので、その戦略に問題はないと思います。

于 2012-09-15T04:12:23.403 に答える