2

信用調査機関のデータベースを設計していて、いくつかのガイダンスを求めています。

銀行、MFI、Saccos、公益事業会社などから受け取るデータには、さまざまな種類のIDが付属しています。例:国民IDとパスポートで銀行口座を開設することは完全に合法です。私の頭を悩ませているシナリオ1は、Customer1がパスポートを使用してbank1のクレジットファシリティ(今のところローンと呼びます)を取得してから、bank2に移動し、 NationalIDを使用してBank3を取得し、MilitaryIDを使用して別のローンを取得することです。最終的に、このデータが銀行から支局に送られると、実際には1人であることがわかっているのに、3人の異なる人として表示されます。現時点では、支局としてできることは何もありません。

ただし、(今のところ)1つの方法は、パスポートとIDSの両方を保持するリポジトリを提供するGovtレジストリを使用することです。したがって、この情報を照会して応答を取得したら、Passport_XがNationalID_YおよびMilitaryNumber_Zに関連していることをDBに表示するにはどうすればよいですか?

この場合も、人の名前はさまざまな注文状態で取得できます。Bank1はFName、LName、ONameを実行できますが、Bank3はLName、FNameのみを実行できます。この名前を保存するにはどうすればよいですか?

NationalIDなどの1つのIDタイプに対しても、スペルミスや名前の欠落がよく見られます。したがって、データベース内の1つのNationalIDは、取引したさまざまな銀行によってその人物の名前が異なる方法で取得されたため、約6つの異なる名前になる可能性があります。

そして、それは氷山の一角にすぎません。住所や電話番号などに問題があります。

すべての銀行からすべてのデータを確実に取得し、個人に関して可能な限り最も正確な情報を提供するために、データベースをどのように構成するかについて、何か洞察がありますか?さらに良いことに、このタイプのセットアップの経験はありますか?

ありがとう。

4

1 に答える 1

2

Passport_X が NationalID_Y および MilitaryNumber_Z に関連していることを DB に表示するにはどうすればよいですか?

些細なこと。

ID が別の ID にリンクされている場合、AlternateId フィールドを持つ ID テーブルがあります。最初に作成した IDentity をマスターとして使用します。代替には、それを指す AlternateId があります。

その中のデータから ID を分離する必要があるため、おそらくオリジンとタイムスタンプを使用して、ID の代替バージョンを作成できます。おそらく完全にバージョン管理をサポートし、別の ID を相互に関連付ける必要があります。これには、データの「公式」バージョン (つまり、統合) を使用したアルゴリズムによる「マスター ID」の生成が含まれます。

詳細は複雑です - ほとんどの場合、パフォーマンスを損なうことなく多くの妥協をする必要があるため、最後にスペシャリストを雇います. 20 年以上の経験を持ち、(アプリケーションに関して) 認識していないかもしれない制約を考慮して、最適なソリューションを見つけた熟練したデータベース設計者またはアーキテクトとして人々がいるのには理由があります。

さらに良いことに、このタイプのセットアップの経験はありますか?

はい。財務情報を試してください。ストック シンボル / フィード / 定義は互換性がある必要はなく、取得する人によって異なります。重要なセットアップには、異なるデータ フィードがあり、同じアイテムがわずかに異なって表示される場合があり、エラーが発生することもあります。異なる名前、場合によっては異なる価格 (例: ES、CME グループは 1 ポイントあたり 50 米ドルですが、TT Fix では 5 です。補うために、価格は 10 倍されるため、1000.25 ではなく 10002.5 になります)。これは統合の同じ行であり、悪臭を放ちます。

大量のコード、大量の適切なデータベース設計、適切なパフォーマンスを得るために半ダース回のやり直し。悲しいことに、これはトリッキーです。

于 2012-07-06T09:47:20.240 に答える