以下方案,是根据实践总结的基于NEO4J的全文检索解决方案,各有优缺点,仅供参考。以下总结全部基于neo4j-3.4.9版本,至于升级到3.5.x之后的版本索引有了大幅提升,还未做测试。
一、有大量存量数据(亿级以上)(并长期有增量数据进入)
1、使用NEO4J + ELASTICSEARCH
二、无大量存量数据或者少量存量数据(或全部为增量数据)
1、建立全文检索之后,设置索引同步更新即可(对于大量数据的索引重建比较费时)。
2、建立全文检索之后(使用自定义支持中文的全文索引过程),设置增量入库数据同步更新到索引即可(索引的重建如果做不好优化将会比较费时)。
三、架构方案选择优先级
方案选用优先级:
1、红色(自带功能更便捷,对于中文检索的支持较差)
2、蓝色(检索服务更完备但是需要额外安装维护全文检索服务)
3、绿色(检索结果更可控精准可自主研发,优化具有一定的难度)