内存计算框架

在这里插入图片描述
内存计算(In-memory Computing)指采用了各种内存计算在计算过程中让CPU从主内存读写数据,而不是从磁盘读写数据的计算模型。这里的内存技术包括列存储格式、数据分区与压缩、增量写入、无汇总表等方法。目前,内存计算主要是从存储架构(分布式缓存、内存数据库、内存云体系)和计算模型(基于主内存的并行处理、算法下放到数据层)两个方面提出解决方案。
分布式缓存架构:
由多台服务器组成一个缓存服务集群,以多节点集群方式提供缓存服务(物理架构上的分布式)
缓存数据(可看作一个大数据表)分布存储在多台缓存服务器上(逻辑架构上的分布式)
*

*分布式缓存体系应用场景:

1.web页面的缓存。
(二八原则:80%的访问都集中在20%的热数据上,因此可将高频数据预加载至内存)类似于chrome浏览器相关内存加载功能,浏览器算法会提前预判你的浏览地址,预加载至内存,提高点击反应速度,但会大大消耗内存(这也是chrome浏览器特别迟内存的原因)
2.应用对象缓存
缓存系统作为ORM框架的二级缓存对应用访问提供服务,目的为减轻数据库负载压力,加快访问速度。
3.状态变量缓存
包括Session会话及应用横向扩展时的状态数据等,这类数据是难以恢复的,要求有高可用性,多用于高可用集群应用。
4.并行处理
有大量中间计算结果需要共享。
5.事件处理
针对事件流的连续查询和实时处理
6.极限事物处理
为事务型业务提高吞吐率,低延时的解决方案,支持高并发事物请求处理,多用于铁路、金融服务、电信等领域(今后我会从金融领域详细讲解)

内存技术

1.数据压缩技术
包括字典编码算法(*是为经常出现字符型难以处理的数据属性作编号,保存其编号能大大减少存储空间,提高访问效率)、高效压缩存储、数据操作
2.列存储结构
包括内存数据格式、内存索引等技术
(列存储在查询时不需要将全部数据读入内存;
字典编码压缩使得列存储减小了压缩空间,提高了查询效率;
列存储bitmap操作能够一次快速高效地定位到多条数据;
因为各列记录之间没有依赖关系,非常利于并行化)
3.分区
对数据表划分多节点并行处理,分布式缓存系统主要采用水平划分和垂直划分的方式
4.无汇总表(无需做数据汇总操作)
5.只插入差异数据
为了提高访问效率通常只插入差异化数据(分为主表Main和差异表Delta,主表是高度压缩的完整数据,支持读;差异表只包含少量新增数据,支持写数据操作…系统会定期将差异表中数据更新至主表)

Memcache工作机制

Memcache是一个有代表性的高性能分布式内存对象缓存系统,通过缓存数据来提高访问效率。
Mecache是分布式缓存系统的名称,Mecacheds是缓存服务器程序。
Mecache分布式计算架构可以将一台机器上的多个Mecached服务器端程序或者分散部署在多个机器上的Mecached服务器程序组成服务端Server。
后面将会详细说明内存数据库、内存云MenCLoud、Spark内存计算。
知识点源于《大数据分析与计算》清华大学出版社
加入了自己对知识点的理解

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值