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)
案例
1
2
3
4
5
6
7
8
9
10
|
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语句
1
2
3
|
INSERT INTO table_name(id:key,title:text,message:text,url)
VALUES (
'1'
,
'TngouDB标题'
,
'内容……'
,
'www.tngou.net'
),
(
'2'
,
'TngouDB标题2'
,
'内容2……'
,
'www.tngou.net'
)
|
1
2
|
SELECT title,message,url FORM table_name1,table_name2,table_name3
WHERE title=
'查询条件'
AND message=
'查询条件'
LIMIT
20
|