引言 1
第一部分 企业级应用的转折点 7
第1章 可取性、适用性、可行性:内存计算技术的影响 7
1.1 实时信息:随时随地获取任何信息 7
1.1.1 思维般快速的响应 9
1.1.2 实时分析和动态计算 10
1.2 最新硬件趋势的影响 11
1.2.1 企业级应用的数据库管理系统 11
1.2.2 主存是新磁盘 14
1.2.3 从最大化CPU速度到多核处理器 15
1.2.4 增加的CPU和主存之间的带宽 18
1.3 通过内存数据管理降低成本 21
1.3.1 总体拥有成本 21
1.3.2 企业系统中的成本因素 21
1.3.3 内存计算的性能促进成本降低 22
1.4 结论 24
第2章 企业级应用为何如此繁杂零乱 25
2.1 当前的企业级应用 25
2.2 企业级应用范例 27
2.3 企业级应用架构 29
2.4 企业级应用中的数据处理 30
2.5 企业级应用中的数据访问模式 31
2.6 结论 31
第3章 SanssouciDB:企业内存数据库系统的未来蓝图 33
3.1 重点关注多核和主存 34
3.2 内存数据库系统设计 36
3.3 SanssouciDB中数据的组织与访问 37
3.4 结论 40
第二部分 SanssouciDB:通过内存计算技术提供单一数据源 43
第4章 SanssouciDB的技术基础 43
4.1 了解内存层次结构 43
4.1.1 主存简介 44
4.1.2 内存层次结构的组织结构 47
4.1.3 内存层次结构的趋势 49
4.1.4 从程序员的角度看待内存 50
4.2 使用多核和跨服务器进行并行数据处理 57
4.2.1 通过添加资源增加容量 58
4.2.2 并行系统架构 59
4.2.3 企业级应用数据库的并行化 61
4.2.4 SanssouciDB中的并行数据处理 64
4.3 通过压缩提高速度和减少内存消耗 68
4.3.1 轻量级压缩 69
4.3.2 重量级压缩 73
4.3.3 数据相关的优化 73
4.3.4 压缩感知的查询执行 74
4.3.5 真实数据的压缩分析 74
4.4 列优先、行优先、混合方式:优化数据布局 75
4.4.1 垂直分区 75
4.4.2 寻找最佳布局 79
4.4.3 混合型数据库面临的挑战 82
4.4.4 应用情景 83
4.5 虚拟化的影响 83
4.5.1 分析型工作负载的虚拟化 83
4.5.2 数据模型和基准测试环境 84
4.5.3 虚拟执行与本地执行 84
4.5.4 使用并行虚拟机减少响应时间 85
4.6 技术概念总结 88
4.7 结论 99
第5章 SanssouciDB中数据的组织与访问 101
5.1 用于访问内存数据的SQL 102
5.1.1 SQL的角色 102
5.1.2 查询的生命周期 103
5.1.3 存储过程 103
5.1.4 数据组织和索引 104
5.1.5 任何属性均可作为索引 105
5.2 凭借数据老化提高性能 107
5.2.1 主动数据和被动数据 108
5.2.2 老化过程在实现上的考虑 109
5.2.3 销售线索水平分区的用例 110
5.3 高效检索业务对象 112
5.3.1 从数据库中检索业务数据 113
5.3.2 对象数据指南 113
5.4 高效执行业务函数 115
5.4.1 区分业务函数与应用程序函数 115
5.4.2 比较业务函数 116
5.5 处理读优化数据库中的数据更改 118
5.5.1 对SanssouciDB的影响 119
5.5.2 合并过程 121
5.5.3 通过单列合并提高性能 125
5.6 只添加、不删除,保持历史记录的完整性 127
5.6.1 “只插入”实施策略 128
5.6.2 通过“只插入”操作最小化锁定 129
5.6.3 对企业级应用的影响 133
5.6.4 “只插入”方法的可行性 135
5.7 支持事务数据分析 136
5.7.1 动态聚集 137
5.7.2 无星型模式的分析查询 147
5.8 不停机扩展数据布局 155
5.8.1 行存储中的重组 155
5.8.2 列存储中的动态附加 156
5.9 利用高级日志技术提高业务恢复能力 157
5.9.1 列存储中的恢复 158
5.9.2 行优先数据库的差分日志记录 160
5.9.3 提供高可用性 161
5.10 对混合负载进行优化调度的重要性 162
5.10.1 调度简介 163
5.10.2 混合负载的特征 165
5.10.3 运行时间较短与较长任务的调度 167
5.11 结论 169
第三部分 内存计算技术所带来的改变 175
第6章 应用程序开发 175
6.1 优化SanssouciDB的应用程序开发 175
6.1.1 内存应用程序的编程模式 175
6.1.2 应用程序架构 180
6.1.3 将业务逻辑移到数据库中 181
6.1.4 最佳实践 183
6.1.5 图形化创建视图 184
6.2 创新的企业级应用 187
6.2.1 全新的分析应用程序 187
6.2.2 运营处理帮助简化日常业务 191
6.2.3 创新用户界面让信息触手可及 194
6.2.4 合并分析与文本搜索 200
6.2.5 基本搜索类型 201
6.2.6 企业搜索功能 201
6.3 结论 205
第7章 即将呈现的真正的商务智能系统 207
7.1 运营数据分析 207
7.1.1 过去的商务智能 208
7.1.2 如今的商务智能 211
7.1.3 将分析从日常运营中分离出来的弊端 213
7.1.4 为分析系统设计的专用数据库 214
7.1.5 分析和查询语言 217
7.1.6 促进商务智能变化的驱动因素 219
7.1.7 未来的商务智能 221
7.2 改变之后如何评估数据库 222
7.2.1 企业计算基准测试 223
7.2.2 为混合负载量身定制的新基准测试要求 224
7.2.3 日常运营和分析的新基准测试 226
7.3 结论 230
第8章 在云计算中扩展SanssouciDB 231
8.1 什么是云计算? 232
8.2 云应用程序的类型 233
8.3 从提供商的角度看云计算 235
8.3.1 多租户 236
8.3.2 低端硬件与高端硬件 241
8.3.3 复制 241
8.3.4 凭借内存计算技术提高能源效率 243
8.4 结论 244
第9章 内存计算技术革命已拉开序幕 245
9.1 无风险过渡到内存数据管理 245
9.1.1 内存系统和传统系统并肩工作 246
9.1.2 系统整合和可扩展性 247
9.2 客户验证点 248
9.2.1 柏林夏洛蒂医科大学 250
9.2.2 Hilti 251
9.3 结论 253
关于作者 255
参考文献 257
索引 273
术语表 281
缩写 289