当前位置:软件学习 > 其它软件 >>

(搜索引擎的模糊匹配)lucene适合海量数据的模糊匹配吗?寻求“类百家姓”在lucene的实现方法?

有这样一个需求:
1,在数据库中有两张表tableA和tableB。

2,tableA中保存有  百家姓(如:赵,钱,孙,李,,,(网络上流行的)痞子蔡,轻舞飞扬......)。

2,tableB中保存存在有会员信息(如:赵本山,钱学森,孙悟空,李阿牛.....等  "字样"(跟tableA有模糊关系)),
在tableB中还有其它很多详细的"个人信息"。

3,由于tableB中的信息不够完善,需要补充tableA的一些信息,(像:赵本山小时后的故事,钱家姓的由来.......),
-----现在我们需要把这些信息能合起来的就合起来,不能合起来的也要找出来,
并把它们分别保存在tableOk(找到匹配的)和 tableLose(未找到匹配的)表里去。

大概的表结构如下:(其中tableA中的Xing和tableB中的XingMing存在模糊的对应关系)
      《现在的目标就是把两个表建立起关联来》
tableA:
         ID     Xing      History
      -------------------------------------
         1      赵本山    本山的小时候.....
         2      钱学      钱学是我国著名的.....
         3      悟空      悟空一个跟斗十万......
         4      轻舞飞扬  痞子蔡的小说.......
         .............................

tableB:
        ID      XingMing         Phone           AGE   ....
     ---------------------------------------------
        1       中国赵本山      13800138000       50
        2       我国钱学森      13800138000       90
        3       神话孙悟空      13800138000       30000  
        4       山歌李阿牛      13800138000       70
      ..................................

现在我要整合成tableC:
       ID       XingMing    Xing  Phone        AGE   History
    --------------------------------------------------------  
       1        赵本山      赵    13800138000  50    赵家的由来是。。
       2   
   .....................................
像用lucene实现,有没有思路???不用分词(词典就是tableA的Xing字段)。

我们用存储过程实现了功能,但MSSQL2000执行后的效果达不到我们的需求,希望能找到更好的实现方式.
---------------------------------------------------------------------
SQL: select tableB.* , tableA.History into tableC
         from tableA,tableB        
     where 
         charindex(tableB.XingMing,tableA.Xing)>0----模糊匹配建立联系

----以上是我们在数据库(存储过程)中实现的,但速度很慢,不合要求-------

---------------------------------------------------------------------
结果能实现功能,可性能不行,charindex()太耗时间了,like更不行。
请问用lucene实现的话应该怎样去做??????

问题:
    1,把tableA中的”Xing“字段,保存在txt文件中,文本的一行表示一条记录(以此作为字典-Dic.txt)
       这样能实现吗?有的话怎样实现?不需要用lucene的话用什么比较好?谢谢

    2,遍历tableB中的所有记录(几百万),如果存在:
           tableB.XingMing like ‘% Dic.txt.任一行 %’----模糊匹配成功--保存到tableOK。
       用lucene是怎样实现的?给个简单例子。谢谢
     --------------------编程问答-------------------- 不明白哦 --------------------编程问答-------------------- lucene对几百万条记录的查询不在话下,不过你的思维有问题,不能以数据库的模式照搬到Lucene中。 --------------------编程问答-------------------- 数据库表建立大的问题,想速度一定得使用索引.具体怎么做加我QQ798550852 --------------------编程问答--------------------
这个很容易.
补充:企业软件 ,  企业信息化
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,