TngouDB中文索引数据库是天狗网(tngou.net)开发的中文搜索引擎数据库,用于天狗农业网的农业搜索引擎。 天狗希望基于开源的力量,把TngouDB打造成为一个专门的中文索引NoSQL数据库。
简介 TngouDB是基于JAVA而开发的跨平台数据库,底层采用Lucene(存储引擎)、IK(分词)、Netty(通信)等 而打造的网络数据库。TngouDB直接简化的Lucene的相关API的调用,使用SQL语句实现数据的CRUD操作。
结构 TngouDB的数据存储还是以关系型数据库结构存储,但TngouDB不支持级联查询,所以TngouDB不是一个标准的关系型数据库,我们还是喜欢把它认定为一个NoSQL数据。
特点 TngouDB可以脱离Lucene单机的现在,通过网络可以把TngouDB部署在单独的服务器上,单独处理存储于查询业务。TngouDb同时简化的Solr的复杂性,用户可以通过简单的SQL语句进行相关的数据操作。TngouDB可以完全抛开Lucene与Solr相关的知识,用常见 的SQL语句就可以实现。
文档文档地址:http://www.tngou.net/doc/tndb 支持完整的安装、配置、使用文档。 使用案例现在TngouDB暂且是内部测试版本,请先不用用于上线的项目!我们会不断的开发与更新,后期会发布相应的正式版本。
现在TngouDB用于天狗网的搜索业务 天狗农搜(http://www.tngou.net/search)
案例
TngouDBHelp dbHelp = TngouDBHelp.getConnection(); //建立连接 dbHelp.createTable("tngou"); //创建表 dbHelp.dropTable("tngou"); //删除表 dbHelp.closeConnection(); //回收连接 回收到连接池 String sql="create table tg"; dbHelp.execute(sql); //执行SQL语句 sql="drop table tg"; dbHelp.execute(sql); dbHelp.closeConnection(); //回收连接 回收到连接池 dbHelp.close(); //关闭连接…… 一般情况下不需要关闭 ;
应用的SQL语句
INSERT INTO table_name(id:key,title:text,message:text,url) VALUES ('1','TngouDB标题','内容……','www.tngou.net'), ('2','TngouDB标题2','内容2……','www.tngou.net') SELECT title,message,url FORM table_name1,table_name2,table_name3 WHERE title= '查询条件' AND message='查询条件' LIMIT 20