NoSQL误用与陷阱:QCon2011杭州演讲精华
需积分: 10 198 浏览量
更新于2024-07-30
收藏 1.3MB PDF 举报
"《NoSQL误用和常见陷阱分析》是孙立在2011年QCon杭州会议上的一份演讲稿,主要针对NoSQL技术的误用和常见问题进行深入探讨。演讲内容分为几个部分:
1. 被误用的NoSQL:孙立首先指出了NoSQL在实际应用中的不当使用方式,其中一种常见的问题是循环网络调用。比如,在使用Memcached时,如果通过循环逐一获取数据,如`Map<String, String> result = new HashMap<>(); for (int i = 0, len = keys.length; i < len; i++) { result.put(keys[i], memcacheGet(keys[i])); }`,这会导致性能下降,相比批量GET(如`client.get(Arrays.asList(keys))`)效率低很多,例如10个键可能分别消耗10ms,而批量操作只需2ms。
2. Redis的循环和批量GET对比:类似地,对Redis的循环操作也会造成性能损失,即使在获取大量键值对时,循环`jredis.get(keys[i])`会比`jredis.mget(keys)`慢一倍,如100个键分别耗时10ms,而mget只需5ms。
3. 不压缩大数据:NoSQL存储在处理大数据时,如果数据未进行适当压缩,会占用更多存储空间并影响性能。演讲中区分了内部压缩(数据库自身支持的压缩)和外部压缩(客户端或网络层的压缩),指出内部压缩可以减少存储空间、提升IO性能,但对网络IO性能提升有限;而外部压缩则能同时减少存储和提升IO性能。
4. NoSQL与MySQL的比较:演讲还讨论了NoSQL与传统关系型数据库MySQL之间的差异,强调NoSQL在灵活性、扩展性和高并发场景下的优势,但也提示了正确选择和使用的重要性,避免陷入误区。
5. NoSQL运维挑战:最后,孙立提到了NoSQL系统的运维挑战,包括监控、故障恢复、数据一致性等问题,以及如何在复杂的应用环境中有效地管理和维护NoSQL系统。
通过这个演讲,孙立旨在帮助开发者理解和避免在使用NoSQL时可能出现的问题,以提高系统的性能和稳定性。对于那些正在考虑或已经在使用NoSQL技术的团队来说,这份资料提供了宝贵的实践经验和指导。"
2018-11-07 上传
2016-12-26 上传
2022-02-01 上传
2017-06-03 上传
puamyeah
- 粉丝: 0
- 资源: 9
最新资源
- 明日知道社区问答系统设计与实现-SSM框架java源码分享
- Unity3D粒子特效包:闪电效果体验报告
- Windows64位Python3.7安装Twisted库指南
- HTMLJS应用程序:多词典阿拉伯语词根检索
- 光纤通信课后习题答案解析及文件资源
- swdogen: 自动扫描源码生成 Swagger 文档的工具
- GD32F10系列芯片Keil IDE下载算法配置指南
- C++实现Emscripten版本的3D俄罗斯方块游戏
- 期末复习必备:全面数据结构课件资料
- WordPress媒体占位符插件:优化开发中的图像占位体验
- 完整扑克牌资源集-55张图片压缩包下载
- 开发轻量级时事通讯活动管理RESTful应用程序
- 长城特固618对讲机写频软件使用指南
- Memry粤语学习工具:开源应用助力记忆提升
- JMC 8.0.0版本发布,支持JDK 1.8及64位系统
- Python看图猜成语游戏源码发布