- 浏览: 578262 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
小网客:
噱头 没实际意义
【互动出版网】11.11购物狂欢节重磅大促,免费领万千优惠券 -
tongchuang123:
这是要出书了吗:o
微信控 控微信 -
韶华无限:
这也可以出本书……
玩转微信(彩印) -
zhukewen_java:
无语了。。。哪天出本《玩转QQ》?
玩转微信(彩印) -
yaying:
我只见过MySQL Cookbook中文版
jQuery Cookbook中文版
《内存数据管理(第2版)》
基本信息
原书名: In-Memory Data Management:Technology and Applications,Second Edition
原出版社: Springer; 2nd ed. 2012 edition
作者: (德)哈索 亚历山大.蔡尔
译者: SAP
出版社:清华大学出版社
ISBN:9787302292562
上架时间:2012-8-9
出版日期:2012 年8月
开本:16开
页码:291
版次:1-1
所属分类: 计算机 > 数据库 > 数据库存储与管理
更多关于 》》》《内存数据管理(第2版)》
内容简介
书籍
计算机书籍
试想您住在美国的一个大城市里。现在,想象一下每次您需要一杯水时,您不是去厨房取,而是需要先开车到机场,接着坐上飞机飞到德国,然后在那拿起一杯水。从现代CPU 的角度来看,访问内存数据就如同从厨房取一杯水。而访问计算机硬盘中的数据就好比飞到德国去取一杯水。在过去,主存的成本高昂,于是必须飞到德国去取水。然而,过去几年,主存每 MB 的成本显著降低,最终使得从厨房取一杯水成为有成本效益且更加便利的选择。
这种访问时间上的巨大差别对于企业级应用有重大影响。在过去由于花费时间过长而未曾考虑过的事情现在已经成为可能,这有助于企业将之前以臆测和猜测为主的工作转变为切实的洞察力。
本书中所述的内存计算革命不仅仅是指将数据存储于内存中,以便更快地进行访问。我们还阐述了 IT 行业其他两大趋势的融合:(a)多核CPU 的出现以及软件并行化的必要性(b) DRAM 访问延迟造成的阻塞,要求软件巧妙地平衡CPU和内存活动;需要利用以上两点以真正挖掘潜在性能优势。我们介绍的内存数据管理愿景的另一个重要方面是,底层数据库中数据存储方式的变化。正如下面的章节所述,这与我们所关注的企业级应用的关系尤为密切。内存数据管理的作用就在于将所有这些联系在一起。
内存数据管理与列存储相结合
我们的经验表明,许多企业级应用利用数据库的方式相似。在执行期间,他们处理大量数据行,但最为关键的是,只有表中的一小部分数据列可能会对某项特定查询有用。本书中所述的列存储模型允许仅读取所需列,而表中其余部分则可以忽略。传统的行优先模型则不同,必须访问表中的所有列,即便是对结果来说不必要的列也在访问范围之内。
列存储模型也意味着将给定列中的元素存储在一起。而在行优先模型中,给定列中的数据与行中的其他数据存储在一起,因而企业级应用常见的聚集操作在列存储模型中的速度要比在行优先模型中快得多。
多核和多台计算机上并行化的实现
单个 CPU内核的速度不会再快些,而 CPU 内核的数量却仍有望每 18 个月翻一番。因此利用多核 CPU 的并行处理能力对未来的软件开发至关重要。正如之前所述,内存列存储将给定列中的数据一起存储在内存中,从而便于分配一个或多个内核来处理单列。这称为垂直分片。
同时,也可将表分成数据行集合,然后再分配至不同的处理器,这一过程称为水平分片。水平分片在数据量持续增加时尤为重要,且在数据仓库应用程序的并行化中取得了部分成功。不但在单个多核计算机上,而且在群集或数据中心中的多台计算机上均可应用这两类方法。
利用压缩技术提高性能并节省空间
数据压缩技术利用数据冗余性和有关数据领域的知识。压缩尤其适合于企业数据管理场景中的列存储,因为同一列中的所有数据(a)具有相同的数据类型(b)在很多情况下,有很少数量的唯一值,比如在国家列或状态列中。在列存储中使用压缩技术有两个原因:节省空间和提高性能。
空间的有效利用对于内存数据管理尤为重要,这是因为,即使主存成本已大幅下降,然而与磁盘相比,它相对而言依然更加昂贵。由于在列中进行了压缩,因此与空间消耗相关的信息密度得到了提高。这样一来,每次便可加载更多的相关信息,从而提高了性能。与行存储相比,它需要的加载操作更少。因为在行存储中,对于查询来说不相关的列也被加载,但却没有被利用。
结论
内存数据管理不仅仅是一项技术,也是软件开发的另一种思路。我们必须考虑基础硬件因素,比如到主存或磁盘的访问时间以及通过多核 CPU 可能实现的并行化。考虑到新硬件环境,我们必须编写能直接的充分利用它的软件。从积极的角度来看,对于企业级应用开发人员,本书为针对所有这些问题的数据库层的开发奠定了技术基础。然而从消极的角度来看,数据库本身并不能解决所有问题。开发人员一定要了解底层的软件和硬件知识,以便充分利用潜在的性能优势。本书旨在帮助建立这方面的理解。
目录
第一部分企业级应用的转折点
第 1 章 可取性、适用性、可行性——内存计算技术的影响
1.1 实时信息——随时随地获取任何信息
1.1.1 思想速度般的响应
1.1.2 实时分析和动态计算
1.2 最新硬件趋势的影响
1.2.1 企业级应用的数据库管理系统
1.2.2 主存是新磁盘
1.2.3 从最大化 cpu 速度到多核处理器
1.2.4 增加的 cpu 和主存之间的带宽
1.3 通过内存数据管理降低成本
1.3.1 总体拥有成本
1.3.2 企业系统中的成本因素
1.3.3 内存计算的性能促进成本降低
1.4 结论
第 2 章 企业级应用为何如此繁杂零乱
2.1 当前的企业级应用
2.2 企业级应用范例
2.3 企业级应用架构
2.4 企业级应用中的数据处理
2.5 企业级应用中的数据访问模式
2.6 结论
第 3 章 sanssoucidb——企业内存数据库系统的未来蓝图
3.1 重点关注多核和主存
3.2 内存数据库系统设计
3.3 sanssoucidb中数据的组织与访问
3.4 结论
第二部分 sanssoucidb:通过内存计算技术提供单一数据源
第 4 章 sanssoucidb 的技术基础
4.1 了解内存层次结构
4.1.1 主存简介
4.1.2 主存层次结构的组织结构
4.1.3 内存层次结构的趋势
4.1.4 从程序员的角度看待内存
4.2 使用多核和跨服务器进行并行数据处理
4.2.1 通过添加资源增加容量
4.2.2 并行系统架构
4.2.3 企业级应用数据库的并行化
4.2.4 sanssoucidb 中的并行数据处理
4.3 通过压缩提高速度和减少内存消耗
4.3.1 轻量级压缩
4.3.2 重量级压缩
4.3.3 数据相关的优化
4.3.4 压缩感知的查询执行
4.35 真实数据的压缩分析
44 列优先、行优先、混合方式——优化数据布局
4.4.1 垂直分区
4.4.2 寻找最佳布局
4.4.3 混合型数据库面临的挑战
4.4.4 应用情景
4.5 虚拟化的影响
4.5.1 分析型工作负载的虚拟化
4.5.2 数据模型和基准测试环境
4.5.3 虚拟执行与本地执行
4.5.4 使用并行虚拟机减少响应时间
4.6 技术概念汇总
4.7. 结论
第 5 章 sanssoucidb 中数据的组织与访问
5.1 用于访问内存数据的 sql
5.1.1 sql 的角色
5.1.2 查询的生命周期
5.1.3 存储过程
5.1.4 数据组织和索引
5.1.5 任何属性均可作为索引
5.2 凭借数据老化提高性能
5.2.1 主动和被动数据
5.2.2 老化过程在实现上的考虑
5.2.3 销售线索水平分区的用例.
5.3 高效检索业务对象
531 从数据库中检索业务数据
532 对象数据指南
5.4高效执行业务函数
5.4.1区分业务函数与应用程序函数
5.4.2比较业务函数
5.5 处理读优化数据库中的数据更改
5.5.1 对 sanssoucidb 的影响
5.5.2 合并过程
5.5.3 通过单列合并提高性能
5.6 只添加、不删除,保持历史记录的完整性
5.6.1 “只插入”实施策略
5.6.2 通过“只插入”操作最小化锁定
5.6.3 对企业级应用的影响
5.6.4 “只插入”方法的可行性
5.7支持事务数据分析
5.7.1 动态聚集
5.7.2 无星型模式的分析查询
5.8不停机扩展数据布局
5.8.1 行存储中的重组
5.8.2 列存储中的动态附加
5.9利用高级日志技术提高业务恢复能力
5.9.1 列存储中的恢复
5.9.2 行优先数据库的差分日志记录
5.9.3 提供高可用性
5.10对混合负载进行优化调度的重要性
5.10.1 调度简介
5.10.2 混合负载的特征
5.10.3 运行时间较短与较长任务的调度
5.11结论
第三部分 内存计算技术所带来的改变
第 6 章 应用程序开发
6.1 优化 sanssoucidb 的应用程序开发
6.11 内存应用程序的编程模式
6.12 应用程序架构
6.13 将业务逻辑移到数据库中
6.14最佳实践
6.15 视图的图形创建
6.2 创新的企业级应用
6.21 全新分析应用程序
6.22 运营处理帮助简化日常业务
6.23 创新用户界面让信息触手可及
6.24 合并分析与文本搜索
6.25 基本搜索类型
6.26 企业搜索功能
6.3 结论
第 7. 章 即将呈现的真正的商务智能系统
7.1 运营数据分析
7.1.1 过去的商务智能
7.1.2 如今的商务智能
7.1.3 将分析从日常运营中分离出来的弊端
7.1.4 为分析系统设计的专用数据库
7.1.5 分析和查询语言
7.1.6 促进商务智能变化的驱动因素
7.1.7 未来的商务智能
7.2 改变.之后如何评估数据库
7.2 企业计算基准测试
7.2.2 为混合负载量身定制的新基准测试要求
7.2.3 日常运营和分析的新基准测试
7.3 结论
第 8 章 在云计算中扩展 sanssoucidb
8.1 什么是云计算
8.2 云应用程序的类型
8.3 从提供商的角度看云计算
8.3.1 多租户
8.3.2 低端硬件与高端硬件
8.3.3 复制
8.3.4 凭借内存计算技术提高能源效率
8.4 结论
第 9 章 内存计算技术革命已拉开序幕
9.1 无风险过渡到内存数据管理
9.1.1 内存系统和传统系统并肩工作
9.1.2 系统整合和可扩展性
9.2 客户验证点
9.2.1 柏林夏洛特医科大学
9.2.2 hilti
9.3 结论
关于作者
参考文献
术语表
索引
本图书信息来源:中国互动出版网
发表评论
-
【互动出版网】2013双12全场科技类图书6.5折封顶
2013-12-12 16:30 1135【互动出版网】2013双12全场科技类图书6.5折封顶 ... -
C#编程兵书
2013-08-28 17:43 1198《C#编程兵书》 基本信息 作者: 张志强 胡君 丛书 ... -
C++编程兵书
2013-08-28 17:24 1216《C++编程兵书》 基本 ... -
HTML+CSS网站开发兵书
2013-08-28 17:04 1396《HTML+CSS网站开发兵书 ... -
Java编程兵书
2013-08-27 17:57 1224《Java编程兵书》 基本 ... -
网络运维与管理2013超值精华本
2013-08-27 17:44 1337《网络运维与管理2013超值精华本》 基本信息 作者: ... -
HTML5游戏开发进阶指南
2013-08-27 17:26 1317《HTML5游戏开发进阶指 ... -
ASP.NET MVC 4高级编程(第4版)
2013-08-26 17:58 1087《ASP.NET MVC 4高级编程(第4版)》 基本信息 ... -
嗨翻C语言
2013-08-26 17:40 1170《嗨翻C语言》 基本信息 作者: (美)David Gr ... -
C++ Primer中文版(第5版)
2013-08-26 17:20 1132《C++ Primer中文版(第5版) 》 基本信息 作 ... -
云计算原理与实践
2013-08-20 17:02 573《云计算原理与实践》 基本信息 作者: 游小明 罗光春 ... -
微信公众平台搭建与开发揭秘
2013-08-20 16:53 990《微信公众平台搭建与开发揭秘》 基本信息 作者: 易伟 ... -
精通iOS开发(第5版)
2013-08-20 16:25 1033《精通iOS开发(第5版)》 基本信息 原书名:Begi ... -
企业门户(Portal)项目实施方略与开发指南
2013-08-20 16:12 957《企业门户(Portal)项目实施方略与开发指南》 基本信 ... -
Java开发手册
2013-08-20 15:56 940《Java开发手册》 基本信息 作者: 桂颖 谷涛 出 ... -
Unity3D手机游戏开发
2013-08-08 17:33 1127《Unity3D手机游戏开发》 基本信息 作者: 金玺曾 ... -
矛与盾:黑客攻防命令大曝光
2013-08-08 16:30 763《矛与盾:黑客攻防命令大曝光》 基本信息 作者: awk ... -
视觉繁美:信息可视化方法与案例解析
2013-08-08 16:10 921《视觉繁美:信息可视 ... -
精益设计: 设计团队如何改善用户体验
2013-08-08 15:55 764《精益设计: 设计团队如何改善用户体验》 基本信息 原书 ... -
云计算与OpenStack(虚拟机Nova篇)
2013-08-08 15:19 944《云计算与OpenStack(虚拟机Nova篇)》 基本信 ...
相关推荐
《数据结构(C++版)王红梅版(第2版)》是一本深度探讨数据结构理论及其在C++编程语言中实现的专著。这本书是针对计算机科学和技术专业学生,以及对数据结构有深入需求的程序员设计的。王红梅教授通过清晰的解释和...
在《数据结构(C语言版)(第2版)课后习题答案》这份文档中,作者李冬梅详细解答了关于数据结构的各种问题,覆盖了从基本概念到具体实现的多个层面。 首先,我们需要理解数据结构的基本概念。数据是计算机处理的对象,...
本资源“数据结构(C语言版)(第2版)PPT.zip”是由著名计算机教育家严蔚敏老师编写的第二版教材配套PPT,对于那些想要深入理解和掌握算法的学者来说,是一份非常宝贵的资料。 在数据结构的学习中,我们主要会接触...
这份"数据结构(第2版)课件"来自于清华大学,是教学资源中的瑰宝,适合计算机科学专业的学生或者对数据结构有兴趣的学习者使用。下面我们将深入探讨其中涉及的一些关键知识点。 1. **绪论** (第1章 绪论.ppt) - ...
2. **内存创建(分配)**: 使用`malloc()`函数时,我们需要提供所需内存的字节数。例如,要分配一个整型数组,我们可以写`int *arr = (int*) malloc(sizeof(int) * array_size);`。这里的`sizeof(int)`获取一个...
本资源“数据结构(C语言版)(第2版)算法演示动画”提供了对这一主题的生动解释,通过C语言实现的数据结构示例和配套的动画,帮助学习者深入理解各种数据结构的工作原理。 首先,我们要明白数据结构的基本概念。...
这份“数据结构(第2版)ppt.zip”压缩包显然是一份用于教学的资源包,包含了数据结构课程的多部分讲解内容。每个部分可能涵盖不同的主题,如数组、链表、树、图、栈、队列、散列表等基本数据结构以及它们的操作。 ...
在《数据结构(C语言版)(第2版)》中,主要讨论了数据结构的逻辑结构和存储结构,以及它们之间的关系。这里我们将详细探讨这些概念。 首先,我们要理解数据结构的基本概念。数据是计算机处理的对象,可以是数字、文本...
《数据结构(C语言版)(第2版)》是一本专为学习者设计的教材,它通过PPT课件的形式,以直观易懂的方式呈现复杂的概念。 数据结构主要包括以下几个方面: 1. 线性结构:这是最基本的数据结构,包括数组和链表。...
《数据结构基础(C语言版)(第2版)》是全球广受欢迎的计算机科学教材之一,专注于数据结构这一核心的计算机科学主题。这本教材深入浅出地讲解了如何组织和管理计算机内存中的数据,以便高效地进行访问和操作。在...
陈越老师的《数据结构》第二版是一本深受学生和专业人士欢迎的教材,其配套的源代码为学习者提供了实践和理解数据结构算法的宝贵资源。在这个压缩包中,包含了书中的所有程序源代码,分为.txt(伪代码)和.c(C语言...
此压缩包包含的《数据结构(C语言版)(第2版).pdf》文件提供了完整的课后习题解答,对深入理解和掌握数据结构的概念、算法和实现方法大有裨益。 1. **基本概念**:数据结构是研究数据的逻辑组织、存储方式和操作的...
本资源聚焦于数据结构的C++实现,特别是针对叶核亚编著的《数据结构(C++版)(第2版)》一书中的例题进行解析。 在C++编程中,数据结构的实现通常涉及STL(Standard Template Library)的使用,如vector、list、...
《数据结构与算法分析_Java语言描述(第2版) 源代码》是一本深入探讨数据结构和算法的书籍,其源代码是学习和理解书中理论的重要实践资源。这本书籍主要面向计算机科学专业的学生以及对算法有深入研究需求的开发者。...
《深入理解Linux内核》是Linux开发者和爱好者的重要参考资料,其中第八章专注于内存管理这一核心主题。内存管理在操作系统中起着至关重要的作用,它决定了系统如何高效地分配和使用有限的内存资源,以满足各个进程的...
数据结构是计算机科学中的基石,它研究如何在内存中组织和管理数据,以便高效地进行存取和操作。本书涵盖了各种常见数据结构,如数组、链表、栈、队列、树(包括二叉树、平衡树如AVL树和红黑树)、图以及哈希表等。...
《数据结构(用面向对象方法与C++语言描述)(第2版)》是由殷人昆教授编写,清华大学出版社出版的一本经典教材。这本书详细介绍了数据结构这一核心计算机科学概念,特别强调了使用面向对象的方法和C++编程语言来...
李冬梅的《数据结构(C语言版)(第2版)》提供了全面的理论知识和习题解答,帮助读者深入理解数据结构的核心概念。 在书中,首先介绍了“绪论”,解释了数据结构的基础概念: 1. 数据:指所有能输入到计算机并被...
《数据结构(C语言版)(第2版)》是一本专注于这一主题的教材,PPT形式的资料通常包含清晰的图表和简洁的讲解,方便学习者理解和掌握。 本资料主要涵盖了以下知识点: 1. **绪论**:介绍数据结构的基本概念,包括...
本资源“数据结构(C语言版)(第2版)-算法演示动画.rar”是针对数据结构学习的一份宝贵资料,特别是对于那些希望通过C语言来理解和实现数据结构的初学者。 C语言是一种强大的编程语言,它提供了低级内存管理和...