Sybase IQ 的基础
Sybase IQ 的基础
Sybase IQ的一些基础总结:
1、IQ跟其它的关系型数据库相比,它的主要特征是:查询快、数据压缩比高、Load快,但是插入更新慢,不太适应数据老是变化,它是按列存储的。它适做DSS(决策支持系统),数据集市,数据仓库,它不适合OLTP。适合OLAP。
注:OLTP即联机事务处理,就是我们经常说的关系数据库,意即记录即时的增、删、改、查,就是我们经常应用的东西,这是数据库的基础;OLAP即联机分析处理,是数据仓库的核心部心,所谓数据仓库是对于大量已经由OLTP形成的数据的一种分析型的数据库,用于处理商业智能、决策支持等重要的决策信息;数据仓库是在数据库应用到一定程序之后而对历史数据的加工与分析;是处理两种不同用途的工具而已。
2、IQ自身的体系组成,它由:
Catalog store(用于存储数据库自身Metabase信息),一般是dbname.db文件存储,如:反洗钱叫amldb.db
DBspace(它是IQ的数据存储空间),它又包括两种类型,一是IQ Store,用于存放真正的数据,一般用裸设备,直接用文件系统时一般叫dbname.iq;二是IQ Temporery Store,用于存放临时数据,一般用裸设备,直接用文件系统时一般叫dbname.iqtmp
IQ Message Log 这是IQ的消息日志,可以删除,也可以限制大小,一般叫dbname.iqmsg
IQ Transcation Log 这是IQ的事务日志,不可以随意删除,一般叫dbname.log,注意:不要看到.log就认为可以删除
IQ Server Log 这是IQ服务器引擎消息,包括一些启动,停止的日志,可以删除。
3、停止启动IQ的命令,Start_asiq,Stop_asiq,dbstop,连接IQ的命令,dbisql,dbisqlc,查看IQ数据库信息的存储过程Sp_iqstatus
4、IQ的服务配置文件,一般叫dbname.cfg,里面的一些基础配置参数:Server名字,数据库名称,端口,其中最重要的一点,IQ缓存或者叫内存的配置,通过-iqmc,-iqtc,两个参数。其中iqmc表示:主缓存/内存,iqtc表示:临时缓存/内存,一般它们的比例推荐值是iqmc:iqtc 4:6
5、知道IQ数据库的参数配置(DB Option),Set[Temporary-临时生效]Option pulic.IQMSG_LENTH_MB = 500,限制IQmsg文件的大小为500MB,当加了temporary时,表示本次连接生效。注意下Load_Memory_MB这个option,因为跟Load时内存有关。
6、IQ的索引,一般关系型数据库索引是B-Tree,IQ的索引机制是BitMap。
IQ索引的类型主要包括:FP、LF、HG、HNG等,
FP是IQ默认的索引,也就是说IQ创建表后,自动每一列就都带有这种索引。所以IQ查询快,它号称所有数据都有索引。
LF是低位索引,也就是说大量数据里面,字段重复次数不多的,比如:分行号,上亿记录也就是那100多个分行号。一般原则是少于1500个,就可以低位索引。
HG就是高位索引了,大于1500个的,有时候也定义成主键索引。
索引这一部分,区分清楚各种索引,并且知道当between时用什么索引,当groupby时用什么索引,当like时,=时,>时。
7、表:包括基本表 create table mytable, 本地临时表 create table #mytable, 全局临时表 create global temporary table mytable 区分它们的生命周期与作用。不记日志删除整个表数据:turncate table
8、Load里面的特殊分隔符,如换行: \x0a , tab: \x09
Sybase IQ 的基础的更多相关文章
- SAP Sybase IQ 操作基础
1.启动 source IQ-16_0.sh 命令行查看安装程序是否成功 start_iq -v2 2.数据库.表空间 start_iq -n utility_db dbisql -c 'uid=db ...
- Sybase IQ如何将大文件数据迅速加载到数据库
试想一下,如果一个文件5G.10G甚至更大.如何将它迅速地加载到数据库指定的表呢?我们看看Sybase IQ是如何迅速地将表的数据加载到数据库的. 数据文件格式: 1440,2011-01-09 00 ...
- Sybase IQ使用过程中注意事项
Sybase IQ使用过程中注意事项 1,字母大小写比对不敏感,也就是在值比对判断时大小写字母都一样; 2,等值,或<>判断,系统默认对等式两边比对值去右边空格再进行比较: 3,GROUP ...
- Sybase IQ数据库索引
IQ是Sybase公司推出的特别为数据仓库.决策支持分析.数据分析/挖掘等查询分析密集型应用而设计的关系型数据库.IQ的架构与大多数关系型数据库不同,它特别的设计用以支持大量并发用户的即席查询.统计分 ...
- Sybase IQ导出文件的几种方式
IQ有四种方法,将表的数据导出为文本文件:1.重定向 SELECT * FROM TABLE1 ># D:MYDATATABLE1.TXT -- 文件生成在执行语句的客户端上 2.通过选项导出 ...
- 查看sybase IQ的执行计划
在性能调优工作中,首要的事情是找出性能瓶颈.而针对数据库应用,由于商用数据库对上层应用来说是个黑盒,所以往往需要借助数据库的一些接口或工具来了解数据库的具体行为,并结合相关知识和业务进行调测. ...
- 【UML】NO.70.EBook.9.UML.4.001-【PowerDesigner 16 从入门到精通】- 基础概念
1.0.0 Summary Tittle:[UML]NO.70.EBook.9.UML.4.001-[PowerDesigner 16 从入门到精通]- 基础概念 Style:DesignPatte ...
- Universe Design Tool Using JDBC connect Sybase/Oracle Get Error
一.针对Sybase 1 使用SAP Universe 设计工具连接Sybase数据库报错,报错如下: “CS: Java Class not found in classpath : com.syb ...
- Sybase中的load table的用法
Sybase中的load table的用法 用sybase iq作为数据仓库的存储,确实有其独特的特点和优势,但是在数据ETL的时候,如果用insert.update方式,速度太慢,大概是2秒钟左右一 ...
随机推荐
- k64 datasheet学习笔记26--Oscillator (OSC)
1.前言 OSC模块是一个晶体振荡器. 该模块使用晶体或谐振器与外部连接,为MCU产生一个参考时钟. 主要为下图红色框住的部分 2.特性和模式 Supports 32 kHz crystals (Lo ...
- 深度学习在graph上的使用
原文地址:https://zhuanlan.zhihu.com/p/27216346 本文要介绍的这一篇paper是ICML2016上一篇关于 CNN 在图(graph)上的应用.ICML 是机器学习 ...
- C++设计模式——模板方法模式
模板方法模式 在GOF的<设计模式:可复用面向对象软件的基础>一书中对模板方法模式是这样说的:定义一个操作中的算法骨架,而将一些步骤延迟到子类中.TemplateMethod使得子类可以不 ...
- iOS rebuild from bitcode对ipa大小的影响
https://developer.apple.com/library/content/technotes/tn2432/_index.html 为了测试一下rebuild from bitcode的 ...
- C#+EntityFramework编程方式详细之Code First 数据迁移
在前几篇的C#+EntityFramework编程方式中介绍了C#+EntityFramework编程方式Code First ,Model First以及Dtatabase First 等编程方式, ...
- C#+EntityFramework编程方式详细之Model First
Model First Model First模式即“模型优先”,这里的模型指的是“ADO.NET Entity Framework Data Model”,此时你的应用并没有设计相关数据库,在VS中 ...
- docker /var/lib/docker/aufs/mnt 目录满了,全是垃圾数据
#!/bin/sh echo "==================== start clean docker containers logs ======================= ...
- Centos7/RHEL7 开启kdump
Kdump是一种基于kexec的Linux内核崩溃捕获机制,简单来说系统启动时会预留一块内存,当系统崩溃调用命令kexec(kdump kernel)在预留的内存中启动kdump内核, 该内核会将此时 ...
- php接入支付宝的流程(转载)
php接入支付宝的流程写在这里供像我一样的小白参考. 1.首先要有一个创建一个应用(选好自己想要的功能,关于支付的功能,貌似都需要签约) 2.下载SDK&Dome(网址https://doc. ...
- pyqt pyside 窗口自动调整大小
pyqt pyside 窗口自动调整大小 在QTimer中一直调整 def initTimer(self): self.resizeTimer = QtCore.QTimer(self) self.r ...