整个单板系统一共随机读50万条数据所需时间之比每个CPUCore完成.PPTVIP

整个单板系统一共随机读50万条数据所需时间之比每个CPUCore完成.PPT

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
整个单板系统一共随机读50万条数据所需时间之比每个CPUCore完成

基于内存的NoSQL分布式数据库技术研究项目 板内改造与测评分析 中科大移动云计算系统实验室 孟宁 项目目标 共享内存方式实现方案和测试方案 板内共享内存随机读测试 和运行单独一个进程的比较 板内共享内存测试结论 共享内存方式在基本读写性能上,与单独执行一个进程相比基本一致略有下降。随着进程数的增加,超过了一进程独享一个CPU Core时,共享内存数据库的性能随着进程数的变化呈线性变化(随着CPU计算资源的多少而变化),其中增加了一个固定的进程切换开销。 板内分布式实现方案和测试方案 采用分布式算法将板内所有进程构成一张全局表,每个单板的进程数目可以达到N个(最大32个),每个进程内存中存有1/N部分数据;重点测试各种读性能。 分布式算法采用一致性哈希算法将数据随机分布到各节点上,当业务进程访问某个数据时,根据数据的Key计算出该数据存储在具体哪个节点,直接到该节点读取数据即可。 板内分布测试结果 板内分布式结论 使用传统的板内分布式方案进行改造的结果是:由于没有专门设计使读操作尽可能多地命中本地进程数据,因此当分布的进程数增大时命中本地进程数据的可能逐渐减小,因而读性能也就逐渐与C/S方式的数据库趋同。 因此简单套用分布式方案不能达到我们的性能要求,我们又尝试了缓存方式。 进程缓存方式 采用缓存机制将通过C/S方式读到的数据缓存到本地进程,当缓存占满时随机淘汰部分数据。 利用缓存机制我们对不同的缓存空间大小(100%-10%)和读取的数据范围进行测试(10%-100%),同时每次测试我们先进行了初始化,也就是缓存数据的过程,然后进行实际测试。 进程缓存方式测试结果 进程缓存方式测试结果 进程缓存方式结论 缓存方式有很好的环境自适应性,在缓存空间大小与数据访问范围大致相同时性能甚至优于完全使用本地内存数据库,最差情况性能也会略优于完全C/S方式的数据库。 板内共享内存 vs 板内分布式 各种策略的综合对比 结论及下一阶段建议 结论: 板内共享内存方式是内存占用和随机读性能综合考虑较好的选择。 下一步工作的建议: 开发一个全新的分布式数据库,即数据分布在各单板上,单板业务进程缓存数据,业务单板内所有进程的缓存和本节点数据是共享内存的。 LOGO LOGO 板内数据库改造,方法不限于共享内存和分布式,在改造的基础上,保证系统性能下降2%以内。 具体到本阶段的关键目标 保持函数访问接口不变 性能下降在2%以内 要评估出进程同时访问数据库时对数据库性能的影响及影响因素(如计算能力、内存带宽等) 采用mmap方式实现共享内存方案,将板内所有进程通过mmap方式共享同一个数据库,每个单板的进程数目达到32个;主要进行了基本读写性能测试。 1)初始化数据库,插入所需的测试数据,把数据库内存映像保存为文件; 2)测试进程将数据库文件使用mmap方式映射到本进程地址空间; 3)利用shell脚本分别同时执行1个、2个、4个、6个、8个、10个、12个、14个、16个和32个进程,在执行时还使用了taskset -c将进程与CPU绑定。 整个单板系统一共随机读50万条数据所需时间之比 每个CPU Core完成50万次随机读所需时间之比 显然影响随机读性能的瓶颈在于CPU的计算资源 进程访问的缓存数据的范围 由1/10变化到10/10, 换句话,在命中率为100% 缓存大小由1/10变化到10/10 不同缓存大小在范围为100%的随机读,换句话说命中率由100%到10% 影响因子影响随机读性能的关键影响因素; “综合存储”是指整个系统存储数据所耗内存; “进程内存”是指平均到单个进程所耗内存; “最快随机读”是指在极端情况下的随机读性能,比如分布式只有一个节点的情况、 缓存大小与数据大小相同等; “最慢随机读”也是指在极端情况下的随机读性能,比如分布式的节点无限多, 本地缓存无限小命中率接近0%等。 LOGO

文档评论(0)

ailuojue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档