远程数据库管理服务
时间:2010-09-08 来源:ztz8652
提供远程数据管理服务是目前市场最火的发展趋势之一。各行业的许多公司都依靠外部数据库管理员来支持它们的产品,开发和问答系统(QA systems)。这些公司的规模不等,小到不足百人,大到跨国企业。
上述提到的公司的数据库系统规模小的只有几个用户和几GB的数据,而规模大的就有上百GB的数据,每天要需要处理上万的事务,需利用专门的技术,如安装Oracle RAC(Real Application Cluster)这样的系统。
根据我们采访的结果来看,使用远程DBA服务还是有许多方面的问题。有些公司欢喜,有些公司忧,甚至不去考虑是否使用。究其原因,主要是远程DBA服务涉及到安全和面对面交互效率的问题。这篇文章将会涵盖我们的采访过程,我们将从各个角度来看远程DBA服务。这篇文章的主要目的就是帮助你决策是否使用远程DBA服务,以及如何选择的问题。
远程DBA是什么?
说了这么多,让我们看看远程DBA是什么。远程DBA就是一种服务,由第三方公司来提供,该公司监控指定数据库服务器的安装,在已定的指导方针下来管理数据库服务器。典型的执行任务包括监视数据库空间使用情况,内存和CPU利用率,处理错误日志的报警,验证备份等。
远程DBA监督技术能够在几天就能完成。其中的一个管理方案就是对每一个连接进行交互式的操作。这就意味着一个数据库管理员将要远程连接一个数据库系统,查看该数据的操作。有的时候,还需要本地创建一个数据库script脚本,并且执行,收集系统的性能和健康数据,然后回发到远程数据库管理员这里进行查看。远程数据库管理员看到问题后,将会连接数据库,解决问题。
非常普遍的是,远方的数据库管理员在不同的城市,不同的时区,甚至不同的国家。如果数据库管理员和数据库服务器在同一个城市,那么数据库管理员可以在需要的时候到现场去解决问题。如果数据库服务器在另外一个时区,这就意味着数据库管理员和数据库服务器在不同的国度,这种跨国度操作,虽然说在夜间流量小,监控数据库系统还轻松些,但是也需要一个可靠的网络连接,然而并不是所有国家的网络连接都很可靠。
因此这项服务需要一个高速的虚拟专用网络(VPN)连接到客户的站点,以便能建立可靠的远程连接管理数据库系统。虽然拨号连接不是很实用,但是一旦当主要连接发生故障,拨号连接还是能作为很好的备用选择。
安全问题也需要的考虑。用户名和密码应该以一种安全可靠加密的方式来传输。在有些情况,如金融机构,医疗设备,由于这些数据具有高敏感度,因此所有这些网络信息流通量应该被加密。
数据库系统的管理指导方针包括监控系统,确保所有的操作都在既定的参数范围内。一些性能优化和调整将需要根据已定的指导方针进行。举个例子,内存再分配和索引管理就属于此类了。
远程数据库管理或许包括一些操作系统级的操作,确保系统的运行符合既定的指导方针。这些操作包括权限修改,磁盘空间分配等。
另外一个方面就是系统的备份和恢复了。数据库系统需要进行配置,以防恢复失败时可以进行人工手动恢复。想象下有些产品在半夜恢复失败,如果是在线进行恢复的话,需要花费很长的时间,如果是让本地的或者是远程的数据库管理员手动恢复的话,比起原来的自动恢复的就会快很多了。
总的说来,所有的会出现问题的情况都要想到,以便在出现操作失败的情况下,系统可以尽可能的自己恢复。这样就可以避免数据库管理员到现场去,他们在远程就可以操作了。一个好的远程DBA服务将会建立规范的流程,并且有工具来协助进行安装设置,另外,用户根据他们的经验,能够衡量出最优的方法。
是否使用远程DBA服务
你现在已经考虑使用远程DBA服务了吗?这是我们对采访者提出的主要问题。大多数采访者的回答是肯定的。
曾经工作在财富杂志排名前100的公司的受采访者说,当时公司50%的DBA小组是远程的。远程工作的时候也没有出现问题,数据库管理的工作能够100%的在远程操作。唯一的弊病就是反应时间,和在开问题解决会议上面对面的交互沟通上。这个受采访者接着说:“我觉得最好的工作模式就是数据库管理员能在本地工作,但是可以选择用50%的时间进行远程的管理。”
Jeremy Lowell,Firmus咨询有限公司数据结构设计者说,“我相信远程DBA服务会有一个很大的市场,并且只有随着时间的推移才能发展壮大。也就是说,刚才是只是有那么一点形态的出现,随后才会更加的具体。这就意味着会有一些擅长于这个领域的公司将此功能加到关系数据库管理系统中。”
Pat Phelan,DBForums论坛的管理者,说这就是一个非常好的想法,允许远程访问,虽然你也需要一些面对面的讨论时间,但对于开发者和用户来说,能时不时的和DBA沟通,这个虽然不是经常需要的,但有时候还是很有用的。
Armando Torres Jr.一位数据库管理经理回答道:“我们公司并不希望有这种技术支持,作为一个银行来说,安全问题甚是担忧。不过在人手不够的情况下,这种服务还是很有帮助的。”
根据这些接受采访者的回答,对于远程DBA的服务需求你也就略知一二。对于考虑使用这类服务的公司需要很清楚的规定责任和权限范围。另外,通讯手段和如何交互也要规定。尽量缩小第三方公司和顾客公司接触点,这有助于解决上述问题。
远程DBA服务优点
一个公司如果使用了远程DBA服务能够获得很多的收益。首先就是能够降低成本。比起聘请一个全职的数据库管理员在公司工作,使用这种外部的数据库管理服务就会极大的节约成本。如果这是服务还是由一些薪金低的海外公司来做的话,那成本就更节约了,但是,存在的交流障碍和文化差异,也会反过来影响节约的成本。
另外一个收益的就是本地雇佣的DBA能够分担公司更重要的一些事情,而不仅仅是那些每天日常的管理工作。
Jeremy Lowell 说:“这就允许本地的数据库管理员承担了更多的任务,潜在的积极推动项目或者业务进度,例如数据库管理员会非常勤奋的处理现存的数据,而不仅仅是监视备份的情况。”
Armando Torres Jr声称,这种远程的DBA服务另外的一个好处就是能够能够让数据库管理员从一些日常的工作中解放出来,让现场的数据库管理员参与到开发项目中去。
最后,我们列出来使用远程数据库服务的优点,让这些接受采访的专家按主次的顺利排列,我们列出的优点如下:
• 节约成本
• 获得特殊的额外帮助
• 提供加班支持
• 不需要雇佣全职数据库管理员
• 获得公司内所没有的专家意见
• 解放公司内的数据库管理员,完成更重要的工作
结果是“节约成本成为”最为重要的因素,紧随其后的就是“解放本地数据库管理员,让他们完成更重要的工作”。然后就是“获得公司内所没有的专家意见”。接下来部分伯仲的就是获得“特殊的额外帮助”和“提供加班支持”。最为不重要的就是公司“不需要要雇佣一个全职的数据库管理员”。