Unified Holistic Memory Management Supporting Multiple Big Data Processing Frameworks over...——论文泛读

TOCS 2022 Paper 论文阅读笔记整理

问题

为了处理真实世界的数据集,现代数据并行系统通常需要大量的内存,机器数量少时内存不足,机器数量多时CPU资源利用率不足,导致价格昂贵又低效。新兴的非易失性存储器(NVM)技术与DRAM相比具有高容量,与SSD相比具有低能耗。因此NVM适用于大数据处理中DRAM和耐用存储之间的选择。NVM有两种代表性用法。第一种利用其持久性功能,确保持久性数据结构的崩溃一致性,并在发生故障时恢复执行。第二种是作为传统DRAM设备的补充,即构建混合存储器架构,同时利用DRAM的访问速度,和NVM的大容量、低功耗和低成本。

挑战

但直接使用NVM会因其显著增加的访问延迟和减少的带宽而导致巨大的性能损失,例如,NVM读取的延迟比DRAM大2-4倍,NVM的带宽约为DRAM的1/8–1/3。因此需要解决,如何在DRAM和NVM之间执行智能数据分配和迁移,以便最大限度地提高整体能源效率,同时最大限度地减少性能开销,存在两个挑战。

  • 使用垃圾回收(GC)。一种常见方法是修改操作系统或硬件,以监控物理内存页的访问频率,将热数据移动到DRAM中。但在托管语言中,垃圾回收会不断更改内存中的数据布局,破坏了数据和物理内存地址之间的绑定。大多数大数据系统都是用Java和Scala等托管语言编写的,托管语言是在诸如JVM的托管运行时之上执行的,JVM采用了复杂的内存管理技术。由于传统的垃圾回收器不知道混合内存,在操作系统级别分配和迁移热/冷页面很容易导致不同级别的内存管理之间的干扰。

  • 应用程序级内存子系统。现代大数据系统都包含复杂的内存子系统,这些子系统在应用程序级别执行各种内存管理任务。例如,Apache Spark[6]使用独立分布式数据集(RDD)作为其数据抽象。RDD是一种分布式数据结构,在不同的服务器之间进行分区,可以是许多存储级别中的一个(例如,内存、磁盘、非物质化等)。Spark允许开发人员指定RDD应该分配到哪里,例如在托管堆或本地内存中,本机分配的对象不受GC约束,从而提高了效率。但数据处理任务(如shuffle、join、map或reduce)是在托管堆上执行的,除非先将基于本机内存的RDD移动到堆中,否则无法直接处理它。因此,在哪里分配RDD取决于何时以及如何处理它。例如,频繁访问的RDD应该被放置在DRAM中,而基于本地存储器的RDD将不会被频繁使用,可以放置在NVM中。有效地使用混合存储器需要在这些正交数据放置策略(即堆、本地存储器或磁盘)与NVM或DRAM之间进行适当的协调。

本文方法

本文分析了两个具有代表性的大数据系统,用于数据处理的Spark和用于数据存储的QuickCached,发现有机会在JVM中共享通用的内存管理策略。

  • Spark有两个独特的特性。(1)执行批量对象创建,数据对象表现出强大的划时代行为和清晰的访问模式。例如,每个RDD具有完全相同的访问/生存模式的对象。(2)数据访问和生存期模式通常在用户程序中是静态可观察的。例如,RDD的访问模式可以从程序中创建和使用它们的方式推断出来。

  • QuickCached有一个独特的特性。使用一个巨大的哈希表来存储键值对,在处理查询请求时,会创建大量的临时对象,这些对象会在很短的时间内被频繁访问。因此,频繁访问的数据的寿命很短,而寿命长的数据很少被访问。

基于观察,可以为大数据应用程序开发一个简单的静态分析,以推断每个粗粒度数据集合的访问模式,以执行有效的分配和迁移。

本文提出了Panthera,一种语义感知、全自动的内存管理技术,用于混合内存上的大数据处理。通过轻量级静态程序分析和动态数据使用监控,来推断粗粒度的数据的访问模式,通过垃圾回收在运行时进行有效的数据放置和迁移,几乎不产生运行时开销。针对Spark/QuickCached分别进行优化。

  • 分别为Spark和QuickCached开发了两个静态分析器。Spark分析器分析Spark程序,基于变量的位置及其在程序中的使用方式来推断RDD变量的内存标签(即NVM或DRAM)。QuickCached分析器分析QuickCached源代码,识别巨大的全局哈希表,并推断其对应的内存标签。

  • 开发了语义感知和物理内存感知的生成GC。将静态分析工具推断出的内存标记传递给运行时系统,使用这些标记来做出分配/迁移决策。Panthera的堆有两个空间,分别代表年轻和老。将年轻放在DRAM中,将老分为小部分在DRAM和大部分在NVM。这种设计也是基于观察的结果:

    • 大多数对象是在年轻中分配的,且在初始化过程中经常被访问,将其放在DRAM中可以快速访问。

    • Spark中,也有存储临时中间结果的短暂RDD。这些RDD到期后在年轻中迅速回收,导致频繁访问。因此设计将年轻放在DRAM中。

    • QuickCached中,创建许多临时对象来处理特定的请求。这些对象是在年轻中分配的,应该放在DRAM中,以实现快速访问。

    • Spark中的长寿命对象可分为两类:(1)在数据转换期间频繁访问的长寿命RDD,放在DRAM中,因为频繁访问;(2)为容错而缓存的长寿命RDD,放在NVM中,因为很少访问。

    • QuickCached只有一个长寿命对象,用于存储键值数据。只有一小部分经常被访问,这些请求将在运行时被识别,开销可以忽略不计。因此应该放在NVM中,除了已识别的频繁访问部分。

  • 基于观察结果,修改了次要GC和主要GC,根据数据对象的RDD类型和静态分析推断的语义信息,将数据对象分配和迁移到合适的空间中。运行时系统还监视RDD对象调用的转换,以执行RDD访问模式的运行时(重新)评估,根据评估结果使用主GC将RDD从一个空间迁移到另一个空间。

使用Spark应用程序对Panthera进行了广泛的评估,不同堆大小和DRAM比率的结果表明,Panthera有效地利用了混合内存。Panthera增强的JVM将内存能源减少了22%–34%,QuickCached的执行时间开销为1%–9%;Spark的平均执行时间开销不到1%,内存能量减少32%–53%,而其他方法将只读RDD对象移动到NVM则会产生41%的时间开销。

总结

针对混合存储器上运行的大数据处理系统,包括用于数据处理的Spark和用于数据存储的QuickCached,如何优化混合存储器的使用。本文基于对Spark和QuickCached的分析,发现数据有可静态观察的访问模式,如频繁访问、很少访问。因此提出Panthera,根据语义感知在混合内存上进行内存管理。(1)对Spark和QuickCached分别设计静态分析器,根据源码分析其变量的访问模式。(2)根据静态分析的标记,运行时在DRAM和NVM间进行内存分配和迁移。(3)运行时进行动态访问模式评估,根据评估结果动态迁移。

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
As today’s organizations are capturing exponentially larger amounts of data than ever, now is the time for organizations to rethink how they digest that data. Through advanced algorithms and analytics techniques, organizations can harness this data, discover hidden patterns, and use the newly acquired knowledge to achieve competitive advantages. Presenting the contributions of leading experts in their respective fields, Big Data: Algorithms, Analytics, and Applications bridges the gap between the vastness of Big Data and the appropriate computational methods for scientific and social discovery. It covers fundamental issues about Big Data, including efficient algorithmic methods to process data, better analytical strategies to digest data, and representative applications in diverse fields, such as medicine, science, and engineering. The book is organized into five main sections: Big Data Management―considers the research issues related to the management of Big Data, including indexing and scalability aspects Big Data Processing―addresses the problem of processing Big Data across a wide range of resource-intensive computational settings Big Data Stream Techniques and Algorithms―explores research issues regarding the management and mining of Big Data in streaming environments Big Data Privacy―focuses on models, techniques, and algorithms for preserving Big Data privacy Big Data Applications―illustrates practical applications of Big Data across several domains, including finance, multimedia tools, biometrics, and satellite Big Data processing Overall, the book reports on state-of-the-art studies and achievements in algorithms, analytics, and applications of Big Data. It provides readers with the basis for further efforts in this challenging scientific field that will play a leading role in next-generation database, data warehousing, data mining, and cloud computing research. It also explores related applications in diverse sectors, covering technologies for media/data communication, elastic media/data storage, cross-network media/data fusion, and SaaS. Table of Contents Chapter 1: Scalable Indexing for Big Data Processing Chapter 2: Scalability and Cost Evaluation of Incremental Data Processing Using Amazon’s Hadoop Service Chapter 3: Singular Value Decomposition, Clustering, and Indexing for Similarity Search for Large Data Sets in High-Dimensional Spaces Chapter 4: Multiple Sequence Alignment and Clustering with Dot Matrices, Entropy, and Genetic Algorithms Chapter 5: Approaches for High-Performance Big Data Processing : Applications and Challenges Chapter 6: The Art of Scheduling for Big Data Science Chapter 7: Time–Space Scheduling in the MapReduce Framework Chapter 8: GEMS: Graph Database Engine for Multithreaded Systems Chapter 9: KSC-net : Community Detection for Big Data Networks Chapter 10: Making Big Data Transparent to the Software Developers’ Community Chapter 11: Key Technologies for Big Data Stream Computing Chapter 12: Streaming Algorithms for Big Data Processing on Multicore Architecture Chapter 13: Organic Streams : A Unified Framework for Personal Big Data Integration and Organization Towards Social Sharing and Individualized Sustainable Use Chapter 14: Managing Big Trajectory Data : Online Processing of Positional Streams Chapter 15: Personal Data Protection Aspects of Big Data Chapter 16: Privacy-Preserving Big Data Management : The Case of OLAP Chapter 17: Big Data in Finance Chapter 18: Semantic-Based Heterogeneous Multimedia Big Data Retrieval Chapter 19: Topic Modeling for Large-Scale Multimedia Analysis and Retrieval Chapter 20: Big Data Biometrics Processing : A Case Study of an Iris Matching Algorithm on Intel Xeon Phi Chapter 21: Storing, Managing, and Analyzing Big Satellite Data : Experiences and Lessons Learned from a Real-World Application Chapter 22: Barriers to the Adoption of Big Data Applications in the Social Sector
The recent pursuits emerging in the realm of big data processing, interpretation, collection and organization have emerged in numerous sectors including business, industry and government organizations. Data sets such as customer transactions for a mega-retailer, weather monitoring, intelligence gathering, quickly outpace the capacities of traditional techniques and tools of data analysis. The 3V (volume, variability and velocity) challenges led to the emergence of new techniques and tools in data visualization, acquisition, and serialization. Soft Computing being regarded as a plethora of technologies of fuzzy sets (or Granular Computing), neurocomputing and evolutionary optimization brings forward a number of unique features that might be instrumental to the development of concepts and algorithms to deal with big data. This carefully edited volume provides the reader with an updated, in-depth material on the emerging principles, conceptual underpinnings, algorithms and practice of Computational Intelligence in the realization of concepts and implementation of big data architectures, analysis, and interpretation as well as data analytics. The book is aimed at a broad audience of researchers and practitioners including those active in various disciplines in which big data, their analysis and optimization are of genuine relevance. One focal point is the systematic exposure of the concepts, design methodology, and detailed algorithms. In general, the volume adheres to the top-down strategy starting with the concepts and motivation and then proceeding with the detailed design that materializes in specific algorithms and representative applications. The material is self-contained and provides the reader with all necessary prerequisites and augments some parts with a step-by-step explanation of more advanced concepts supported by a significant amount of illustrative numeric material and some application scenarios to motivate the reader and make some abstract concepts mor
### 回答1: Nordig-Unified是一个关于数字电视传输和接收的规范。版本3.1是Nordig-Unified的最新版本。Nordig-Unified旨在统一数字电视技术标准,确保设备之间的互操作性,提供用户友好的体验。 Nordig-Unified版本3.1提供了一些新的功能和改进。首先,它引入了新的视频编码标准,如H.265和VP9,以提高视频质量和效率。这可以让用户在同样的网络带宽下获得更好的观看体验。同时,新版本还增加了对HDR(高动态范围)视频的支持,使得电视画面在亮度和对比度方面更加逼真。 除了视频方面的改进,Nordig-Unified 3.1还有一些新的音频功能。它支持更高质量的音频编码,例如Dolby Atmos和DTS:X,以提供更逼真的音效体验。此外,新版本还增加了对多房间音频传输的支持,使用户可以在不同的房间里同步播放音乐。 Nordig-Unified 3.1还改进了安全性和内容保护措施。它采用更先进的加密算法,以防止未经授权的内容拷贝和播放。这可以保护内容提供商的权益,同时为用户提供更安全的数字娱乐体验。 总之,Nordig-Unified版本3.1是一个功能强大且全面的数字电视规范。它不仅提供了更高质量的视频和音频体验,还改进了安全性和互操作性。这将为用户带来更好的观看和听觉体验,并进一步推动数字电视技术的发展。 ### 回答2: Nordig Unified Version 3.1是一种符合Nordig(北欧电视无线电联合组织)标准的数字电视系统规范。该版本的目标是提供更高质量的数字电视服务和功能,以满足用户对于更好的视听体验和多媒体功能的需求。 Nordig统一版本3.1引入了一些重要的更新和改进。首先,它提供了更高的视频和音频质量,采用了先进的编码和传输技术,以提供更清晰、更鲜艳的图像和更清晰、更逼真的声音。这将使用户能够更好地欣赏电视节目和电影。 此外,Nordig Unified Version 3.1还提供了更强大的多媒体功能。它支持高清视频播放、互动电视和网络接入等多种功能,使用户能够享受到更多的娱乐和信息服务。用户可以轻松地通过电视观看在线视频、浏览网页、使用社交媒体等。 Nordig统一版本3.1还注重改善用户界面和用户体验。它提供了更简洁、更直观的操作界面,使用户可以更方便地浏览电视节目、切换频道、搜索内容等。此外,它还支持个性化设置,用户可以根据自己的喜好调整电视的显示效果、语言设置和电视台排序等。 总的来说,Nordig Unified Version 3.1是一个功能强大、质量优良的数字电视系统规范,旨在提供更好的视听体验和多媒体功能。它将进一步促进数字电视的发展,满足用户对于高质量内容和更多娱乐选择的需求。 ### 回答3: Nordig-Unified Ver. 3.1是一种规范和认证要求,用于数字电视接收设备和电视平台的互操作性。它的目标是确保用户可以在各种不同设备和平台上无缝地使用数字电视服务。 Nordig-Unified Ver. 3.1具体包含了对终端设备、传输和接收系统、电视声音和图像、用户界面和互动以及应用程序的要求。该规范对于电视服务的质量、功能和用户体验有着很高的要求,旨在为用户提供优质的数字电视观看体验。 该规范将对终端设备进行认证,确保其符合Nordig-Unified Ver. 3.1的要求。认证意味着设备已经通过了各种测试和验证,可以与其他符合要求的设备和平台进行互操作。 Nordig-Unified Ver. 3.1的推出对于数字电视产业链的各个环节都有积极影响。对于设备制造商来说,他们可以根据规范要求开发出符合标准的设备,提高产品的竞争力。对于电视平台和服务商来说,他们可以确保自己的系统和服务与市场其他设备兼容,提高用户满意度和市场份额。 总之,Nordig-Unified Ver. 3.1是一项非常重要的数字电视规范,它促进了数字电视设备和平台间的互操作性,提高了数字电视的质量和用户体验。通过统一规范,兼容的设备可以更好地协同工作,为用户创造出更好的观看体验。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

妙BOOK言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值