0

この rdbms の問題を設計する方法がわかりません:

たとえば、商品を購入している顧客がいるとします。購入することで、彼は自分のデータを残します。実際の顧客データを含む 2 つ目のデータセットがあります。データを収集した後、収集した顧客データから実際の顧客へのマッピングをアルゴリズムによって見つけたいと考えています。

アルゴリズムによって作成されたこのマッピング/これらのリンクを保存する方法はまだ不明です。

提案:

@Entity
public class Purchase{
    @OneToOne
    private Customerdata customerData;
}

@Entity
public class CustomerData{
    private String firstName;
    private String Lastname;
    private String city;
}

@Entity
public class RealCustomer{

    @OneToMany(cascade=CascadeType.ALL, mappedBy ="RealCustomer")
    private List<CustomerData> customerData = new ArrayList<CustomerData>();
    private String firstName;
    private String Lastname;
    private String city;
}

これで、想定したマッピングを RealCustomer データから customerData リストの顧客データに保存できます。

私はそれが最善の考えではないと思いますか?

あなたからの素敵な提案を期待しています。実際の顧客データと取得者の顧客データの類似性を利用できますか?

たとえば、都市が似ている場合でも (「ワシントン DC」と「ワシントン」)、一貫性のないデータを保持したいことに注意してください。後でマッチング アルゴリズムを再度実行できるように、この情報を失いたくありません。

注: 大まかなアイデアを教えていただければ大丈夫です。Java/JPA コードは必要ありません。

事前にどうもありがとうございました!

4

1 に答える 1

1

You can do something like below

@Entity
public class Purchase{
@OneToOne
private Customer customer;
}

@Entity
public class Customer{
private String firstName;
private String Lastname;
private String city;
//Below association will only come in picture if customer has real customer data       available when you are collecting the data this way you can clearly identify and separate collected vs real customers
@OneToOne
Customer realCustomer;
}
于 2012-08-15T16:43:32.250 に答える