0

すべての経験豊富なプログラマー。以下についてアドバイスが必要です。

次の問題のベストプラクティスは何でしょうか

オブジェクト(アパート)の2〜3個のAPIがあります(XML、JSON、SOAP、プロトコルは今は関係ありません)

それぞれにいくつかのキーポイントがあります

a)地理-各APIには、同じ都市と場所の独自の名前とIDを持つ独自のGeoDatabaseがあります

b)各APIには、オブジェクト属性の説明のさまざまな方法があります...家が持っているもの(プール、車椅子に優しいなど)のように

したがって、必要なのは、それらのデータをインポートし、ローカルでマージして検索することです...。

このタイプの問題解決のアーキテクチャ的に正しい方法は何でしょうか。

非常に近い例はホテルの検索エンジンで、10〜20の異なるシステムからデータを検索しています。..。

したがって、同様のものが必要ですが、完全に別のタイプのオブジェクトにあります。あなたのメモ、コメント、回答は本当にありがたいです。参加していただきありがとうございます。

4

1 に答える 1

1

これは非常に一般的な質問なので、悲しいことに答えもかなり一般的なものになります。私はこの問題に取り組むので:

  • さまざまなAPIごとに作成wrappersします。これにより、APIが内部で呼び出される方法が標準化され、APIとの対話が容易になります。

  • uniform formatすべての結果を(可能であれば)、少なくとも検索、ソート、処理されるフィールドに変換します。

この情報をデータベースに永続化する場合は、簡単にクエリできるように構造を作成することが重要です。

たとえばJSON、家を定義する文字列全体をdescriptionというフィールドに保存することは望ましくありません。つまり、のような家の属性ごとにフィールドを作成することですswimming pool (BOOLEAN yes/no)。代わりに、key-valueのようなフィールドがattribute-nameあり、次のattribute-valueようなレコードが含まれる可能性があります。

  • スイミングプール:はい
  • いいえ:寝室の数:3

など。あなたはポイントを取得します。私の経験から、含まれるAPI値を成形できる統一されたデータモデルを作成できる限り、それらの照合と比較が容易になります。

于 2012-08-23T00:00:25.790 に答える