利用Alluxio系统提升按需数据分析服务的性能

  • 时间:
  • 浏览:0
  • 来源:uu快3诀窍_uu快3app安卓_导航网

3. 总结

版权申明:本文由南京大学顾荣、黄志翻译架构设计 自Alluxio公司技术博客,由Alluxio公司授权云栖社区及CSDN首发(联合),版权归Alluxio公司所有,未经版权所有者同意请勿转载。

上图显示了利用Alluxio提升按需数据分析服务性能的架构图,从图中后能 看出Alluxio与按需使用的计算集群部署在同时,从而减少计算集群频繁访问远程存储的耗时。

2. 结合Alluxio系统架构的优势分析

1. 架构示例图介绍

幸运的是新架构居于的一种生活大大问题后能 通过在计算集群上部署Alluxio得到很好的除理。通过引入Alluxio,后能 使得计算任务的I/O下行速率 达到内存级别,有时候不须要维护长时间运行的集群或昂贵的前期投入成本。

事实上,一种生活计算和存储解耦的方案具备上述优势的同时,也居于着另另俩个 关键的缺点:性能损失。这意味着着底层的对象存储通常并须要为高I / O吞吐量而设计的,有时候会意味着着上层的计算分析任务意味着着会意味着着数据访问下行速率 低下而整体性能变地低效。

对于上述什么大大问题的简洁而优雅的除理方案是采用一种生活上层按需计算集群结合底层对象存储的架构。一种生活架构通过解耦须要连续运行的持久化存储模块和没办法居于分析任务才使用的计算模块来除理什么大大问题的根源。与上段提到的须要连续运行的整体化集群架构相比,一种生活架构具有如下优势:

Alluxio为用户提供较高的灵活性和下行速率 。任何须要持久化的结果或转换都后能 通过Alluxio直接完成,Alluxio后能 将数据同步传播到底层存储系统,以确保数据无需意味着着节点故障而丢失。此外,用户还后能 选折 仅在Alluxio内存中存储临时数据或上方数据,从而允许计算任务对什么缓存的数据进行内存级下行速率 访问。

Alluxio是部署在计算群集中的虚拟的分布式存储系统,为上层应用的I/O提供内存级访问下行速率 的性能。 通过Alluxio虚拟化底层存储系统,使得任何基于Alluxio API接口(Alluxio提供HDFS兼容接口)编写的计算应用应用守护进程都能自动地访问用任何或多个底层存储系统,而不须要修改任何代码。此外,Alluxio是另另俩个 设计为可横向扩展的分布式存储系统,这意味着着通过部署更多的机器来轻松地存储更大的数据集并提高访问性能。

在所以大数据应用场景中,许多具体的除理大大问题通常只涉及到整体数据集的另另俩个 子集或帕累托图数据。这意味着着长时间占用大规模集群的整体数据分析土法律法律依据的资源有效利用率较低,有时候总体代价较高,尤其在系统采用计算和存储并置(co-locate)部署架构的场景下各位严重。另外,在所以即席查询和计算应用中,数据的分析任务通常由上层用户零散地给出,与用于除理管道数据和流数据的连续运行分析任务不同,一种生活零散的分析任务会造成集群的计算能力许多时间段没办法被充分利用。个人面,集群的存储容量须要容纳意味着着被访问到的任何数据,尽管实际上每次须要使用的工作集合所以 整体数据的一小帕累托图。最后,集群一种生活还须要几瓶精心的维护管理工作,以确保集群使用者之间的隔离和性能不受彼此很多影响。    

事实上,部署和使用Alluxio对上层应用应用守护进程而言是简单和透明的。应用应用守护进程还是不断地访问数据,就好像作业直接访问的是远程存储上的数据,Alluxio会智能地将热数据保居于计算集群的内存中以供后续读取。整个过程对于应用应用守护进程是透明的,有时候不须要进行手动ETL。一旦数据进入Alluxio,它将对集群的所有应用应用守护进程可用,有时候在同一数据集被多次使用的场景中,应用的性能会大幅提高。

相比于长期运行的计算分析集群高昂的成本和维护工作量,与对象存储结合使用的按需计算集群的架构是另另俩个 更简洁和更具性价比的服务除理方案。通过在计算集群中并置(co-locate)部署Alluxio和计算框架,人们都 克服了一种生活按需集群模型的关键性的性能缺点。Alluxio系统的架构设计 使其成为大数据软件栈中提供此核心功能的另另俩个 很好的选折 。