MySQL5.0 Archive 存储引擎 (1) – 背景和简介

背景

一直以来,数据库专家都为企业中飞速增长的商业数据所困扰。工业分析数据正以平均42%/年的速率递增,保守估计,某些地方增长速度已达百分之几百,且完全没有停止迹象。究竟是什么原因导致数据爆炸性地增长?

首先,企业都已意识到大量相关数据蕴含着巨大的价值,他们比从前任何时候都更愿意保留这些可以利用的数据。从决策层到执行层,几乎所有人都高度重视数据分析结果的战略价值。于是数据被导入数据仓库,商业情报人员不时地输入分析查询语句,为将来某个关键的商业决策搜集支持依据。

其次,政府章程,比如Sarbanes-Oxley法案、 HIPAA标准等,促成了一种通过保留不必要保留的操作记录来清查越权行为的习惯。为了避免违反联邦法案,企业、学校、非盈利组织都要求软件记录下操作员执行的每一个步骤,这自然为数据库管理员带来了巨大的负担——他们不得不管理这些漫无边际地增长的数据。

最后,政府还有一个让数据库专家摊上更多事情的职能,就是安全控制和数据审计。那些管理着海量数据仓库的企业官员常常得回答诸如“何人何时修改了什么”或者“何人何时查看了什么”这样的提问。那些拥有数以千计的员工,开展着不计其数的业务的企业,每天都会产生出大量的日志记录数据,而且必须将其好好保存。

为了帮助数据库专家应对数据爆炸的挑战,MySQL5.0引入了一种新的数据存储引擎,叫做Archive。这个先进的数据管理工具,让MySQL的专家们拥有了处理和管理海量数据的新式武器。

Archive存储引擎概览

MySQL5.0的Archive存储引擎是唯一一个被设计用来帮助数据库管理员对付企业和组织中的大量流水数据的存储引擎。让我们马上来看看那些令Archive存储引擎能轻松应对前述挑战的独有特性吧。

由于企业要管理大量无关联历史数据,“信息生命周期管理”的需要开始增强。信息生命周期管理(ILM)的基本方法是,将历史的数据和操作记录转移到离线存储仓库中,在必要的时候依然可以访问他们。 MySQL 5.0中新的Archive存储引擎是保存无关联数据和操作记录的完美解决方案。它使用了一种透明的压缩算法,让数据都保存在压缩的存档表中。

许多年来,MySQL的MyISAM数据表压缩技术提供了减少数据使用空间的方法。但Archive存储引擎比压缩的MyISAM更合适,因为:

  • MyISAM压缩技术要求数据库管理员离线操作,而Archive数据引擎无需数据库暂停服务。所以使用Archive能保证数据库无间断运行。
  • MyISAM的压缩需要myisampack工具在命令行中执行,而Archive的压缩只需要一个简单的数据库描述语言指令。
  • 压缩的MyISAM表是只读的,Archive则同时支持Select和Insert的操作。另外,Archive使用常量读的方式,所以读取操作不会锁定数据表,阻止写操作的执行。
  • 数据存储于Archive表比压缩的MyISAM更为高效,所以Archive的投资回报率更高。

那些被数据存档和安全备案任务所困扰的MySQL数据库管理员们会喜欢Archive数据存储引擎,因为他们将不再需要将历史数据备份到磁带以节省存档开销。而且,历史数据的价值也可以得到提升,因为调用这些数据的时候无需先将数据从磁带还原到磁盘。

除了拥有简单易用的压缩特性之外,Archive存储引擎也是数据审计的最佳选择。Archive表只支持SELECT和INSERT操作,系统安全官员和审计员一定会非常乐于这样,毕竟审计工作要求严格保证原始数据不可更改。Archive表正好提供了这种限制——数据既无法修改又不能选择性地删除,换句话说,不可人为干预。

其他数据库厂商也提供数据表或数据库的压缩功能,但没有一个像MySQL的Archive存储引擎一样是直接为数据存档审计设计的。比如,Oracle从9.2版开始,引入了“压缩表”,但是它不具备数据审计的特性——只支持SELECT和INSERT。微软的SQL Server数据库管理员可以利用操作系统的压缩功能来减少数据库文件占用的磁盘空间量,不过偶有报告的数据损坏的情况吓阻了许多人。MySQL的Archive表的使用更为简单,完全不需要操作系统介入,能有效预防数据变更,保障数据可靠安全。

所以,不论是数据仓库、数据存档、还是数据审计的应用场合,全新的MySQL5.0 Archive存储引擎都是保障数据安全储存的最佳选择。在诸多数据存储产品中,它拥有最高的投资回报率。

本文自MySQL网站文章翻译而来,您可以查看原文下一篇文章将继续介绍Archive存储引擎的试用情况。

也許你還會喜歡

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Time limit is exhausted. Please reload CAPTCHA.