基于大数据量的缓存查询实现方案
来源:互联网 发布:淘宝网套装连衣裙 编辑:程序博客网 时间:2024/05/21 09:21
业务、应用系统最常用的就是基于数据的查询,这不同于宏观意义上的系统各个层面优化(应用端、服务端、DB端等等),基于数据的查询更多时候需要考虑数据的规模、用户的习惯、数据的变化性等因素,但同时数据查询的优化也贯穿着系统的各个层面。本文主要针对一个特定领域进行分析,以供各位参考!
基于数据的查询往往首要考虑的是缓存数据,那么缓存的前提:
1、数据不会实时变化
2、每个用户最大范围的可以共用数据集合
基于缓存的实现方案,通常需要这样的一个缓存框架来完成,OK,接下来首先来应用温老师的ADMEMS矩阵方法进行结构化的需求分析,来看看我们的关键性需求、功能以及约束影响:
功能
质量
约束
业务级需求
当前:管理游戏类复杂产品的数据缓存
未来:管理其他类产品的数据缓存
新产品上线快,发布频繁
缓存数据的关键性
支持DB直连和缓存切换
与关联业务系统缓存同时生效
支持缓存更新、刷新(5分钟时效)
支持缓存故障恢复
支持其他类产品缓存管理
用户级需求
手机平台
Web平台
游戏平台
高可用
易用性
性能:缓存查询、吞吐
分布式的使用要求
不同平台的差异因素
开发级需求
数据安全机制
可重用、可扩展
补充说明:
1、可扩展性
不同类型数据库的以插件方式接入缓存体系(Oracle、SQL Server等等)
2、可用性
数据获取重试机制、缓存刷新重试机制、缓存通知重试机制
3、性能
以最小粒度为数据缓存更新点
4、故障恢复
分布式服务器、单台WEB下线,上线,缓存数据重新拉取
废话不多说,针对以上的需求分析,现对该缓存的预设计实现方案陈述如下:
另外,考虑到Cache应用到不同的系统层面,也应一并考虑到如下的优化:
1、应用端
如果是列表类,动态变化的查询,可采用分页查询
另外根据业务需求,可将首页或查询命中率较高的页数据进行缓存
同时可配合异步查询的方式进行
2、数据库
查询优化,针对不同的查询维度,进行分区并建立合适的索引,适当时候考虑数据迁移
另外建立数据同步机制,完成读写分离
其他,待补充!
其他参考:
1、海量数据的缓存
2、J2EE综合:如何处理大数据量的查
3、大数据量分页显示
4、大数据量分页查询方法
5、结合索引优化SQL语句提高数据库查询效率
- 基于大数据量的缓存查询实现方案
- 一种理想的大数据量分页查询方案
- 一种理想的大数据量分页查询方案
- MySQL大数据量查询优化最佳方案
- 大数据量中的模糊查询优化方案
- Silverlight大数据量查询实现
- 大数据量查询的优化
- 基于Apache POI导出大数据量Excel的实现
- Hibernate 处理大数据量的方案
- 大数据量导出Excel的方案
- 大数据量导出Excel的方案
- 大数据量导出Excel的方案
- 大数据量导出Excel的方案
- 大数据量导出Excel的方案
- 大数据量报表系统的改进方案
- 基于mvc实现大数据量分页
- 基于大数据量的视频推荐策略
- 大数据量翻页查询的一点经验
- 越狱3giphone 和安装破解ipa和app文件方法
- php 中生成随机字符串的方法
- 一次Nginx+PHP+Mysql的并发测试经历
- iphone 运行你的Application
- 改变MFC创建的窗口类~~~~(个性化)
- 基于大数据量的缓存查询实现方案
- Java Json/xml 序列化和反序列化 工具:JsonTools 和 simpleframework 附带实例
- 回文
- FCK
- php添加图形验证码
- 6410 bootloader stepstone学习
- 美欧亚三足鼎立格局形成
- Discuz配置搜索引擎优化(URL重写) apache配置
- FSK来电芯片HT9032的应用心得