读书笔记之大数据存储

1、传统数据存储介质分为磁带、磁盘和光盘三大类,由三种介质分别构成磁带库、磁盘阵列、光盘库三种主要存储设备,其中磁盘设备由于存取速度快、数据查询方便、简单易用、安全的RAID技术等占据一级存储市场的主要份额,磁带设备则以技术成熟、价格低廉占据二级存储市场的重要地位,光盘设备同时具有二者的特点,因此广泛应用。
①磁带库存储:磁带存储技术已经经过了多年的发展,具有稳定、高可用、低成本等诸多优点,可以通过脱机来避免在数据备份、迁移和保护等应用中数据丢失的可能性;
②光盘海量存储:光盘存储技术是一种光学信息存储技术,通过调制激光束在光学圆盘镀膜介质中把信息编码以光点形式记录下来。在记录与读取过程中激光头不直接接触光盘表面,光盘上的记录信息不易被破坏,具有存储密度高、容量大、检索时间短、易于复制、便于保存等诸多优点;
③磁盘阵列海量存储:指使用两个或者两个以上同类型、容量、接口的磁盘,在磁盘控制器的管理下按照特定方式组合成特定磁盘组合,把多个硬盘驱动器连接在一起协同工作,从而快速、准确、安全地读写磁盘数据。

2、磁盘阵列常用RAID级别

  • Level 0(无容错条带磁盘阵列):磁盘并行输入输出,适用于视频、图像编辑及需要高宽带的应用;
  • Level 1(磁盘镜像方式):读取速度是单个磁盘的两倍,写入速度与单个磁盘相同,适用于会计、金融、付款等需要高可靠性的应用;
  • Level 5(交叉存取加分布奇偶校验):最快的读取速度,中等的写入速度,适用于文件、数据库Web、Email等应用服务器;
  • Level 10(镜像条带集):磁盘并行输入输出,适用于数据库服务器和需要高可靠性、高性能服务器;
  • Level 0+1(条带集镜像):读取速度是单个磁盘的两倍,写入速度与单个磁盘相同,适用于图形应用、通用文件服务器。

3、存储模式:数据存储需要系统具有良好的数据容错性能和系统稳定性,在发生部分数据错误时,系统可以在线恢复和重建数据,而不影响系统的正常运行。
直连式存储(DAS):磁盘驱动器和服务器直接连接,存储作为外围设备,在这种存储结构中,数据管理是以服务器为中心的,而且所有应用软件都是和存储子系统配套的。适用于一个或有限几个服务器环境,存储容量增加时存储供应的效率会变得越来越低,而且可升级和扩展性受到很大限制。
网络存储:分为网络附加存储(NAS,Network Attached Storage)、光纤存储区域网FC-SAN、IP存储区域网IP-SAN。

  • NAS将存储设备连接到现有网络上来提供数据和文件服务,一般由存储硬件、操作系统以及其上的文件系统几个部分组成,通过网络直接连接磁盘阵列,磁盘阵列具有高容量、高效能、高可靠等特征。NAS将存储设备通过标准的网络拓扑结构连接,可以无须服务器直接上网,不依赖通用的操作系统;
  • FC-SAN指的是通过一个单独的高速光纤网络把存储设备和挂在TCP/IP网络上的服务器群相连,当有海量数据的存取需求时,数据可以通过存储区域网在相关服务器和后台存储设备之间高速传输。以光纤通道为基础,不但提供了主机和存储设备之间的高速互联,实现了存储设备的共享,服务器通过存储网络直接同存储设备交换数据,不占用LAN的网络资源;
  • IP-SAN主要部分采用光纤通道,将iSCSI卡集成到NAS存储设备上,支持数据块形式的I/O访问,最后发展成主机通过带TCP卸载引擎的iSCSI主机总线适配器卡接入IP网络来访问iSCSI存储设备。

数据虚拟存储:将各种物理存储设备整合为一个整体,从而实现在公共控制平台下集中存储资源,统一存储设备的管理,方便用户的数据操作,简化复杂的存储管理配置,使系统能够提供完整、便捷的数据存储功能。虚拟存储技术在用户操作系统看到的存储设备与实际物理存储设备之间搭建了一个虚拟的操作平台,使得从应用程序一直到最终的数据端都可以实施虚拟存储。虚拟存储不仅可以降低存储资源管理的复杂性,而且可以带给系统高可用性和高可靠性,从而降低数据存储管理成本。

4、大数据存储面临的问题:一是存储数据的成本在不断增加,如何削减开支节约成本以保证高可用性;二是数据存储容量爆炸式增长且难以预估;三是越来越复杂的环境使得存储的数据无法管理。企业信息架构如何适应现状去提供一个理想的解决方案,目前业界有存储虚拟化(通过聚合多个存储设备的空间,灵活部署存储空间的分配,从而实现现有存储空间高利用率)和容量扩展等发展方向。

5、为了支持大规模数据的存储、传输与处理,针对海量数据存储目前主要开展如三个方向的研究:
虚拟存储技术:核心工作是物理存储设备到单一逻辑资源池的映射,通过虚拟化技术,为用户和应用程序提供了虚拟磁盘或虚拟卷,用户可以根据需求对它进行任意分割、合并、重新组合等操作,并分配给特定的主机或应用程序,为用户隐藏或屏蔽了具体的物理设备的各种物理特性,可以提高存储利用率,降低成本,简化存储管理。
高性能I/O:数据共享是集群系统的一个基本需求,当前经常使用的是网络文件系统NFS或CIFS,当一个计算任务在Linux集群上运行时,计算结点首先通过NFS协议从存储系统中获取数据,然后进行计算处理,最后将计算结果写入存储系统。
网格存储系统:网格存储系统应该能够满足海量存储、全球分布、快速访问、统一命名的需求,主要研究的内容包括网格文件名字服务、存储资源管理、高性能的广域网数据传输、数据复制等。

6、海量数据存储的处理方法:选用优秀的数据库工具、编写优良的程序代码、对海量数据进行分区操作、建立广泛的索引、建立缓存机制、加大虚拟内存、分批处理、使用临时表和中间表、优化查询SQL语句、使用文本格式进行处理、建立视图、定制强大的清洗规则和出错处理机制、考虑操作系统的问题、使用数据仓库和多维数据库存储、使用采样数据进行数据挖掘、海量数据关联存储。

7、大数据存储生命周期:数据采集ETL、NoSQL、云存储、分布式系统、数据可视化。大数据分析具有数据量大、查询分析复杂等特点,通过ETL技术从源系统中提取数据资源,并转换为标准格式,再使用NoSQL数据库进行数据库存取管理,充分利用网络云存储技术节约企业存储成本、提高效率的优势,通过分布式网络文件系统将数据信息存储到整个互联网络资源中,并用可视化的操作界面随时满足用户的数据处理需求。

8、分布式存储结构

  • 集群存储:将若干个普通性能的存储系统联合起来组成“存储的集群”,采用开放式的架构,通过分布式操作系统的作用,会在前端和后端都实现负载均衡,具有高扩展性,一般包括存储结点、前端网络、后端网络三个构成元素,每个元素都可以容易地扩展和升级,无需改变集群存储的架构;
  • 集群并行存储:采用分布式文件系统与并行文件系统相混合的方式,提高了并行或分区I/O的整体性能,特别是读取操作密集型以及大型文件的访问,获取更大的命名空间或可编址的阵列,通过在互相独立的存储设备上复制数据来提高可用性。通过廉价的集群存储系统大幅降低成本并解决扩展性方面的难题,多在大型数据中心或高性能计算中心使用;
  • P2P存储:用P2P的方式在广域网构建大规模分布式存储系统,系统采用无中心结构,节点之间对等,通过互相合作来完成用户任务,用户通过该平台自主寻找其他结点进行数据备份和存储空间交换。为用户构建了大规模存储交换的系统平台,可以跨多个大型数据中心或高性能计算中心使用;
  • 面向对象存储:是SAN和NAS的有机结合,是一种存储系统的发展趋势,文件系统中的用户组件部分基本与传统文件系统相同,而将文件系统中的存储组件部分下移到智能存储设备,用户对于存储设备的访问接口由传统的块接口变成对象接口。

9、分布式文件系统的典型应用
NFS——利用UNIX系统中的虚拟文件系统(VFS,Virtual File System)机制,将客户机对文件系统的请求通过规范的文件访问协议和远程过程调用,转发到服务器端处理;而服务器端在VFS上通过本地文件系统完成文件的处理,实现了全局的分布式文件系统。
GPFS(General Parallel File System)——磁盘数据结构可以支持大容量的文件系统和大文件,有效地克服了系统中任意单个结点的失效、网络通信故障、磁盘失效等异常事件,支持在线动态添加减少存储设备。
-采用分片存储、较大的文件系统块、数据预读等方法获得了较高的数据吞吐率;
-采用扩展哈希技术来支持含有大量文件和子目录的大目录,提高文件的查找和检索效率;
-采用不同粒度的分布式锁解决系统中的并发访问和数据同步问题:字节范围的锁用于用户数据的同步,动态选择元数据节点进行元数据的集中管理,具有集中式线索的分布式锁管理整个系统的空间分布;
-采用日志技术对系统进行在线灾难恢复,每个节点都有各自独立的日志。
Storage Tank——除了具有一般分布式文件系统的特性外,采用SAN作为整个文件系统的数据存储和传输路径,采用带外(out-of-band)结构,将文件系统元数据在高速以太网上传输,由专门的元数据服务器来处理和存储。
所采用的积极缓存策略使得文件元数据和数据尽量在客户端缓存,即使打开的文件被关闭,都可以在下次使用时利用已经缓存的文件信息。
GFS——由一个master结点和大量chunkserver结点构成,并被许多客户访问,文件被分成64MB的块,减少了元数据的大小,使得master结点能够方便地将元数据放置在内存中以提升访问效率。数据块分布在集群机器上,使用Linux的文件系统存放,同时每块文件至少有三份以上冗余,文件操作以添加为主,充分考虑了硬盘线性吞吐量大和随机读点慢的特点。为了保证大规模数据的并行处理,引入了MapReduce编程模型。
Hadoop——HDFS(Hadoop Distributed File System)的核心数据结构是FsImage(存储整个文件系统命名空间,包括文件块的映射表和文件系统的配置)和Editlog(事务日志,持久记录每一个对文件系统元数据的改变)。
HDFS有着高容错性的特点,并且用于部署在低廉的硬件上,实现了异构软硬件平台间的可移植性。为了减少全局带宽消耗读延迟,它会尝试返回一个读操作离他最近的副本,并且会自动地维护数据的多份复制,并且在任务失败后能自动地重新部署计算任务,实现了故障检测和自动快速恢复。HDFS提供的接口消除了网络拥堵,提高了系统的整体吞吐量。

10、云存储:通过集群应用、网络技术或分布式文件系统等,将网络中大量各种不同的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。由网络设备、存储设备、服务器、应用软件、公用访问接口、接入网和客户端程序等组成,以存储设备为核心,通过应用软件对外提供数据存储和业务访问服务。

11、云存储架构

  • 存储层:存储数量庞大且分布在不同地域,彼此通过广域网、互联网或光纤通道网络连接在一起,在存储设备之上是一个统一存储设备管理系统,实现存储设备的逻辑虚拟化管理、多链路冗余管理,以及硬件设备的状态监控和故障维护;
  • 基础管理层:通过集群、分布式文件系统和网格计算等技术,实现云存储设备之间的协同工作,使多个存储设备可以对外提供同一种服务,并提供强大的数据访问性能。数据加密技术保证云存储中的数据不会被未授权的用户访问,数据备份和容灾技术可以保证云存储中的数据不会丢失,保证云存储自身的安全稳定;
  • 应用接口层:不同的云存储运营商根据业务类型,开发不同的服务接口,提供不同的服务,例如视频监控、视频点播应用平台、网络硬盘等;
  • 访问层:授权用户可以通过标准的公用应用接口来登录云存储系统,享受云存储服务。

12、云存储的数据缩减技术能够满足海量信息爆炸式增长趋势,在一定程度上节约企业存储成本,提高效率,包括自动精简配置、自动存储分层、重复数据删除、数据压缩四个方面。

13、①数据结构:指数据的组织形式或数据之间的联系,D表示数据,R表示数据对象之间存在的关系集合,DS=(D,R)称为数据结构;
数据结构类型:分为逻辑结构(从逻辑角度来观察数据、分析数据,与数据的存储位置无关)和物理结构(数据在计算机中存放的结构);
数据模型:按照图论理论建立的层次结构模型(1:N)、网状结构模型和按照关系理论建立的关系结构模型。

14、结构化查询语言(SQL,Structured Query Language):一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新、管理关系数据库系统,同时也是数据库脚本文件的扩展名,语句可以嵌套,具有极大的灵活性和强大的功能。具有五种数据类型:字符型、文本型、数值型、逻辑型、日期型。

15、NoSQL非结构化数据库:为了解决大规模数据集合多重数据种类带来的挑战,可以处理大量的多结构化数据,为最终用户和自动化的大数据应用程序提供大量存储在多结构化数据中的离散数据。目前可用的NoSQL数据库包括HBase、MongoDB、CouchDB、DynamoDB、Cassandra、MarkLogic,可分为键值存储数据库、列存储数据库、文档型数据库、图形数据库四大类。

16、CAP原理:在分布式系统中,一致性(Consistency)、可用性(Availability)、分区容忍性(Partition tolerance)这三个要素最多只能同时实现两点,不可能三者兼顾。对于分布式数据系统,分区容忍性是基本需求;对于大多数Web应用,用牺牲一致性来换取高可用性。

17、大规模并行分析数据库:不同于传统的数据仓库,能够以必须的最少的数据建模,快速获取大量的结构化数据,可以向外扩展以容纳TB甚至PB级数据,支持近乎实时的复杂SQL查询结果(交互式查询功能),基本特性包括以下几个方面。

  • 大规模并行处理的能力——采用大规模并行处理同时支持多台机器上的数据采集、处理和查询;
  • 无共享架构——可确保分析数据库环境中没有单点故障,每个节点独立于其他结点,如果一台机器出现故障,其他机器能够继续运行;
  • 列存储结构——大多数大规模并行分析数据库采用列存储结构,而大多数关系型数据库以行结构存储和处理数据。在列存储环境中,由包含必要数据的列决定查询语句的答案;
  • 强大的数据压缩功能——允许分析数据库收集和存储更大量的数据,与传统数据库相比占用更少的硬件资源,数据编码(包括数据压缩以及相关的技术)是有效地扩展到海量数据的关键;
  • 商用硬件——像Hadoop集群一样,大多数大规模并行分析数据库运行在戴尔、IBM等厂商现成的商用硬件上,使它们能够以具有成本效益的方式向外扩展;
  • 在内存中进行数据处理——有些使用动态RAM或闪存进行实时数据处理,有些完全在内存中运行数据,其他则采用混合方式,即用较便宜但低性能的磁盘内存处理“冷数据”,用动态RAM或闪存处理“热数据”。

18、大数据方法的互补:Hadoop、NoSQL和大规模并行分析数据库不是互相排斥的,彼此可以共存于许多企业,Hadoop擅长处理和分析大量分布式的非结构化数据,以分批的方式进行历史分析,NoSQL数据库擅长为基于Web的大数据应用程序提供近实时地多结构化数据存储和处理,大规模并行分析数据库最擅长对大容量的主流结构化数据提供接近实时的分析。

19、数据仓库(DW,Data Warehouse):既不产生也不消费数据,作为一个中间平台集成化地存储数据,为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合及业务流程改进、监视时间、成本、质量以及控制,是决策支持系统和联机分析应用数据源的结构化数据环境。数据仓库中的数据是对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总、整理得到的,消除了源数据中的不一致性,以保证数据仓库内的信息是关于整个企业的一致的全局信息,通常具有效率高、数据质量保证、扩展性和面向主题等特点。

20、企业的数据处理分为两类:一类是操作型处理(联机事务处理),是针对具体业务在数据库联机的日常操作,通常对少数记录进行查询、修改;另一类是分析型处理,一般针对某些主题的历史数据进行分析,支持管理决策。两者具有的不同特征主要体现在以下几个方面:
①处理性能——日常业务涉及频繁、简单的数据存取,对操作型处理的性能要求较高,需要数据库能够在短时间内做出反应;
②数据集成——企业的操作型处理通常比较分散,传统数据库面向应用的特性使数据集成困难;
③数据更新——操作型处理主要由原子事务组成,数据更新频繁,需要并行控制和恢复机制;
④数据时限——操作型处理主要服务于日常业务操作;
⑤数据综合——操作型处理系统通常只有简单的统计功能。

21、数据仓库系统的构成
①数据仓库数据库:是整个数据仓库环境的核心,也是数据存放的地方和提供对数据检索的支持,特点是海量数据支持和快速检索技术;
②数据抽取工具:把数据从各种各样的存储方式中拿出来,进行必要的转化、整理,再存放到数据仓库内,对各种不同数据存储方式的访问能力是数据抽取工具的关键。数据转换包括删除对决策应用没有意义的数据段、转换到统一的数据名称和定义、计算统计和衍生数据、将默认值数据赋给默认值、把不同的数据定义方式统一;
③元数据(解释性数据):是描述数据仓库内数据的结构和建立方法的数据,按用途不同分为技术元数据和商业元数据,主要目的是使数据仓库的设计、部署、操作、管理达成一致。元数据还是数据仓库运行和维护的中心,并为访问数据仓库提供了一个信息目录;
④访问工具:为用户访问数据仓库提供手段,有数据查询和报表工具、应用开发工具、在线分析(OLAP)工具等;
⑤数据集市:为了特定的应用目的或应用范围而从数据仓库中独立出来的一部分数据,也可称为部门数据或主题数据;
⑥数据仓库管理:包括安全和特权管理、跟踪数据的更新、数据质量检查、管理和更新元数据、审计和报告数据仓库的使用和状态、删除数据、复制、分割和分发数据、备份和恢复以及存储管理;
⑦信息发布系统:把数据仓库中的数据或其他相关数据发送给不同地点或用户,基于Web的信息发布系统是应对多用户访问的最有效的方法。

22、联机事务处理OLTP:企业级关系数据库管理软件旨在集中存储由大公司或政府机构中的日常事务所产生的数据,这些系统基于计算机并记录企业的业务事务;
联机分析处理OLAP:使分析人员、管理人员和执行人员能够从多种角度,对原始数据中转化出来的、能够真正为用户所理解的、并真实反映企业特性的信息进行快速、一致、交互地存取,从而获得对数据的更深入的了解。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值