Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1398234
  • 博文数量: 277
  • 博客积分: 2551
  • 博客等级: 少校
  • 技术积分: 3918
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-21 22:46
文章分类

全部博文(277)

文章存档

2017年(3)

2016年(9)

2015年(65)

2014年(27)

2013年(85)

2012年(61)

2011年(27)

分类: 服务器与存储

2012-08-10 18:25:36

在选择一个数据库产品时,通常可能需要考虑以下因素:
   读写吞吐量  持久化 一致性 延迟
   没有任何一个数据库能够满足所有的应用场景
 
  全面测试。测试一定要使用切合实际场景的数据,并且需要尽量模拟业务场景的数据操作情况。否则,开发者会发现在上线后的实际场景下,可能导致一些性能瓶颈甚至发现整体架构上的设计缺陷。因此,尽可能使用实际场景的操作使用来进行测试,然后收集足够的测试数据。
   千万别以为在关系型数据库上的使用方法可以被直接移植。MongoDB并不支持一些关系型数据库的功能,所以开发者最好先搞清楚MongoDB支持哪些功能。为了获得更好的性能,开发者最好多看10gen官方建议的文档设计和操作方法。另外,在使用MongoDB前,建议开发者做好对整个架构进行重构以适用新的存储模型的准备。为了更好地理解数据迁移的代价,建议阅读《The cost of Migration》一文。
   明确数据需要的一致性和可靠性。对MongoDB来说,可靠性不再过度地依赖将数据写入到磁盘的操作,更多的是通过将数据同步到其他节点的方式解决可靠性问题。绝不建议开发者在真实环境中使用没有备份的节点单独工作。这一点很重要,所以建议开发者了解其中的原因。
阅读(2055) | 评论(0) | 转发(0) |
0

上一篇:MongoDb

下一篇:一个具体搜索问题的解读

给主人留下些什么吧!~~