IQ是Sybase公司推出的特别为数据仓库、决策支持分析、数据分析/挖掘等查询分析密集型应用而设计的关系型数据库。IQ的架构与大多数关系型数据库不同,它特别的设计用以支持大量并发用户的即席查询、统计分析。其设计目标首先考虑查询性能,其次是完成批量数据更新的速度。而传统关系型数据库引擎的设计侧重考虑在线的事务处理。

IQ数据库采用列存储数据,而不是按行,它的每张表是一组相互独立的页链的集合,每一页链存储表中的一列。所以有50 列的表将有50 条相互独立的页链,每一列都有一条页链与之对应,而不是象其他数据库引擎,一张表对应一条页链。所以当IQ查询所需要的列时,只针对所需的列进行扫面,而不需扫描全表。

IQ采用位图索引(针对低基数)和Bit Wise索引(针对高基数数据的查询,包含聚合运算和WHERE 子句中的范围谓词)技术,用以减少给定查询或更新的工作量,在数据统计、挖掘具有高度的非选择性上,有很高的优越性。

IQ目前的索引类型:

1、Fast Projection Indexes (FP):该索引就是简单的存储列本身,也是IQ的缺省索引。如果你认为常常需要读取某列完整的数据,那么你可以无须定义任何索引。

2、Low Fast Indexes (LF):该索引针对低基数的列使用一个称为‘编码’的方法。这对减少数据冗余非常有效。编码尤其适用于大量重复的数据。该方法典型的适用于取值范围<1500的低基数列。

3、High Non Group Index (HNG):对于基数超过1500的列,Sybase使用专利的索引技术——Bit Wise索引。该索引在你需要联合使用范围搜索与计算时尤为有效。例如查询“英语大于90分的总成绩”,正如各类位图索引,该方法的优势之一就是,运算查询可以直接由索引得到结果,而不需读取数据。

4、High Group Index (HG):该索引本质上是B-Tree索引。然而,其原理是你只需为那些你认为可能使用“group”操作的列定义索引,尤其是在你需要联合使用低基数与高基数的查询的时候。

5、Word Index (WD):该索引用于文本比较。主要用于关键词或字符串搜索。

6、Compare Index (CMP):该索引使列与列之间的比较更加高效。

7、Join Index:正如其名,该索引用于处理表连接的查询。正像已支持的大量索引一样,该索引在索引需求能够被预测时最为有效。

创建索引语句:如创建HNG索引:Create HNG Index ShipIx on dbl.Sales(ShipDate)

Sybase IQ数据库索引的更多相关文章

  1. Sybase IQ如何将大文件数据迅速加载到数据库

    试想一下,如果一个文件5G.10G甚至更大.如何将它迅速地加载到数据库指定的表呢?我们看看Sybase IQ是如何迅速地将表的数据加载到数据库的. 数据文件格式: 1440,2011-01-09 00 ...

  2. Sybase IQ 的基础

    Sybase IQ 的基础   Sybase IQ的一些基础总结: 1.IQ跟其它的关系型数据库相比,它的主要特征是:查询快.数据压缩比高.Load快,但是插入更新慢,不太适应数据老是变化,它是按列存 ...

  3. Sybase配置数据库参数

    Sybase配置数据库参数参数配置的两种方法:sp_configure ‘参数名称’,参数值修改参数文件(如:Sybase主机上的 %SYBASE%\servername.cfg) 配置Sybase数 ...

  4. Sybase IQ使用过程中注意事项

    Sybase IQ使用过程中注意事项 1,字母大小写比对不敏感,也就是在值比对判断时大小写字母都一样; 2,等值,或<>判断,系统默认对等式两边比对值去右边空格再进行比较: 3,GROUP ...

  5. 数据库索引--------B/B+树、聚集、非聚集、符合索引

    摘录自博客:http://www.cnblogs.com/morvenhuang/archive/2009/03/30/1425534.html 一.引言 对数据库索引的关注从未淡出我的们的讨论,那么 ...

  6. SAP Sybase IQ 操作基础

    1.启动 source IQ-16_0.sh 命令行查看安装程序是否成功 start_iq -v2 2.数据库.表空间 start_iq -n utility_db dbisql -c 'uid=db ...

  7. 【转】B-树和B+树的应用:数据搜索和数据库索引

    B-树 1 .B-树定义 B-树是一种平衡的多路查找树,它在文件系统中很有用. 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树: ⑴树中每个结点至多有m 棵子树: ⑵若根结点不是叶子 ...

  8. 数据结构 B-树和B+树的应用:数据搜索和数据库索引

    B-树 1 .B-树定义 B-树是一种平衡的多路查找树,它在文件系统中很有用. 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树:⑴树中每个结点至多有m 棵子树:⑵若根结点不是叶子结点 ...

  9. MySQL数据库索引的4大类型以及相关的索引创建

    以下的文章主要介绍的是MySQL数据库索引类型,其中包括普通索引,唯一索引,主键索引与主键索引,以及对这些索引的实际应用或是创建有一个详细介绍,以下就是文章的主要内容描述. (1)普通索引 这是最基本 ...

随机推荐

  1. List------Linked 链表

    1.Definition Linked list consists of a series of nodes. Each nodes contains the element and a pointe ...

  2. Entity Framework技巧系列之十一 - Tip 42 - 45

    提示42. 怎样使用Code-Only创建一个动态模型 背景: 当我们给出使用Code-Only的例子,总是由创建一个继承自ObjectContext的强类型的Context开始.这个类用于引导模型. ...

  3. Git add和commit步骤分析

    修改后或者添加新的文件,执行add命令后,首先它会先存入本地库的暂存区, add可以上传很多个文件,然后执行commit命令后,都会被提交到默认的分支 Master分支上.只有文件更改和文件新建,都可 ...

  4. 【Machine Learning in Action --2】K-近邻算法构造手写识别系统

    为了简单起见,这里构造的系统只能识别数字0到9,需要识别的数字已经使用图形处理软件,处理成具有相同的色彩和大小:宽高是32像素的黑白图像.尽管采用文本格式存储图像不能有效地利用内存空间,但是为了方便理 ...

  5. flash检测网络是否通畅

    air: 要在 Adobe ® Flash ® Professional(CS4 或更高版本)中使用 air.net 包: 选择“文件”>“发布设置”命令. 在 Flash 面板中,单击 Act ...

  6. onPostCreate——Activity彻底运行起来之后的回调

    记得之前想要在Activity布局完成,彻底跑起来之后,再获取当前Activity的窗口中,某个View的宽高,之前用的办法很土,弄个Handler,发个Message出来,使用sendMessage ...

  7. CSS中!important的使用 转

    本篇文章使用最新的IE10以及firefox与chrome测试(截止2013年5月27日22::) CSS的原理: 我们知道,CSS写在不同的地方有不同的优先级, .css文件中的定义 < 元素 ...

  8. sed用法小结

    简介: sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区 ...

  9. js中子页面父页面方法和变量相互调用

    (1)子页面调用父页面的方法或者变量: window.parent.方法()或者变量名window.parent相当于定位到父页面 之后的操作和在父页面中写代码一样写 window.parent.aa ...

  10. Struts2实现国际化

    public class I18nAction extends ActionSupport { private static final long serialVersionUID = -693330 ...