当前位置: 首页 > 科技观察

正确选择开源数据库的5个小技巧

时间:2023-03-18 16:11:05 科技观察

重点应用的选择不容有半点失误。您可能会遇到需要选择合适的开源数据库的情况。但对于开源老手和新手来说,这都是一项艰巨的任务。在过去的几年里,越来越多的企业采用了开源技术。面对这种趋势,许多开源应用公司都承诺他们提供的解决方案可以适应各种问题和负载。但这些承诺不应掉以轻心。开源应用程序的选择既重要又困难,尤其是对于数据库等关键应用程序。凭借我在Percona和其他公司担任IT专家的经验,我很幸运能够指导其他人在选择开源技术时做出正确的决定,因为需要考虑的重要因素太多了。希望这篇文章能与大家分享一些这方面的小技巧。有一个明确的目标看似简单,但是和很多人聊过MySQL、MongoDB、PostgreSQL之后,我觉得这个才是最重要的。面对复杂的开源数据库,你需要明确自己的目标。无论这个数据库是作为开发的标准化数据库后端,还是用来替代遗留代码中的原始数据库,这都是一个明确的目标。确定目标后,您可以专注于与开源软件提供商协商更多细节。了解您的工作负载虽然开源数据库技术的功能越来越丰富,但这些新增功能都不是普遍适用的。比如MongoDB增加了事务支持,MySQL增加了JSON存储的功能等等。目前开源数据库的大趋势是不断增加新的功能,但很多人的误区是没有选择最合适的工具来完成自己的工作——这样的人可能是狂妄自大的开发者,也可能是成为眼界狭窄的高管——最终导致公司业务流失。最致命的是,在业务的初始阶段,使用不合适的工具往往可以顺利完成任务,但随着业务的增长,很快就会达到瓶颈,虽然此时可以更换更合适的工具时间,但成本较高。例如,如果您需要的是数据分析仓库,那么关系数据库可能不是合适的选择;如果您的事务性应用程序需要严格的数据完整性和一致性,请不要考虑NoSQL。不要重新发明轮子在过去的几十年里,开源数据库技术发展迅速。开源数据库重生、被质疑、被认可,现在已经成为很多企业生产环境的数据库。企业不再需要担心选择开源数据库技术的风险,因为开源数据库通常都有活跃的社区,可以为越来越多的初创企业提供开源数据库领域的支持和第三方工具,中等大企业,甚至世界500强企业。BatteryVentures是一家专注于技术的投资公司,最近推出了一个追踪顶级开源项目的BOSS指数。它提供了一些广泛采用的开源项目和活跃的开源项目的详细信息。其中,数据库技术无疑在榜单中占据了主导地位,占据了前十名的半壁江山。对于刚接触开源数据库世界的人来说,这个BOSS索引是一个很好的切入点。当然,开源技术的提供者也会针对很多常见的典型问题提供相应的解决方案。在我看来,您尝试做的事情很可能已经得到解决。即使这些先行者的解决方案不一定能完全满足你的需求,你也可以从他们的成败案例中,根据自己的需求,得到适合自己的解决方案。如果您采用了尖端技术,这就是您探索的机会。如果您的工作负载恰好适合新的开源数据库技术,那就去吧。第一个吃螃蟹的人,总会得到意想不到的挑战和收获。从简单开始。您的数据库实际需要多少个9的可用性?对于许多公司来说,“实现高可用性”只是一个模糊的目标。当然,最常见的答案是“这是一个关键应用程序,我们不能容忍任何停机时间,无论多短”。数据库环境越复杂,管理起来就越困难,成本也越高。从理论上讲,你总是可以提高数据库的可用性,但代价是管理难度大大增加和性能下降。因此,从简单开始,然后根据需要进行扩展。例如,Booking.com是一个知名的旅游预订网站。但鲜为人知的是它使用MySQL作为数据库后端。Booking.com的高级系统架构师NicolaiPlum讲述了他们公司使用MySQL数据库的旅程。重要的一点是数据库最初可以配置得非常简单,然后逐渐变得更复杂。对于早期的数据库需求,一个简单的主从架构就足够了,但是随着工作负载和数据量的增加,数据库引入了负载均衡、多个只读副本,并且还使用了Hadoop进行分析。不过,早期的架构非常简单。有疑问,找专家如果您仍然不确定数据库选择是否合适,您可以在论坛、网站或与软件提供商讨论。研究各种开源数据库是否满足你的需求是非常有意义的,因为你总会发现你从来不知道的技术。开源社区是共享这些信息的地方。当您接触开源软件和软件提供商时,需要注意一件重要的事情。许多公司都有开放的核心业务模型,鼓励采用他们的数据库软件。你可以只接受他们的部分建议和指导,并利用你自己的能力研究和探索替代方案。总结选择合适的开源数据库是一个重要的过程。很多时候,人们在没有真正理解需求之前就做出决定,这是本末倒置。