向数据库中添加数据时要更新索引,怎么实现?
向数据库中添加数据时要更新索引,怎么实现?
[解决办法]
一般不可能实时更新一个很大的索引体系。除非把索引分成两个部分。1个是大规模的长期不动的索引,一个热索引。热索引与长期索引的所有技术体系都一样,但规模小很多。搜索的时候,两个索引同时工作,把结果进行汇总。
你要添加新数据,就更新小的热索引。而热索引到一定大小后,就归并到大索引中去。
这是一个办法。
另外一个办法就是建立一个时间戳。少量的数据(120条以内)不建任何索引,直接用LIKE查询。然后让计算机有时间把时间戳以后的数据建立索引,归并到然后索引中去。然后把时间戳右移即可。
这两种方法本质上是等价的。