数据文件管理
当前版本:v3.0, 更新时间:2020-09-16
PinusDB将每个表每天的数据存储在一个单独的文件中(时间以格林尼治时间为标准对齐,由于中国处在东8区,实际存储时间为每天8点到次日8点前的数据,也就是文件’2019-7-15’中实际存储的是 ’2019-7-15 8:00:00’ 到 ‘2019-7-16 7:59:59’的数据)。
管理员可以以文件为单位进行数据文件的分离、附加及删除。可以方便对数据进行转储等等操作。
数据文件存储为:系统数据目录\表名\年\月\数据文件名。
系统普通数据目录由sys_config表中normalDataPath项指定。
系统压缩数据目录由sys_config表中compressDataPath项指定。
表名、年、月 部分如名称所示,月目录是两个数字,一到九月在前面补0。
数据文件名由表名_年月日组成。
例如,
系统普通数据目录为 e:\data,表 tab01 在2019-07-05的普通数据文件:
数据文件路径: e:\data\tab01\2019\07\tab01_20190705.dat
索引文件路径: e:\data\tab01\2019\07\tab01_20190705.idx
附加数据文件时数据文件和索引文件必须存放在相应的路径下。
系统压缩数据目录为 e:\compress,表tab01在2019-07-01的压缩数据文件:
数据文件路径: e:\compress\tab01\2019\07\tab01_20190701.cdat
压缩文件索引与数据存储在同一文件中,所以只需要将数据文件存放在相应路径下即可。
1. 分离数据文件
管理员可以将数据文件从系统中分离,分离后无法查询到对应数据。只能分离时间早于数据写入窗口(见产品介绍>名词解释部分)的数据文件。
分离文件使用方法如下:
DETACH DATAFILE 'date' FROM tabname
--分离表tab01 的2019年6月1日的数据文件实例如下:
DETACH DATAFILE '2019-06-01' FROM tab01
2. 附加数据文件
将数据文件附加到表上,可以查询到对应的数据。
注意:数据文件中的表结构必须与附加到的表结构完全一致,字段个数、类型、顺序都需要完全一致。
附加数据文件使用方法如下:
ATTACH DATAFILE 'date','file-type' FROM tabname
其中file-type的取值
normal -> 普通文件
compress -> 压缩文件
附加表tab01 的2019年6月1日的数据文件实例如下:
ATTACH DATAFILE '2019-06-01','normal' FROM tab01
3. 删除数据文件
将数据文件删除后,无法恢复,操作时需谨慎!
注意:要删除的数据文件的日期必须早于数据写入窗口。
删除数据文件的使用方法如下:
DROP DATAFILE 'date' FROM tabname
删除表tab01 在2019年6月1日的数据文件实例如下:
DROP DATAFILE '2019-06-01' FROM tab01