CU
分类: PHP
2015-06-19 16:52:35
原文地址:Sybase IQ基础知识 作者:gun_hap
1.IQ数据库日志信息:
$SYBASE_HOME/IQ-15_4/logfiles
2.数据库文件位置:
/srv/smartcare/netview
3.查看当前数据库的连接信息和正在执行的sql语句或者过程
sp_iqcontext
go
4.IQ的高速缓存 :2个
5.索引的使用:
HG:增强型B树索引,用于对高基数处处理相等和group by运算(建议用于具有超过1000个不同的值的列)
primary key默认创建的就是这种类型的索引
LF:基于值的位图索引,用于处理对低基数据数据的查询,建议最多有1000个不同的值
TIME:数据类型为Time的列的索引
HNG:非基于值的位图索引,适合大部分与范围或集合有关的高基数决策支持运算,如果列值是数字,尽量使用NUMERIC或者DECIMAL类型;
6.将一列指定为FOREIGN KEY、PRIMARY KEY或UNIQUE时,Sybase IQ会自动为其创建一个High_Group索引.
7.索引类型的选择:
(1).LF类型,唯一值数目小于1000,但是如果表的行数小于25000时,建议用HG索引类型;
实例:如性别,婚否,省,市,国家,
(2).sp_columns 'DIM_RAT_MAPPING'
(3).HG索引,通常用于带有整数数据类型的连接列,列的唯一值数目要求大于1000,能提高order by的查询性能;
实例:小区ID,决定因素,列值的唯一值是否大于1000;
(4).HNG:
决定因素:是否有连接列以及是否在该列上处理group by
(5).使用create index时,缺少情况下创建High_Group索引,
8.FP索引:快速投影索引,为SybaseIQ的默认索引
9.查询当前数据库IP的连接数
select NodeAddr as IP ,count(*) as Total from sp_iqconnection() group by NodeAddr order by Total desc
10.Sybase IQ导出数据为文件,用>#定向符,而且需要用Sybase IQ提供的工具Interactive,示例如下:
select * from test1 ># test.txt
go
执行结果如下,它会显示如下信息,导出时间,导出文件名和导出文件的记录数;
Execution time: 0.134 seconds
Exporting data to "D:\sybase15\IQ-15_1\bin32\test.txt"
30368 rows written to "D:\sybase15\IQ-15_1\bin32\test.txt"
注:用>>#则为直接把输出结果追加到文件中,并且不会删除之前在文件中已经存在的数据;用>&则在>#基础上,在输出文件中增加了执行语句的信息和统计信息。