《大数据管理概论》一第3章‖大数据存储3.1 引言

本节书摘来自华章出版社《大数据管理概论》一书中的第3章,第3.1节,作者 孟小峰,更多章节内容可以访问云栖社区“华章计算机”公众号查看

第3章‖

大数据存储

3.1 引言

大数据存储与管理研究首先面临的是存储技术上的挑战。虽然目前有许多存储技术有望用于大数据存储,但它们都存在局限性[36]。例如:
目前以NoSQL数据库为代表的大规模分布式数据库系统设计了基于磁盘存储的读写方式、索引结构、查询执行、查询优化和恢复策略,但是磁盘固有的读写性能差等弊端限制了大数据存取尤其是大数据分析性能的提升。
以HDFS为代表的大规模分布式文件系统虽然提供了大数据的存储支持能力,但由于这些文件系统在设计时并没有考虑对实时、高性能的数据处理的支持,因此无法满足日益增长的大数据在线分析的需求。此外,随着数据量的急剧增加,元数据的大小也急剧增加,传统的元数据架构、元数据备份管理、元数据动态负载均衡等越来越难适应大数据应用需求。
基于动态随机存储器(Dynamic Random Access Memory,DRAM)的内存数据管理技术试图通过DRAM的高性能优势来克服大数据管理与分析中的瓶颈,但由于DRAM价格较高并且单节点DRAM容量已经很难扩充,限制了当前基于DRAM的主存结构在大规模数据处理中的运用。
鉴于磁盘存储、内存存储在面临大数据管理与分析时的困难,学术界和工业界开始将目光转向新型存储技术。国际上从2000年以来在闪存、相变存储器(Phase Change Memory,PCM)等新型存储器件的制造和产业化方面取得了重要突破,并已开始逐步在各类应用领域(如嵌入式系统、企业计算等)中使用。新型存储所具有的高读写速度、非易失、低能耗等特性给大数据技术的发展提供了新的机遇,因此,以新型存储为基础的大数据存储与管理技术也吸引了国内外学者的关注,包括闪存、PCM等[37,38,39]。闪存是一种可以被电子化擦除和重写的非易失性存储设备,闪存将二进制数据存储在双层MOS管组成的记忆单元阵列中,MOS管中包含“浮动栅”和“控制栅”,数据位是1还是0取决于浮动栅上是否有电子,写入0时,向栅电极和漏极施加高电压,增加在源极和漏极之间传导的电子能量,这样一来,电子就会突破氧化膜绝缘体,进入浮动栅,即成功写入0。读取数据时,向栅电极施加一定的电压,电流大定为1,电流小定为0。固态硬盘(Solid State Drive,SSD)是目前闪存存储的最主要形式,主要由闪存芯片、闪存转换层、地址映射表寄存器、控制器等部件构成。
与磁盘介质相比,闪存具有传输速率高、延迟低、能耗低、噪声低、抗震等优良特性。同时也有一些特殊性质:①写前擦除,对闪存的写操作不是简单地改变某个二进制位,而是需要将整个擦除块的所有二进制位置1,这带来了闪存的读写不对称性,一般采用异地更新的方式缓解写前擦除带来的延迟,减少读写不对称带来的影响;②寿命限制,目前企业级闪存能耐受3万次写循环,消费级闪存仅为3000次;③读写与擦除的单位不一致,一个擦除块中包含若干个闪存页,擦除的单位是一个闪存擦除块(erase block),读写的单位是闪存页。
PCM是一种非易失类型的存储器,主要存储部件由硫系玻璃材质制成。这种材质具有一种特殊的性质,那就是通过施以电脉冲,它可以在非晶态和多晶态这两种状态之间进行转换。PCM兼具速度快、耐用、非挥发性和高密度性等多种优势,其读写数据和恢复数据的速度是现在应用最广泛的非挥发性存储技术闪存的100倍。近年来,PCM的芯片工艺和存储容量有了快速发展。
IBM公司把PCM这一类具有DRAM的存取性能同时又具有持久存储能力的存储介质称为存储级主存(Storage Class Memory,SCM)[39,40,41]。PCM等存储级主存技术具有非易失、存储速度快、易实现高密度等技术特点,在高速与海量存储方面具有巨大的潜能,已被认为是下一代非易失存储技术的最佳解决方案之一。另外,因该技术兼有DRAM的高速随机访问和闪存的非易失特性,模糊了主存和外存的界限,有望突破原有的存储体系架构,实现更高性能的存取。因此,我们可以利用PCM等新型存储器件设计出适合大数据存储与管理的新型存储架构(如图3-1所示)。该架构一方面利用DRAM和PCM等SCM,可让CPU直接控制主存控制器,通过硬件管理的方式实现CPU存取和字节存取;另一方面利用传统的I/O控制器控制SSD和HDD等外存设备,通过软件管理的方式实现进程存取和页式存取。与此同时,可进一步设计新的分布式多节点存储技术,将大数据存取集中在DRAM和PCM上,充分发挥DRAM和PCM的高性能以及PCM的随机存取和非易失优点,而且可以利用分布式多节点存储的优势建立具有高扩展性的大数据存储系统。


《大数据管理概论》一第3章‖大数据存储3.1 引言
上一篇:MongoDB · 特性分析 · MMAPv1 存储引擎原理


下一篇:【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十三:串口模块② — 接收