什么是内存数据库

什么是内存数据库,第1张

内存数据库系统对于嵌入式开发来说是特别有用的, IMDS 中每个保存过程缩小了覆盖区 智能连接设备的增长速度正越来越快。这种装置不管是在家庭、口 袋(pocket)或者是内置于工业通信和传送系统,都已经发展为包含了 强大的CPU和完善的嵌入式系统软件。在这种设备中日益流行的一种软 件是数据库管理系统(DBMS)。虽然对桌面电脑或者服务器来说,这种 软件已经是相当成熟了,但数据库是最新才应用到达嵌入式系统的。像 所有进入新环境的生物体一样,数据库也必须经历一个发展过程。一种 新型的DBMS,内存数据库系统(IMDS),代表了DBMS应用到嵌入式 系统的最新步伐。 为什么嵌入式系统开发人员会转向数据库呢?市场竞争使得像机顶 盒、网络开关和消费者电子产品这样的设备需要变得越来越智能。要支 持扩展功能集,应用程序通常必须管理大容量的更复杂的数据。因此, 许多设备开发人员发现他们正致力于自己开发数据管理方案。在应用需 求增长时,普通的数据管理方案维护和扩展起来是特别困难的。 另外,标准化的趋势,商用现货(ommercial off-the-shelf,COTS) 嵌入式 *** 作系统,远离许多私有系统的不完整环境,从而增强数据库的 能力。广泛使用的 *** 作系统的出现,比如嵌入式Linux,形成了一个用 户群体,他们轮留进行数据库和其他工具开发(包括商业的和非商业 的),以不断增强开发平台。 因此,设备开发人员开始转向商业数据库,但已有的嵌入式DBMS 软件还不理想。嵌入式数据库最初出现在10年前,当时用于支持商业系 统,带有包括复杂缓存逻辑和异常终止恢复等功能。但在一个设备上, 例如,在一个机顶盒或者下一代传真机中,这些能力通常毫无必要,并 且应用程序容易出现超出可用内存和CPU资源的现象。 另外,建立传统数据库时是将数据存储在磁盘上。作为一种机械过 程,磁盘的I/O是非常昂贵的,尤其是要取得高性能的话。对于嵌入式 系统来,因为需要实时执行,因此相对而言,传统数据库就太慢了。 内存数据库出现的目的特别针对于满足嵌入式系统的性能需求和资 源能力。正如其名字所暗示的,IMDS完全驻留在内存中,它们不会存储 到磁盘上。

内存数据库在传统的数据库表中,由于磁盘的物理结构限制,表和索引的结构为B-Tree,这就使得该类索引在大并发的OLTP环境中显得非常乏力,虽然有很多办法来解决这类问题,比如说乐观并发控制,应用程序缓存,分布式等。但成本依然会略高。而随着这些年硬件的发展,现在服务器拥有几百G内存并不罕见,此外由于NUMA架构的成熟,也消除了多CPU访问内存的瓶颈问题,因此内存数据库得以出现。内存的学名叫做Random Access Memory(RAM),因此如其特性一样,是随机访问的,因此对于内存,对应的数据结构也会是Hash-Index,而并发的隔离方式也对应的变成了MVCC,因此内存数据库可以在同样的硬件资源下,Handle更多的并发和请求,并且不会被锁阻塞,而SQL Server 2014集成了这个强大的功能,并不像Oracle的TimesTen需要额外付费,因此结合SSD AS Buffer Pool特性,所产生的效果将会非常值得期待。SQL Server内存数据库的表现形式在SQL Server的Hekaton引擎由两部分组成:内存优化表和本地编译存储过程。虽然Hekaton集成进了关系数据库引擎,但访问他们的方法对于客户端是透明的,这也意味着从客户端应用程序的角度来看,并不会知道Hekaton引擎的存在。如图1所示

数据库作为承载新一轮技术革命的基础物料,业界普遍认为,数据库技术是支撑人工智能、云计算、区块链等新技术的根本,各种利用数据分析而来的应用场景,都是通过庞大数据资源进行计算的结果,价值不言而喻,如柏睿数据为代表的新兴数据智能企业,依靠自研技术为中国赢得2项数据库国际标准制定权,我们也能看到中国的自主核心技术越来越受到国内外市场的认可,百度有相关资讯!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6915358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存