高性能是每一个数据库DBA及开发人员的目标,但通常数据库性能都会因以下两个矛盾关系所限制:
● 从内存中访问数据的速度很快;而磁盘中访问数据的速度很慢。
● 内存空间有限,而通常磁盘空间是充足的。
经常出现的情况就是:共享缓存已满,新请求的数据需覆盖缓存中已经存在的部分数据,而且这种状况会因内存大小的限制频繁地发生。在某些应用下,这已成为制约数据库性能的一个严重的瓶颈。
因此,如果我们可以获得无限大的内存空间,那么数据库的性能将达到一个更高的层次,因为我们不必再为数据在内存中频繁的进出而发愁。
EnterpriseDB企业版的无限缓存(Infinite Cache)技术正是基于这样一种概念,无限缓存现在只在Linux系统中可以获得,它允许EnterpriseDB企业版通过网络访问多个廉价低端服务器的内存,作为缓存服务器。
无限缓存提供了一种"缓存刀片(cache blade)"的架构,使得用户使用低端的硬件设备即可实现缓存共享,而不需使用昂贵高端的服务器。
使用了无限缓存之后,当一个数据块第一次被读取时,数据库把它从磁盘读入共享缓存(shared buffer cache)中,同时也复制到缓存服务器上。如果在之后的一小段时间内,又有新的请求需读取这个数据块,数据库会首先从共享缓存中查找。
这样,如果此数据块被换出共享缓存,数据库还可以从多个缓存服务器上搜索,而不是立即从磁盘上读取。因为一般多个备用缓存服务器的内存,会明显比单个数据库服务器的共享缓存大很多,所以数据块从备用缓存服务器上被找到的概率也会大很多,这也使得数据的访问比从磁盘读取更高效。只有在所有的缓存服务器上都找不到请求的数据时,数据库才会从磁盘上读取。
无限缓存更强大的一点在于,所有这些操作对于应用程序而言都是透明的,也就是说程序开发人员无需在程序中进行任何额外的编码,这也是无限缓存带给我们的好处。
为了进一步增强备用缓存,无限缓存还提供了数据压缩技术。在将数据真正读入缓存服务器之前,根据系统的实际情况把数据以不同的比率进行压缩,压缩技术使得更多的数据能够存放到备用缓存中,同时也减少了网络传输的带宽。
无限缓存还允许您"预热(warm)"缓存服务器。也就是说选中的表,不管带索引的还是不带索引的,可以在应用程序启动前预先加载到备用缓存中来。如果我们预先知道应用程序将会使用哪些表,那么缓存服务器的预热将会明显地加快数据库的访问。
由于无限缓存的原理是尽可能多地将已读过的数据保存在备用缓存中,因此对于那些频繁访问某些相同数据的应用来说,无限缓存能给他们带来更多的性能提升。下图比较了两种不同的应用--一种是应用中包含了部分update操作,一种是只读的应用。对于只读应用,无限缓存带给数据库更明显的性能提升。
EnterpriseDB Infinite Cache无限缓存提供了如下的特性:
● 使用廉价的硬件设备作为缓存刀片来增加内存,控制扩展的成本。
● 对应用程序是透明的,无需任何额外编码。
● 提供了不同级别的数据压缩,以将更多的数据压入内存,也减少了网络带宽。
● 将需要的表、索引预加载到缓存中,这样在使用中不需要等待加载,便可以立即获得性能的提升。
● 提供工具来获得各个缓存的统计数据以更好地调整数据库的性能。
分享到:
相关推荐
### EnterpriseDB剑指Hadoop:优化数据处理 #### 一、EnterpriseDB简介及市场定位 EnterpriseDB(简称EDB)是一家专注于提供基于开源数据库PostgreSQL的企业级解决方案和服务的公司。在全球范围内,MySQL、...
总结来说,合理利用二级缓存技术,如EnterpriseDB的Infinite Cache,是提升数据库性能的有效手段,它解决了内存与硬盘速度差异的问题,通过透明化操作简化了系统管理,并且具有高度的可扩展性,是应对现代数据库性能...
总结而言,《PostgresPlus Advanced Server 性能特性指南》详细介绍了如何通过 Infinite Cache、异步预取、Dynatune 以及 DRITA 等关键技术来提升数据库系统的整体性能。同时,通过查询优化器标记,用户还可以进一步...
It's open source of database. Introduction of Enterprisedb
1. **Oracle兼容特性**:详细介绍EnterpriseDB如何模仿Oracle的语法、函数、存储过程、数据类型等,以便于Oracle开发者能够无缝过渡到EnterpriseDB环境。这可能包括SQL语法的对应关系、PL/PGSQL与PL/SQL的相似之处...
enterprisedb 安装包,part1,总格part3,求过
EnterpriseDB是PostgreSQL的一个分支,在PostgreSQL基础上,针对企业级应用进行了专门的优化,同时,增加了一系列如动态 性能调优(DynaTune)、EDB Loader、高效批量SQL处理等高级特性;在众多功能亮点中,...
EnterpriseDB 8.3版本的发布带来了新的功能和解决方案,如Infinite Cache(内存缓存性能扩展集群)、Replication Server(本地/远程备份服务器)和PostGIS(地理信息系统模块),这些功能有助于提升系统的性能和扩展...
EnterpriseDB安装_64[归纳].pdf
【PostgreSQL平台新特性介绍】 PostgreSQL是一种强大的开源关系型数据库管理系统,持续不断地进行技术创新,引入新特性以提升性能和易用性。本篇将详细探讨PostgreSQL平台的几个关键新特性,包括SQL执行优化、配置...
**EnterpriseDB Oracle兼容性开发者指南**是一份详尽的技术文档,旨在帮助开发人员将Oracle数据库的应用程序迁移到EnterpriseDB的产品——Postgres Plus Advanced Server上。该文档强调了Oracle到EnterpriseDB移植...
EnterpriseDB 数据库,EDB:二等布工作室的简称。网址为erdengbu简称为edb。其相关软件成为二等布软件或是EDB软件。二等布工作室主要以免费软件和共享软件为主,属于个人开发。可以定做软件,许多软件可以免费升级。
EDB是基于postgresql的基础上的数据库,但是可以兼容oracle语法。
EnterpriseDB产品及解决方案PPT,搞点分啊
EnterpriseDB是PostgreSQL的一个分支,在PostgreSQL基础上,针对企业级应用进行了专门的优化,同时,增加了一系列如动态 性能调优(DynaTune)、EDB Loader、高效批量SQL处理等高级特性;在众多功能亮点中,...
EnterpriseDB是PostgreSQL的一个分支,在PostgreSQL基础上,针对企业级应用进行了专门的优化,同时,增加了一系列如动态 性能调优(DynaTune)、EDB Loader、高效批量SQL处理等高级特性;在众多功能亮点中,...
enterprisedb 安装包,part2,总格part3,求过
EnterpriseDB是PostgreSQL的一个分支,在PostgreSQL基础上,针对企业级应用进行了专门的优化,同时,增加了一系列如动态 性能调优(DynaTune)、EDB Loader、高效批量SQL处理等高级特性;在众多功能亮点中,...
EnterpriseDB是PostgreSQL的一个分支,在PostgreSQL基础上,针对企业级应用进行了专门的优化,同时,增加了一系列如动态 性能调优(DynaTune)、EDB Loader、高效批量SQL处理等高级特性;在众多功能亮点中,...
EnterpriseDB是PostgreSQL的一个分支,在PostgreSQL基础上,针对企业级应用进行了专门的优化,同时,增加了一系列如动态 性能调优(DynaTune)、EDB Loader、高效批量SQL处理等高级特性;在众多功能亮点中,...