新版本 , 新特性——Sybase IQ 15.0
议程
• 商业前景• 技术专题• 新特性小结• 讨论
声明
• 下面前瞻性介绍只是基于当前对未来的判断,在不同的应用场景中存在一定的风险和不确定性。
• 不是 IQ 15 发布 .
商业前景
• 从自动的事务处理向自动的决策支持的重要转换– 提高企业竞争力– 支持企业范围内每天(近实时)重要业务决策
• 专业的需求驱动分析系统的持续投资– 提供更有价值的信息服务带来更多的销售机会– 政策刚性要求。
• 市场增长更快– 分析系统架构稳定完善
技术专题
技术趋势
• 存储容量飞速增长
• CPU 频率快速增长
• 主流配置中, CPU 数目更多
• 主流配置中,内存更大
技术挑战
• 分析型应用建设风险增加
• 数据量不断增加
• 应用趋向于混合负载
• 实时性要求越来越高
IQ 技术方向
• 改善对整个数据生命周期的支持
• 充分利用硬件新技术
• 降低管理成本
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
Load 性能提升
• 客户端数据加载• Load pass 1 改善• Load pass 2 改善
客户端数据加载
• 真正的 bulk loader– 性能:服务器端 LOAD TABLE + 网络开销
• 安全性– 只需要客户端有数据文件访问权限– 用户不需要访问 server 端文件
• 支持所有的 LOAD 选项• 完整的 LOB 支持• 加载信息记录在客户端• LOAD TABLE … USING CLIENT FILE …
Load 性能提升 Pass 1
• 大部分加载不再使用堆内存( heap memory ),而是使用少量的 IQ cache
• 根据可用资源情况,动态调整 LOAD 操作的资源
Load 性能提升 Pass 2
• 每一个 HG 或者 WD 索引都有多个线程写数据– 每一个 HG 或 WD 索引的数据加载工作会被划分为多
个工作单元,然后分配给多个线程并行执行。• 基于可用的系统资源动态调整资源分配
– 根据系统负载动态调整线程分配和调度。
Load 性能 DEMO
• 数据量 : 10 次增量加载,每次加载 2,000,000 条记录。• Pass 2 加载时间
4
20
7
13
6 6
9
46
22
0
5
10
15
20
25
1 2 3 4 5 6 7 8 9 10
IQ 15 IQ 127
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
In-memory 数据压缩
• 在 6 亿条记录表上的查询 :• select top 100 l_orderkey, sum(l_quantity), max(l_shipdate), count(*)
• from lineitem group by l_orderkey • having sum(l_quantity) > 300
• 查询涉及一个非常大的排序操作:– 在 IQ 15 中,使用 in-memory 提升 25 %的查询速度– IQ 15 使用的 tempspace 大小只有 12.7 的一半
• 9.2 GBytes 12.7
• 4.6 GBytes 15.0
更好的磁盘压缩
• 优点– 更充分使用 cache– 更高的数据压缩比– 更快的查询处理– 分析处理系统的性价比更高
• 特点– 新的 3 位 FP 索引保证高基数列的数据压缩比更大。– In-memory 压缩使多数查询使用更少的资源,更快
速的执行。– 在 join 和 group 操作中使用的哈希对象更小,执行
效率更高。
更好的磁盘压缩 (cont.)
• 当前 FP 索引支持– 压缩的数据 (compressed on disk)
– 1-byte FP 索引, 255 个唯一值– 2-byte FP 索引, 65K 个唯一值
• Sybase IQ 15 3-byte FP 索引, 16M 个唯一值– 进一步巩固了 Sybase IQ 数据压缩的业界领先优势
3FP 索引 DEMO
245.2
152.6
58.8
315.9
102.8
60.9
0
50
100
150
200
250
300
350
数据文件 IQ 12.7 IQ 15
CUST_CODE
PRODUCT_CODE
字段 基数 类型
CUST_CODE 150000 varchar(20)
product_code 550000 varchar(20)
20,000,000 条记录
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
新的并行架构
• 目标 : 在不影响多用户并发查询性能的前提下,提供比 IQ 12.7 更好的查询性能。
• 新的并行处理架构– 允许单个查询动态调整 CPU 的占用率。– 允许单用户的单个查询使用全部的 CPU 资源。– 如果大查询在运行时候,其它用户开始新的查询,原
有的查询可以优雅地释放部分资源,能够为不同用户和查询合理分配资源。
新的并行架构
• 优点– 查询更快。– 单个查询更好利用所有可用 CPU 资源。– 添加 CPU 硬件资源成为提高报表性能的可选方案。
• 特点– 很多查询采用更多的并行处理。
• Join、 Group By 和排序等尤为明显。– 查询优化– 查询计划更友好。
更多并行查询
估算的行数提示
双竖线表示并行处理
连接线的粗细表示数据行数的多少
节点的深度表示最大的线程数
最大线程数提示
更多并行查询 (cont.)
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
更好的子查询性能
• 子查询更快– 子查询可能正是有些用户的痛处。– IQ 15 查询优化器可以转化子查询为快速的基于 join 的查询。
• 性能优化更智能– “Group By” 操作和可以根据数据的具体情况选择更高效的算法。
• 更多谓词可以选用高效的索引– 使用合适的索引加速 where 子句的执行效率。– 在 IQ 15 中,在列上使用复杂的函数能够选用合适的索引运行
( “WHERE RAND(ROWID(T1)) < 0.02” ) 。
更强查询性能 DEMO
select top 10 a.cust_name cust_name, sum(b.sales_amt) sales_amt from d_customer a, sale bwhere a.cust_code = b.cust_code group by a.cust_name order by 2;
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
表空间和分区特性
• 提高扩展性– 使用表空间实现应用数据的逻辑分区– 使用表分区实现表数据分区
• 降低数据运维管理成本– 粒度划分更合理,不局限于数据库和表级别的分区。– 提高数据架构灵活性,方便数据转储到低端存储备份、恢复更快捷
– 支持表空间和表分区级别的数据验证。
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
Sybase Central 特性概述
• 数据库监控能力大幅提升
• 采用并发机制达到最优化性能
• 对数据服务器影响更小
拓扑视图
• MPX环境可视化
• 后台进程按照一定频率检查各个节点状态
•节点状态变化触发自动刷新
• 可视化的命令控制中心
MPX 级性能监控
• 比较 : 比较不同节点上的相同监控指标
• 可配置和持久化监控器的统计指标
• 可以配置时间窗口
• 转化图形显示方式
IQ 15.0 新特性
• Load 性能提升• 3 位 FP 索引• 新的并行架构• 更好的子查询性能• 表空间和分区• Sybase Central• Multiplex 架构• 安全性
多个写节点 和 INC
Parallel Read/Write
Parallel Read Only
Coordinator
NodeShared Main
IQ Store
Inter Node Communication
Inter Node Communication
ReaderNode(s)
Writer
Node(s)
• 多个写节点
• 任何一个写节点都可更改数据 .
• 通过 Multiplex Global Transaction 架构允许共享数据的并行读写 .
小结
• Sybase IQ 总是在查询性能竞争中胜出。
• Sybase 15 新特性巩固了 IQ 在查询性能的领先地位。
讨论