2024-09-11
2024-09-11
2024-09-11
2024-09-09
2024-09-09
2024-09-09
2024-09-06
2024-09-06
2024-09-06
2024-09-06
(文/Kevin Kline/SolarWinds 首席极客)技术专家每天都必须要平衡生产力与成本以及复杂性,随着开源数据库的日益普及,负责数据库平台的技术人员正面临着更大的挑战。
在最新的《SolarWinds调查报告》中,近三分之一的受访技术专家表示,他们在企业机构中需要负责超过300个数据库。大多数受访者表示,其企业机构有一半以上的数据库对业务至关重要。
开源模式是中国数据库市场当下的主流趋势之一。根据艾瑞咨询发布的《2021年中国数据库行业研究报告》,开源模式不仅通过公开分享源代码来使研发人员避免重复开发基础程序,从而提高数据库产品的开发“效率”,而且对产品技术创新也很有帮助。开源社区能够最大程度地汇集全球资源,为开发者提供一个交流和讨论空间,从而加快创新思想的诞生。
根据CAICT(中国信息通信研究院)的《开源生态白皮书》,中国的开源项目在2021年呈现爆发式增长,中国企业积极投资,在操作系统、数据库、中间件等领域出现了许多高质量的开源项目。随着开源技术被认可和接受程度的提高,2020年中国有88.2%的企业采用了各种形式的开源技术。
虽然商业平台仍占据主导地位,尤其是对于企业要害应用,但开源数据库正在增加。为了避免给内部系统带来风险,以前很少有企业IT团队愿意使用开源数据平台或初创企业的数据库管理系统。时过境迁,我们现在正在进入一个数据平台混搭的新时代,同时也需要牢记一些重要的原则,如务必在调查所有选择方案之后,再决定是否采用一个开源平台。
没有人能够抵挡免费的诱惑,你也不例外
开源数据库有很多优点,其中最突出的无疑是免费——没有人能抵挡免费或低价的诱惑。由于没有商业软件附带的许可证费用(通常这笔费用十分昂贵),因此IT预算不受合同款项的限制。而节省了成本的IT部门具有巨大的灵活性,可以进行尝试并且能够根据市场需求迅速采取行动。
由于开源社区不根据所支付的费用来授予许可证,因此小型企业也可以像跨国企业一样获得创新功能。而且初创企业和其他小型企业相比大型企业更有优势——在重新解释快速决策基于的因素并调整这些因素的优先顺序时,所涉及的管理层级较少,因此这些企业通常能够更快做出决策。
是否应该采用开源数据库取决于性价比。一家企业可能会选择一个高效率、能够随时提供支持的商业工具来为他们每年节省数千美元。如果工具有效,那么即便是六位数的许可费可能也不是天价,而且当这个工具不起作用时,还可以根据合同直接追讨赔偿。
另外,采用开源数据库的你并不孤单。根据《SolarWinds调查报告》,43%的技术专家表示他们目前正在使用MySQL或MariaDB。此外,18%的人表示他们计划在未来三年内采用MySQL、MariaDB或其他开源数据库平台。
同时,企业正在为基本的数据库应用寻找开源数据库或者至少在权衡开源数据库的利弊。他们拥有现成的专业数据库管理技术,许多企业最终决定等到出现更好的工具后,才在关键位置上采用开源数据库平台。
调查你的选择方案
在使用开源数据库之前,数据库专家应该研究此类平台为什么以及何时能给他们的企业机构带来最大的效益。在最初研究是否使用开源数据库时,我们往往只关注平台的性能和工作负载能力,但这还不够。
我们的确很难挤出时间来研究这些问题。《SolarWinds调查报告》发现数据库专业人员需要负责300多个数据库的各种平台。仅仅是保持这么多数据库正常运行、解决各种问题和 “救火”,就已经需要他们加班加点。
事实上,这份报告还发现维护工作占据了数据库专业人员一天中的大部分时间:三分之一的受访技术专业人员表示,他们一天中的大部分时间都在维护。这无疑使他们更加没有时间来研究开源数据库平台或进行任何可能提高生产力和节约成本的分析。
形成监控思维
技术专家可以使用合适的自动化和监控工具来节省维护时间。数据库监控工具可以在问题变得严重之前预见问题,还可以实时响应各种警报;自动化系统可以让他们腾出时间来专注于主动性数据库性能管理。监控工具在后台运行,充分发挥同时管理大量数据库的能力,而数据库专业人员则可以提高自身的技能、进行创新和研究他们的开源选择。
根据笔者数十年的经验,有监控思维的企业所取得的成功远大于没有监控思维的企业。一流的企业在得到一个新的数据库平台时,也一定会采取监控措施,确保该平台不会在他们毫无察觉的情况下发生故障,然后才会考虑将其用于生产。这些企业会防止平台“胡作非为”、占用特定服务器上的全部处理周期,这大大有助于技术专家继续添加更多的功能。
开源数据库已成为一种趋势。但在部署一个数据库之前,请务必详细调查你的选择方案(请记住:错误的选择会带来严重的后果),然后在部署新的数据库平台时务必部署自动化和监控系统。在整个过程中,应基于明确的业务目标制定部署规则,同时把政治因素排除在外。