`
sqe_james
  • 浏览: 264440 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

各种Cache技术分析

 
阅读更多

redis、memcache、mongoDB 对比

  Redis Memcache MongoDB
综合 分布式的数据结构服务器,具有持久化机制,binlong功能,支持VM,sharding中的一致性哈希机制,支持cluster 优势是速度快,并发高,缺点是数据类型有限,查询功能不强,一般用作缓存 文档型的非关系数据库,优势在于查询功能比较强大,能存储海量数据
操作便利性 数据结构丰富些(list,set,hash等),较少的IO次数 数据结构单一 支持索引、查询语言和丰富的数据表达、
       
内存与数据量 通过VM特性突破物理内存限制,对KEY值可设置过期时间,仅缓存KEY值(与Memcached的最大区别) 采用LRU算法,可修改最大内存 依赖系统VM内存管理,适合大数据储存
       
可用性(单点问题) 依赖客户端实现分布式读写;主从复制时,每次从节点重新连接主节点都要依赖整个快照,无增量复制。所以单点问题比较复杂;不支持自动sharding,需要依赖程序设定一致hash机制。一种替代方案是,不用redis本身的复制机制,采用自己做主动复制(多份存储),或者改成增量复制的方式(需要自己实现),一致性问题和性能的权衡 本身没有数据冗余机制,也没必要;对于故障预防,采用依赖成熟的hash或者环状的算法,解决单点故障引起的抖动问题。 支持master-slave,replicaset(内部采用paxos选举算法,自动故障恢复),auto sharding机制,对客户端屏蔽了故障转移和切分机制。
       
可靠性(持久化) 支持master-slave模式的数据备份,依赖快照进行持久化(重启时从磁盘恢复到内存),aof增强了可靠性的同时,对性能有所影响 不支持,通常用在做缓存,提升性能 从1.8版本开始采用binlog方式支持持久化的可靠性
       
数据一致性(事务支持) 事务支持比较弱,只能保证事务中的每个操作连续执行 在并发场景下,用cas保证一致性 不支持事务
       
数据分析 不支持 不支持 内置了数据分析的功能(mapreduce)
       
应用场景 数据量较小的更佳性能操作和运算上(由于单线程的串行化网络和内存I/O的阻塞,不适用单条数据太大的高并发情况) 用于在动态系统中减少数据库负载,提升性能;做缓存,提高性能(适合读多写少,对于数据量比较大,可以采用sharding) 主要解决海量数据的访问效率问题
分享到:
评论

相关推荐

    cache性能分析实验

    - **硬件预取技术**:预测即将被访问的数据块,提前加载至Cache中。 - **由编译器控制的预取**:通过编译器优化代码,提前加载可能需要的数据块。 - **编译器优化**:优化程序代码,减少不必要的Cache访问,提高...

    cache性能分析实验报告.docx

    3. 使用Victim Cache或伪相联Cache技术,优化替换策略。 4. 应用硬件预取技术,提前加载即将需要的数据。 5. 结合编译器的预取和优化,进一步提升性能。 在SimpleScalar的sim-cache仿真器中,可以配置两级Cache结构...

    cache性能分析报告.pdf

    Cache 性能分析报告 Cache 是计算机系统中一种重要的存储器件,负责存储频繁访问的数据,以提高系统的性能。本报告对 Cache 的性能进行了详细的分析,涵盖了 Cache 的基本概念、基本组织结构、基本工作原理、容量...

    Cache性能分析1.5.docx

    - **技术发展**:了解Cache技术的发展趋势,以及在未来计算系统中的应用前景。 综上所述,本次实践不仅帮助参与者深入理解了Cache的工作原理和技术细节,还通过实际操作掌握了如何评估和优化Cache性能的关键技能。...

    cache性能分析及优化实验报告

    3. **分析结果**:记录各种失效次数,并分析相联度对Cache性能的影响。 **(五)改变Cache块大小** 1. **调整块大小**:将Cache块大小设置为原始值的2倍、4倍、8倍和64倍。 2. **运行程序**:每次更改后重新运行...

    透过专利看微处理器的技术发展(六)——Cache专利技术的发展历程.pdf

    * Cache 的关键技术分析:通过对 Cache 的关键技术的分析,我们可以了解 Cache 技术的发展方向和创新点。 Cache 技术的发展历程是微处理器技术发展的重要组成部分。通过对 Cache 技术的研究,我们可以了解 Cache ...

    Cache性能分析

    ### Cache性能分析 #### 一、引言 随着计算机技术的快速发展,CPU的运算速度显著提升,这无疑推动了整个计算机系统的性能飞跃。...随着技术的进步,未来Cache的设计也将更加智能化,更好地适应各种复杂的应用场景。

    【计算机体系结构实验】Cache性能分析实验报告

    【计算机体系结构实验】Cache性能分析实验报告 Cache性能分析是计算机体系结构研究中的关键环节,旨在理解并优化计算机内存系统的效率。实验旨在通过实际操作加深对Cache基本概念、结构和工作原理的理解,并掌握...

    cache性能分析实验报告

    预备知识中提到了降低Cache失效率的几种方法,例如增大块大小、提高相联度、引入 Victim Cache 或伪相联Cache,以及利用预取技术。这些方法旨在减少强制性失效、容量失效和冲突失效,从而提高整体性能。 在实验内容...

    PHP常见缓存技术分析(cache)

    **PHP常见缓存技术分析(cache)** 在Web开发中,缓存技术是提升系统性能的关键因素之一。PHP作为广泛使用的服务器端脚本语言,提供了多种缓存策略以优化应用程序的运行速度。本文将深入探讨PHP中的常见缓存技术,...

    网站Cache全分析.doc

    总结来说,网站Cache是一个复杂而关键的技术,它通过合理利用缓存策略,显著提升了用户访问速度,降低了服务器负载。理解并优化Cache机制,对于提升网站性能具有深远影响。在实际操作中,应根据网站的具体需求和资源...

    透过专利看微处理器的技术发展(七)——Intel早期多级Cache专利技术分析.pdf

    总结:本文详尽地探讨了Intel在早期微处理器中多级Cache技术的发展,通过专利分析揭示了技术的关键点和演变趋势。文章强调了多级Cache在解决处理器性能瓶颈问题中的重要作用,并为后续的技术研发提供了宝贵的参考...

    搜索引擎应用技术--cache技术

    搜索引擎应用技术中的Cache技术与Hash算法 在深入探讨搜索引擎应用技术中的Cache技术与Hash算法之前,我们首先要理解搜索引擎的基本架构和工作原理。搜索引擎的核心任务是从海量的信息中快速准确地找到用户所需的...

    透过专利看微处理器的技术发展(九)——多核处理器中Cache专利技术分析.pdf

    透过专利看微处理器的技术发展(九)——多核处理器中Cache专利技术分析.pdf

    实验四:Cache性能分析

    【实验四:Cache性能分析】 本实验主要目的是深入理解Cache的工作原理,以及其容量、相联度、块大小等因素如何影响性能。实验中,我们利用SimpleScalar模拟器,通过一系列参数调整来研究Cache的失效机制。 1. **...

    高档计算机系统中Cache性能分析1

    为了解决这个问题,引入了Cache技术。 Cache的工作原理基于程序访问的局部性原理。这意味着在短时间内,程序执行通常会集中在主存的某一小部分地址上,这包括连续的指令地址、循环和子程序的重复执行。因此,将这些...

    实验五: 虚拟Cache与伪相联Cache

    为了缓解CPU与主存之间的速度差异,引入了高速缓存(Cache)技术。本实验旨在通过一系列实践操作加深学生对两种特殊类型的缓存——伪相联Cache与虚拟Cache的理解。 **实验目标包括:** 1. **理解伪相联Cache的工作...

    CACHE、CDN、IDC技术及中国移动互联网问题分析v2.ppt

    内容 1 2 CACHE\CDN\IDC技术 互联网问题及思考一、IDC已引入的内容源存在的问题 二、CACHE、IDC建设统未统筹考虑 -1- 什么是CACHE? 什么是CACHE? Internet 解决HTTP流量问题 WebCache 流量拥塞点: 省网出口 互联...

    cache性能分析及优化实验报告.doc

    - **硬件预取技术**:预测未来可能访问的数据并提前加载到Cache中。 - **编译器控制的预取和编译器优化**:通过分析代码流来决定何时预取数据,减少无效的Cache访问。 在实验中,使用了SimpleScalar模拟器来模拟...

    IEEE fellow 张晓东多核cache管理技术

    "IEEE fellow 张晓东多核cache管理技术"这一主题正是针对这个挑战,通过深入研究和实践,提出了一系列创新性的解决方案。 多核Cache管理的目标是优化多个核心间的资源共享,减少缓存冲突,提高整体系统的吞吐量和...

Global site tag (gtag.js) - Google Analytics