0

これが私の状況です。以下のデータの表があります。

Property_name Property_value
--------------------------------------
prob_name_1   ,sdfsdf@ce.o,jfgj@ce.o, 
prob_name_2   ,sdfsf@ce.o,dsf@ce.o, 
prob_name_3   ,sdfsfss@ce.o,sdfsdf@ce.o, 
.              .
.              .
.              .
prob_name_n    ,sdfsfss@ce.o,sdfsdf@ce.o, 

このテーブルには多くの行が含まれる可能性があり、電子メールはカンマ区切りで保存されます。Property_valueは、データ更新を最大(2k)保持します。最後のプロパティに「n」がないので、必要に応じて検索する必要があります。

私のクエリは、このデータでメールを検索する必要があるということです。memcacheツールを使用してこのデータをキャッシュするため(に保存されHashtable<String, String>ます)、クエリは使用しません。アイデアはほとんどありません。もっと良いものを提案してください。

  1. HashMap-property_nameとpropertyvalueのキーペア値。それを繰り返し、値が見つかるまで値を確認します。
  2. すべての行を繰り返し、見つかるまで検索します。
4

1 に答える 1

2

電子メール アドレスは番号順に並べることができないため、2 番目のオプションを使用することをお勧めします。あなたが言っているのは、特定の property_value に対する property_name を見つける必要があるということです。

リストが何らかの方法で順序付け可能な場合は、二分探索法を使用できます。ただし、電子メール アドレスをアルファベット順に並べるには、さらに時間がかかると思います。

于 2012-10-03T15:08:34.550 に答える