Caché数据库及其特性

您所在的位置:网站首页 cache怎么发音 Caché数据库及其特性

Caché数据库及其特性

2024-07-17 02:10| 来源: 网络整理| 查看: 265

1. 何为Caché?

Caché是一款高性能对象数据库,其在国内外医疗行业及其他特定需求行业有着广泛的应用和前景,本文中将会对该数据库的主要特性进行一个整体浏览。

1.1. 独一无二的架构

Caché的强大来源于其独一无二的架构设计。在核心,Caché数据库引擎提供了整套服务——包括数据存储,并发管理,事务和进程管理——这些都是构建复杂数据库管理系统所必须的。可以将Caché引擎认为一个强大有力的数据库工具包。通过该工具包,Caché实现了一款完整的对象关系数据库管理系统。

该架构的好处是多方面的:

1)对象和关系数据库系统可以非常高效的与数据库引擎直接对话;没有对象关系中间件或SQL到对象的桥梁技术。

2)数据库与其物理实现的逻辑分离,使得应用可以彻底重新配置部署而无需改变应用逻辑。

3)因为数据库引擎接口是开放的,其特性可以在需要时直接使用。这可以从构建自己定制的数据库管理系统,到为性能关键的应用进行有目标的优化。

4)对未来的平台: Caché架构可以做到增强未来数据库引擎而不会影响现有应用。例如:Caché4.1版本引入了全新的物理数据结构,戏剧性的提高了扩展性和性能,其不仅无需改变现有应用,也无需对Caché对象关系系统做出改变。当新技术出现时,Caché可以作为内部、高性能组提供支持,而对现有应用没有影响。

1.2. 可进行关系访问的高性能对象数据库

Caché被设计来超越关系模型限制,同时,为数以千计的关系数据库应用提供演进升级路径,也为市场上的很多基于SQL的报表工具提供支持。

除了其为一款高性能对象数据库,Caché也是一款具备完全特性的关系数据库。其中的所有数据作为真正关系表可用,且可通过ODBC,JDBC或对象方法通过标准SQL进行查询和修改。因为底层强大的Caché数据库引擎,相信Caché是目前可用的最快速,最可靠和最具扩展性的关系数据库。

此外,Caché其特性超越了关系数据库的限制 ,而其还支持数据的标准关系视图。这些特性如下:

1)能够建立对象数据模型(每个具备自动创建且同步的内部关系描述),同时,消除了数据库和面向对象应用环境间的阻抗不匹配,也减少了关系面模型的复杂性。

2)一个简单、基于对象的并发模型。

3)用户定义的数据类型。

4)数据库引擎内能利用方法和继承,包括多态。

5)SQL处理对象个性和关系的对象扩展。

6)单个应用内能混用SQL和基于对象的访问,分别在最合适的场景使用它们。

7)为了确保应用的最大性能,可以控制用于存储数据的物理设计和聚集(Clustering)。

大部分支持对象和关系访问的数据库,只是基于一种提供另一种访问方式,但Caché的SQL和对象方面都是直接访问数据——以便用户可以享受到每种方法的优势。

1.3. 广泛的工具集

Caché提供了广泛的工具集,其中包括:

1)ObjectScript, Caché中使用最多的语言。

2)SQL,MultiValue和Basic的内部实现。

3)开发完善的、内建的安全模型。

4)支持数据库和web应用快速开发的一套技术和工具。

5)内置的,基于对象的XML和web服务支持。

6)设备支持(像文件,TCP/IP,打印机)。

7)通过Java, JDBC, ActiveX, .NET, C++, ODBC, XML, SOAP, Perl, Python等更多自动互通。

8)常用Internet协议支持:POP3, SMTP, MIME, FTP等。

9)最终用户的可重用的用户门户。

10)非结构化数据分析支持。

11)商业只能(BI)支持。

12)内建的测试工具。

1.4. Caché现状

Caché被广泛应用于世界范围内,从单用户嵌入系统到成千上万并发用户的企业范围的多服务器安装,以及州级和国家级的应用。

用Caché构建的小部分应用示例包括:

1)作为大型医疗保健网络的应用平台,运行数百个危重患者相关的应用程序。该网络包括一套作为数据和应用服务器的Caché系统,其拥有超过30000的客户端机器。

2)作为大型金融机构的基于java的企业消息传递系统的数据服务器。选择Caché是因为其性能及其传统关系库不可能实现的执行定制化任务的能力。

3)作为一个基于SQL的OLTP(在线事务处理)系统,用于一个拥有超过1400并发用户的大型政府组织。Caché是一个其他关系产品执行失败时的一个立即可用的替换(无需应用改变)。

4)作为一个用于领先科技大学在线教育系统的对象数据库和web应用框架。选择Caché 因为其快速开发(应用必须在三个月内构建完成),对象能力,及其无需应用重构的扩展能力。

5)作为一款对象数据库,用于跟踪世界锦标赛中职业运动员的实时位置和速度。选择Caché是因为其性能(与领先对象和关系数据库比较)及其内部C++接口。

6)作为一个数百万用户的主web站点的分布式SQL数据引擎。该站点使用一套成本高效的基于Linux的服务器,并使用Caché分布式数据管理提供可扩展的,无中间件或web缓冲的个性化站点。该系统的硬件成本(4台现成的Linux机器)不到“Internet应用的领先数据库”报价的10%。

2. Caché数据库引擎

Caché的核心是Caché数据库引擎。该数据库引擎在性能、并发性、可扩展性和可靠性方面进行了高度优化。有一个高度的平台特定优化,以在每个支持的平台上获得最大的性能。

Caché是一个功能齐全的数据库系统;它包括运行关键任务应用所需的所有特性(包括日志,备份和恢复,以及系统管理工具)。为了帮助降低运营成本,Caché被设计成需要比其他数据库产品少得多的数据库管理。大多数已部署的Caché系统没有数据库管理员。

数据库引擎的主要特性将在下面部分描述。

2.1. 事务性多维存储

Caché中的所有数据都存储于稀疏的多维数组中。与典型OLAP(在线分析处理)产品使用的多维数组不同,Caché在其多维结构中支持事务处理操作(插入、更新、锁定、事务)。另外,与大多数OLAP引擎不同,这些多维结构的大小不受可用内存的限制。相反,Caché包含一个先进、高效的数据缓存。

由于Caché数据本身是变长的,且存储于稀疏数组中,因此Caché通常需要不到关系数据库所需空间的一半。除了减少磁盘需求,紧凑的数据存储还增强了性能,因为通过一个I/O可以读或写更多数据,且可以更有效地缓存数据。

多维数组为应用程序如何存储其数据提供了很大的灵活性。例如,一组密切相关的对象,假如一个Invoice对象及其对应的LineItem对象,可以很容易地进行配置,以便LineItem对象与Invoice对象在物理上进行集群,以实现高效的访问。

与传统关系数据库使用的二维结构相比,事务性多维存储的灵活性使Caché具有显著的优势:正是这种灵活性使Caché能够成为高性能的SQL、对象和XML数据库,而无需折中。这也意味着Caché应用程序为未来的技术变化做好了更好的准备。

2.2. 映射

使用一个称为映射的独一无二的特性,可以指定如何将一个或多个数组(或数组的一部分)中的数据映射到一个物理数据库文件。这种映射是数据库管理任务,且无需更改类/表定义或应用逻辑。此外,映射可以在特定的稀疏数组内完成;可以将一个范围的数值映射到一个物理位置,同时将另一个范围的数值映射到另一个文件,磁盘驱动器,或者甚至映射到另一个数据库服务器。这使重新配置Caché应用程序(像为了扩展)成为可能。

​​​​​​​2.3. 进程管理

进程是运行在Caché服务器上的Caché虚拟机的一个实例。典型的Caché服务器可以同时运行数千个进程,具体取决于硬件和操作系统。每个进程都可以直接有效地访问多维存储系统。

Caché虚拟机执行的指令(称为P-code)针对数据库、I/O和事务处理和数据仓库应用通常需要的逻辑操作进行了高度优化。

​​​​​​​2.4. 锁管理

为支持并发数据库访问,Caché包含了一个功能强大的锁管理系统。

在拥有数千用户的系统中,减少竞争进程间的冲突对于提供高性能至关重要。最大的冲突发生在希望访问相同数据的事务之间。Caché提供了如下特性来缓解这些冲突:

1)原子操作:为了消除典型的性能热点,Caché支持许多原子操作,即其无需应用级锁。一个例子是其能原子地为对象/行标识分配惟一值(关系应用中的一个常见瓶颈)。

2)逻辑锁:Caché执行更新时并不锁定整个数据页。因为大多数事务需要对少量数据进行频繁访问或更改,Caché支持可按每个对象(行)取出的粒度逻辑锁。

3)分布式锁:分布式数据库配置中(见下一主题),系统自动支持分布式锁。

2.5. 分布式数据管理



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3