当前位置:邦盛首页 > 资讯中心 > 业界资讯 >

标度的MongoDB的(或任何DB)的5个步骤

编辑时间 : 2013-06-18 14:50:49  作者:邦盛建站

贾里德罗塞夫简洁有效地,并令人信服地给出了一个8分钟的MongoDB教程。这个的想法并不仅仅局限于MongoDB的,他们的工作对于大多数数据库:优化你的查询,了解你的工作集大小,调整你的文件系统选择合适的磁盘碎片。这里有一个解释所有的5个策略:
  优化您的查询。计算机科学工程。复杂性分析的工作。B树的搜索速度比表扫描。因此,分析你的查询。使用说明,看看您的查询。如果说这是使用游标,然后它做一个表扫描。这是缓慢的。看它看起来在以满足查询的文档数。看看需要多长时间。修复:添加索引。这不要紧,如果你是1或100台服务器上运行。
  了解你的工作集大小。坚持memcache的在你的数据库是愚蠢的。你有很多的RAM,使用它。嵌入您的高速缓存在数据库中,这是如何MongoDB的工作。工作设置活动文档+使用的索引。打到的东西RAM速度快,磁盘速度很慢。如果你有一个亿的用户和活跃在同一时间只有100K,100K是你的工作组。你想拥有足够的RAM,为那些100K这样的操作在RAM中而不是在磁盘上。请记住,索引会占用内存太大了。这不要紧,如果你是1或100台服务器上运行。
  调整你的文件系统。性能问题往往会追踪到文件系统。EXT3是古老的。使用EXT4,XFS,或其他一些表现良好的文件系统。关闭访问的数据库的实时跟踪,有没有需要更新一个文件,每一个文件被访问的时间,这是另一个写。上EXT3必须预先分配2GB的文件实际写入字节,它是缓慢的。
  选择合适的磁盘。寻道时间是最重要的。你在做什么是随机IO。是由一个机械手臂,摆动在磁盘寻道时间。平均磁盘驱动器可以做200寻求第二。更快的驱动器将数据从磁盘移动速度更快,这是他们具有较高的带宽,但其寻道时间将是相同的。单盘:你可以做第二个200查询。RAID 0(条带化在多个磁盘上):3个磁盘,每秒600查询。RAID 10(镜像和条带化):6个磁盘是指1200寻求第二。选择合适的磁盘。RAID事宜。固态硬盘是真棒:0.1毫秒的寻道和5毫秒的磁盘寻找。随机存取大。
  碎片。如果您的应用程序是缓慢的,使用索引不好,比较慢的磁盘驱动器,然后在单个节点将是缓慢的。修复了使用片式前缩放,所有这些东西。分片可以让你传播你的工作量,更多的机器,随着副本集的高可用性。数据被分区的碎片由范围,例如。可以扩展到数百台服务器。每个人都可以处理10秒1000的写入。可以轻松添加更多容量。分片具有良好的数据库倍数的优点,具有良好的查询,良好的驱动器,和良好的工作组。

标度的MongoDB的(或任何DB)的5个步骤

分享到: 0
+1
0
邦盛网络科技有限公司二维码扫一扫,进入官方网站