文章标题:蓝星际内存数据库LxjDB说明 |
文章作者:bluesen |
发表时间:2013-9-3 11:19:34 |
内容:
蓝星际内存数据库LxjDB 说明书 朱东宁 zhudn@bluespace.com.cn 2013.9, shenzhen 1.特点 快速: 全部数据装入内存,能够快速存取。 服务器支持64位操作系统,可以利用海量的内存。 高效的锁机制,并发读不加锁,写时对表加锁。 支持索引和主键。 简单: 支持标准的SQL语句(SQL的限制见附录), 客户端支持Ado.net、Koodoo数据库访问(蓝星际语音平台)、jdbc(即将支持) 提供命令行客户端 服务器配置简单 服务器不需要安装。 可靠: 日志和快照功能保证数据的可靠性。重启后保持数据完整性。 加载: 优先选择快照+日志加载,当快照+日志不存在是,进行外部数据加载。 2.SQL的限制 2.1. 只支持单表操作,不支持多表关联 insert into 表名 values(全部值列表) 注意:insert不支持列出字段名的表示方法 值可以是时间函数getdate() 服务器会进行主键冲突判断 select [top n] 字段列表或* from 表名 [where 字段条件表达式 order by 字段 [desc], ...] delete [from] 表名 [where 字段条件表达式] 如果没有where表达式,则表示删除该表的所有记录 update 表名 set 字段名=值, 列表 where 字段条件表达式 值可以是时间函数getdate() 注意:不允许改变主键的值 where 表达式的 字段 op 值, op可以是下列: =, >, <, >=, <=, between v1 and v2操作, 不支持<>或!=或like 值必须是单一的数值或字符串(用单引号引起来的) 支持and, or逻辑运算符,也支持用()改变运算的优先级 注意,不支持not 2.2. 不支持用sql创建(create)和删除表(drop) 创建表在配置文件Create.ini指定(见本手册第5章) 表不能删除。 3.文件和路径 LxjDb64.exe - 服务器端主程序 BlueSpaceDb.ini - 配置文件 Create.ini - 表结构描述配置 .\CheckPoint\ - 存放日志和快照的子目录 .\Load\ - 外部数据加载路径 c0.exe - 客户端命令行工具, 可以执行sql语句 LxjDbApi.dll - 客户端调用api,如果是ado.net则不必关心 4.基本配置说明 BlueSpaceDb.ini: // TCP侦听端口 port=2013 // 连接池数量 connPool=100 // 处理线程数 procThreads=30 // 连接的参数 user=sa pwd=lxj83844270 // 连接无请求的超时秒数,超过此时间将挂断 connTimeout=300 5.表配置文件说明 Create.ini: 表名 = 字段描述 字段描述必须在一行内,多个字段间用逗号分隔。 字段描述:字段名 类型[(长度)] [index] [key], index表示在该字段上创建索引,key表示在该字段为主键(如果多个字段指定为key,则为联合主键) 举例: Sys_Seat = CId char(30) index key, Agent varchar(20) index key, Stat char(1), Time datetime Sys_Channel = Station int(4) index key, LineNo int(4) index key, Stat int(1), LastTime datetime 6.加载机制说明 表创建后是空表,除了可以在客户应用程序中动态调用sql语句insert into以外,服务器程序启动时也能够加载。 如果CheckPoint子目录下有快照和日志文件,则选择从这里加载,这个目录下的文件是服务器程序自动维护的。 否则将选择在Load子目录下加载,Load子目录供外部程序(如SQL Server的bcp.exe)创建数据文件,格式如下: 每张表可以有一个数据文件(也可以没有),文件名: 表名.txt 字段顺序必须按照Create.ini配置的顺序; 字段不能多也不能少,数量要等于Create.ini配置的; 字段分隔符为\t即制表符,记录结束符为\n即换行符,这也是bcp的默认值 技巧:如果要求服务器启动时总是加载外部数据,则可以在启动前删除掉CheckPoint下的所有文件。 |
已有回复: |
|
回复如下