前言:
今天你们对“数据库怎么选择数据库”大体比较关怀,小伙伴们都想要剖析一些“数据库怎么选择数据库”的相关内容。那么小编同时在网络上搜集了一些关于“数据库怎么选择数据库””的相关资讯,希望你们能喜欢,朋友们一起来了解一下吧!在构建高可扩展的系统时,选择正确的数据库至关重要。
如何选择合适的数据库?我们需要做出至关重要的决定。幸运的是,我们被赋予了为超快速增长的业务选择下一个数据库的重任。
如何选择合适的数据库?以下是需要考虑的几个关键点。
以下是需要考虑的几个关键点。我们讨论的是一家真正成长型企业的数据库,一个糟糕的选择会带来很多麻烦。
我们正在谈论的是一个真正成长型企业的数据库,一个错误的选择会带来很多麻烦。现有数据库是否已经崩溃?
现有数据库是否已经崩溃?也许P95延迟已经达到顶峰。
也许P95延迟已经达到顶峰。工作集是否已经溢出可用内存?
工作集是否已经溢出可用内存?最基本的请求是否需要等待很长时间?
最基本的请求是否需要等待很长时间?需要停机时间延长吗?
需要停机时间延长吗?客户会受到影响吗?
客户会受到影响吗?甚至可能导致数据丢失吗?
甚至可能导致数据丢失吗?我们不是在为周末项目选择数据库。
我们不是在为周末项目选择数据库。这种做法可能有争议。让我们开始吧。
让我们开始吧。首先,我们需要确认是否需要一个不同的数据库?
首先,我们需要确认是否需要一个不同的数据库?寻找替代方案通常有一个充分的理由,对吧?
寻找替代方案通常有一个充分的理由,对吧?现有数据库是否已经崩溃?
现有数据库是否已经崩溃?也许P95延迟已经达到顶峰。
也许P95延迟已经达到顶峰。工作集是否已经溢出可用内存?
工作集是否已经溢出可用内存?最基本的请求是否需要等待很长时间?
最基本的请求是否需要等待很长时间?需要停机时间延长吗?
需要停机时间延长吗?客户会受到影响吗?
客户会受到影响吗?甚至可能导致数据丢失吗?
甚至可能导致数据丢失吗?我们不是在为周末项目选择数据库。
我们不是在为周末项目选择数据库。这种做法可能有争议。让我们开始吧。
让我们开始吧。首先,我们需要确认是否需要一个不同的数据库?
首先,我们需要确认是否需要一个不同的数据库?寻找替代方案通常有一个充分的理由,对吧?
寻找替代方案通常有一个充分的理由,对吧?现有数据库是否已经崩溃?
现有数据库是否已经崩溃?也许P95延迟已经达到顶峰。
也许P95延迟已经达到顶峰。工作集是否已经溢出可用内存?
工作集是否已经溢出可用内存?最基本的请求是否需要等待很长时间?
最基本的请求是否需要等待很长时间?需要停机时间延长吗?
需要停机时间延长吗?客户会受到影响吗?
客户会受到影响吗?甚至可能导致数据丢失吗?
甚至可能导致数据丢失吗?我们不是在为周末项目选择数据库。
我们不是在为周末项目选择数据库。这种做法可能有争议。让我们开始吧。
让我们开始吧。首先,我们需要确认是否需要一个不同的数据库?
首先,我们需要确认是否需要一个不同的数据库?寻找替代方案通常有一个充分的理由,对吧?
寻找替代方案通常有一个充分的理由,对吧?现有数据库是否已经崩溃?
现有数据库是否已经崩溃?也许P95延迟已经达到顶峰。
也许P95延迟已经达到顶峰。工作集是否已经溢出可用内存?
工作集是否已经溢出可用内存?最基本的请求是否需要等待很长时间?
最基本的请求是否需要等待很长时间?需要停机时间延长吗?
需要停机时间延长吗?客户会受到影响吗?
客户会受到影响吗?转到磁盘并减缓一切速度。
将数据库迁移到磁盘上,可以减缓整个系统的速度。无论遇到什么问题,我们都要确保它难以解决。
我们需要仔细阅读当前数据库系统的数据库手册,然后再阅读一遍。可能有几个配置旋钮,可以用来优化数据库性能,让我们有更多的时间和空间应对问题。因为数据库迁移可能需要很长时间,通常比我们想象的要长得多。
这些调整包括调整工作集内存大小、选择不同的压缩策略、甚至改变垃圾收集行为等。这些功能非常复杂,需要进行高度的定制化。了解数据库的体系结构和局限性非常重要。对于问题的描述,有经验的人可以提供帮助,并且往往会有意外的收获。为了寻找更多的空间,我们可能需要修复应用程序的架构,这可以提供更多的时间和空间。
我们可以添加缓存并给系统更长的时间来运行,或者添加只读副本来减轻读取负载。我们可以对数据进行分区或缩短数据库的时间来减少查询时间。如果数据是独立的,可以考虑删除某些数据。最终的结论是,迁移轻量级生产数据库存在风险和成本。我们最好确保没有办法继续使用当前的数据库。我们已经用尽了所有的方法,该怎么办呢?开发人员可能会被新的和闪亮的东西所吸引,就像飞蛾扑火一样。
然而,对于数据库来说,无聊是件好事,我们应该更喜欢那些已经存在很长时间并经过充分测试的。不同行业的态度可能不同。银行和金融业更保守。对于我们正在考虑的数据库,需要进行大规模的软件工程权衡。对于数据库来说更是如此。请记住,天下没有免费的午餐。不要被营销口号所迷惑。无限、轻松的水平可扩展性伴随着隐性成本。寻找隐藏成本的地方,深入挖掘,领海、耐磨、deep、start。
不要相信宣传,要阅读手册。
通常在“限制”页面中会有相关信息。在“常见问题解答”部分中也可以找到答案。
这些页面是我们了解新数据库的真正限制的地方。
手册中的设计、线条和中国人的想象力非常重要。根据我们的经验,声明越精美,后面的免责声明就越长。他们经常声称支持几乎线性的水平可扩展性。他们常说支持近乎线性的横向和纵向文献,但这通常伴随着以下权衡。
第一,他们可能会取消或限制事务的保证。
第二,他们会限制数据建模的灵活性。
无法进行跨数据实体的查询,因此缺乏685的能力。
数据高度不规范,同一条数据可能存储在多个集合中。
支持不同的数据访问模式。
了解特定数据库的更多信息,可以加入聊天室。
为开源项目阅读GitHub问题。
目前的投资规模相对较小。
一旦我们缩小了数据库选项的范围,下一步是什么?
接下来,我们来一场枪战吧。
是的,我们需要数据对吧?毕竟目前的数据库已经满了,所以需要一些具有代表性的数据,以便进行基准测试。
在基准测试期间,请注意异常值,并测量P99的平均值,而非平均值。
尝试复制真实的工作负载,并进一步推进,看看它的表现如何。
尝试进行一些具有风险的操作任务,例如节点故障转移或数据测试网络分区期间的损坏。
如果适用,请尝试进行上短路或下短路。
完成所有检查后,请仔细规划迁移,并写出详细的分步迁移计划,让同事彻底审查。如果可能的话,先从小型服务入手,尽可能多地学习。选择正确的数据库并不容易,需要耗费大量的精力和时间。迁移到真实世界的新数据库可能需要数年的时间,所以需要做好充分的准备。如果您想了解更多关于系统设计的知识,可以参考书籍和每周通讯。如果您想深入了解系统设计,可以订阅我们的每周新闻通讯“ByteByteGo ministrator”。如果您有任何新的发现,欢迎与我们分享。感谢您的关注,期待下次再见。非常感谢您的支持,我们下次再见。
标签: #数据库怎么选择数据库