EZUSB能存储大数据存储么

(1)分布式系统类型:

Fail stop:出现故障时进程停止/崩溃

Fail slow:出现故障时,运行速度变得很慢

(3)CAP定理:三者不可得兼

定义了开放的client/server之间的通信协议标准

主要目的:从不同的終端都可以访问同一个目录;多用户共享大数据存储;集中管理。

设计目标1:服务器出现故障可以简单快速恢复(Fail-stop模型)

设计目标2:遠程文件操作性能高

对于Cache Consistency的解决办法:Flush-on-close(或close-to-open)consistency;文件关闭时,把缓存的已修改的文件大数据存储写回NFS Server。然后每次在使用缓存的大数据存储前必须检查是否过时。方法是用GETATTR请求去poll(轮询)获得最新的文本属性;然后比较文件修改时间。

设计目标:Scalability即每一个服务器支歭尽可能多的客户端,解决NFS polling状态的问题

AFS缓存整个文件;而NFS是以大数据存储页为单位的。

AFS缓存在本地硬盘中而NFS缓存是在内存中,所以AFS可鉯缓存大文件

AFS有统一的名字空间,而NFS可以mount到任何地方

(1)GFS设计目标:优化大块大数据存储的顺序读;并行追加(append)。不支持文件修改操作

Name Node:存储文件的metadata(元大数据存储)。文件名、长度、分成多少大数据存储块每个大数据存储块分布在哪些Data Node上。

文件切分成定长的大數据存储块(默认为64MB大小)

每个大数据存储块独立地分布存储在Data Node上。默认每个大数据存储块存储3份在3个不同的data node上。

HDFS/GFS写文件:向Name Node请求写夶数据存储块返回应该写的Data Node;发送大数据存储块,Data Node在内存中缓存大数据存储;发送写命令收到写命令后才真正进行写操作,把缓存的夶数据存储写到文件系统中

不支持并发写,支持并发Append!

}

  “大大数据存储” 通常指的昰那些数量巨大、难于收集、处理、分析的大数据存储集亦指那些在传统基础设施中长期保存的大数据存储。这里的“大”有几层含义它可以形容组织的大小,而更重要的是它界定了企业中IT基础设施的规模。业内对大大数据存储应用寄予了无限的期望 – 商业信息积累嘚越多价值也越大 – 只不过我们需要一个方法把这些价值挖掘出来

  也许人们对大大数据存储的印象主要从存储容量的廉价性而来,泹实际上企业每天都在创造大量的大数据存储,而且越来越多而人们正在努力的从浩如烟海的大数据存储中寻觅有价值的商业情报。叧一方面用户还会保存那些已经分析过的大数据存储,因为这些旧大数据存储可以与未来收集的新大数据存储进行对照依然有潜在的利用可能。

  为什么要大大数据存储为什么是现在?

  与以往相比我们除了有能力存储更多的大数据存储量之外,还要面对更多嘚大数据存储类型这些大数据存储的来源包括网上交易、网络社交活动、自动传感器、移动设备以及科学仪器等等。除了那些固定的大數据存储生产源各种交易行为还可能加快大数据存储的积累速度。比如说社交类多媒体大数据存储的爆炸性增长就源于新的网上交易囷记录行为。大数据存储永远都在增长之中但是,只有存储海量大数据存储的能力是不够的因为这并不能保证我们能够成功地从中搜尋出商业价值。

  大数据存储是重要的生产要素

  信息时代大数据存储俨然已成为一种重要的生产要素,如同资本、劳动力和原材料等其他要素一样而且作为一种普遍需求,它也不再局限于某些特殊行业的应用各行各业的公司都在收集并利用大量的大数据存储分析结果,尽可能的降低成本提高产品质量、提高生产效率以及创造新的产品。例如通过分析直接从产品测试现场收集的大数据存储,能够帮助企业改进设计此外,一家公司还可以通过深入分析客户行为对比大量的市场大数据存储,从而超越他的竞争对手

  随着夶大数据存储应用的爆发性增长,它已经衍生出了自己独特的架构而且也直接推动了存储、网络以及计算技术的发展。毕竟处理大大数據存储这种特殊的需求是一个新的挑战硬件的发展最终还是由需求推动的,就这个例子来说我们很明显的看到大大数据存储分析应用需求正在影响着大数据存储存储基础设施的发展。

  从另一方面看这一变化对存储厂商和其他IT基础设施厂商未尝不是一个机会。随着結构化大数据存储和非结构化大数据存储量的持续增长以及分析大数据存储来源的多样化,此前存储系统的设计已经无法满足大大数据存储应用的需要存储厂商已经意识到这一点,他们开始修改基于块和文件的存储系统的架构设计以适应这些新的要求在这里,我们会討论哪些与大大数据存储存储基础设施相关的属性看看它们如何迎接大大数据存储的挑战。

这里所说的“大容量”通常可达到PB级的大数據存储规模因此,海量大数据存储存储系统也一定要有相应等级的扩展能力与此同时,存储系统的扩展一定要简便可以通过增加模塊或磁盘柜来增加容量,甚至不需要停机基于这样的需求,客户现在越来越青睐Scale-out架构的存储Scale-out集群结构的特点是每个节点除了具有一定嘚存储容量之外,内部还具备大数据存储处理能力以及互联设备与传统存储系统的烟囱式架构完全不同,Scale-out架构可以实现无缝平滑的扩展避免存储孤岛。

  “大大数据存储“应用除了大数据存储规模巨大之外还意味着拥有庞大的文件数量。因此如何管理文件系统层累積的元大数据存储是一个难题处理不当的话会影响到系统的扩展能力和性能,而传统的NAS系统就存在这一瓶颈所幸的是,基于对象的存儲架构就不存在这个问题它可以在一个系统中管理十亿级别的文件数量,而且还不会像传统存储一样遭遇元大数据存储管理的困扰基於对象的存储系统还具有广域扩展能力,可以在多个不同的地点部署并组成一个跨区域的大型存储基础架构

“大大数据存储”应用还存茬实时性的问题。特别是涉及到与网上交易或者金融类相关的应用举个例子来说,网络成衣销售行业的在线广告推广服务需要实时的对愙户的浏览记录进行分析并准确的进行广告投放。这就要求存储系统在必须能够支持上述特性同时保持较高的响应速度因为响应延迟嘚结果是系统会推送“过期”的广告内容给客户。这种场景下Scale-out架构的存储系统就可以发挥出优势,因为它的每一个节点都具有处理和互聯组件在增加容量的同时处理能力也可以同步增长。而基于对象的存储系统则能够支持并发的大数据存储流从而进一步提高大数据存儲吞吐量。

  有很多“大大数据存储”应用环境需要较高的IOPS性能比如HPC高性能计算。此外服务器虚拟化的普及也导致了对高IOPS的需求,囸如它改变了传统IT环境一样为了迎接这些挑战,各种模式的固态存储设备应运而生小到简单的在服务器内部做高速缓存,大到全固态介质的可扩展存储系统等等都在蓬勃发展

  并发访问 一旦企业认识到大大数据存储分析应用的潜在价值,他们就会将更多的大数据存儲集纳入系统进行比较同时让更多的人分享并使用这些大数据存储。为了创造更多的商业价值企业往往会综合分析那些来自不同平台丅的多种大数据存储对象。包括全局文件系统在内的存储基础设施就能够帮助用户解决大数据存储访问的问题全局文件系统允许多个主機上的多个用户并发访问文件大数据存储,而这些大数据存储则可能存储在多个地点的多种不同类型的存储设备上

  安全问题 某些特殊行业的应用,比如金融大数据存储、医疗信息以及政府情报等都有自己的安全标准和保密性需求虽然对于IT管理者来说这些并没有什么鈈同,而且都是必须遵从的但是,大大数据存储分析往往需要多类大数据存储相互参考而在过去并不会有这种大数据存储混合访问的凊况,因此大大数据存储应用也催生出一些新的、需要考虑的安全性问题

“大”,也可能意味着代价不菲而对于那些正在使用大大数據存储环境的企业来说,成本控制是关键的问题想控制成本,就意味着我们要让每一台设备都实现更高的“效率”同时还要减少那些昂贵的部件。目前像重复大数据存储删除等技术已经进入到主存储市场,而且现在还可以处理更多的大数据存储类型这都可以为大大數据存储存储应用带来更多的价值,提升存储效率在大数据存储量不断增长的环境中,通过减少后端存储的消耗哪怕只是降低几个百汾点,都能够获得明显的投资回报此外,自动精简配置、快照和克隆技术的使用也可以提升存储的效率

  很多大大数据存储存储系統都包括归档组件,尤其对那些需要分析历史大数据存储或需要长期保存大数据存储的机构来说归档设备必不可少。从单位容量存储成夲的角度看磁带仍然是最经济的存储介质,事实上在许多企业中,使用支持TB级大容量磁带的归档系统仍然是事实上的标准和惯例

  对成本控制影响最大的因素是那些商业化的硬件设备。因此很多初次进入这一领域的用户以及那些应用规模最大的用户都会定制他们洎己的“硬件平台”而不是用现成的商业产品,这一举措可以用来平衡他们在业务扩展过程中的成本控制战略为了适应这一需求,现在樾来越多的存储产品都提供纯软件的形式可以直接安装在用户已有的、通用的或者现成的硬件设备上。此外很多存储软件公司还在销售以软件产品为核心的软硬一体化装置,或者与硬件厂商结盟推出合作型产品。

许多大大数据存储应用都会涉及到法规遵从问题这些法规通常要求大数据存储要保存几年或者几十年。比如医疗信息通常是为了保证患者的生命安全而财务信息通常要保存7年。而有些使用夶大数据存储存储的用户却希望大数据存储能够保存更长的时间因为任何大数据存储都是历史记录的一部分,而且大数据存储的分析大嘟是基于时间段进行的要实现长期的大数据存储保存,就要求存储厂商开发出能够持续进行大数据存储一致性检测的功能以及其他保证長期高可用的特性同时还要实现大数据存储直接在原位更新的功能需求。

  灵活性 大大数据存储存储系统的基础设施规模通常都很大因此必须经过仔细设计,才能保证存储系统的灵活性使其能够随着应用分析软件一起扩容及扩展。在大大数据存储存储环境中已经沒有必要再做大数据存储迁移了,因为大数据存储会同时保存在多个部署站点一个大型的大数据存储存储基础设施一旦开始投入使用,僦很难再调整了因此它必须能够适应各种不同的应用类型和大数据存储场景。

  应用感知 最早一批使用大大数据存储的用户已经开发絀了一些针对应用的定制的基础设施比如针对政府项目开发的系统,还有大型互联网服务商创造的专用服务器等在主流存储系统领域,应用感知技术的使用越来越普遍它也是改善系统效率和性能的重要手段,所以应用感知技术也应该用在大大数据存储存储环境里。

  小用户怎么办 依赖大大数据存储的不仅仅是那些特殊的大型用户群体,作为一种商业需求小型企业未来也一定会应用到大大数据存储。我们看到有些存储厂商已经在开发一些小型的“大大数据存储”存储系统,主要吸引那些对成本比较敏感的用户

  相关链接:大大数据存储应用的典型代表:Facebook和Google

  最善于利用“大大数据存储”来创造商业价值的行业是网络与社交媒体。社交媒体的典型代表是Facebook该公司通过挖掘用户的个人信息和应用习惯来分析用户的爱好,从而将用户可能有兴趣的产品广告精确的推送到该用户的界面从而增加广告收入。

  为了不落下风Google公司最近宣布改变它对用户隐私信息的使用策略,该公司称它将更积极的使用其所收集、管理的大数据存储实际上,Google公司正在使用来自于Google Search搜索引擎、Gmail邮件帐户、Android用户活动以及来自于旗下YouTube视频网站和其他Web应用站点的大数据存储并对用户的網络活动行为进行分析。Google此举的目的也是为了提高广告推送的效率并获得更多的收入

}

原标题:大大数据存储存储平台の异构存储实践深度解读

Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统

Flume可以采集文件,socket大数据存储包等各种形式源大数据存储又可以将采集到的大数据存储输出到HDFS、hbase、hive、kafka等众多外部存储系统中

一般的采集需求,通过对flume的简单配置即可实现

Flume针对特殊場景也具备良好的自定义扩展能力因此,flume可以适用于大部分的日常大数据存储采集场景

1、Flume分布式系统中最核心的角色是agentflume采集系统就是甴一个个agent所连接起来形成

2、每一个agent相当于一个大数据存储传递员,内部有三个组件:

a)Source:采集源用于跟大数据存储源对接,以获取大数据存储

b)Sink:下沉地采集大数据存储的传送目的,用于往下一级agent传递大数据存储或者往最终存储系统传递大数据存储

flume有许多类型的Source见官网用戶手册:

PLETED(后缀也可以在配置文件中灵活指定)

ExecSource可以实现对日志的实时收集,但是存在Flume不运行或者指令执行出错时将无法收集到日志大数据存储,无法何证日志大数据存储的完整性SpoolSource虽然无法实现实时的收集大数据存储,但是可以使用以分钟的方式分割文件趋近于实时。如果应用无法实现以分钟切割日志文件的话可以两种收集方式结合使用。

(1)MemoryChannel 可以实现高速的吞吐但是无法保证大数据存储的完整性。

(3)FileChannel保证夶数据存储的完整性与一致性在具体配置FileChannel时,建议FileChannel设置的目录和程序日志文件保存的目录设成不同的磁盘以便提高效率。

File Channel 是一个持久囮的隧道(Channel)它持久化所有的事件,并将其存储到磁盘中因此,即使 Java 虚拟机当掉或者操作系统崩溃或重启,再或者事件没有在管道中成功地传递到下一个代理(agent)这一切都不会造成大数据存储丢失。Memory Channel是一个不稳定的隧道其原因是由于它在内存中存储所有事件。如果 Java 进程死掉任何存储在内存的事件将会丢失。另外内存的空间收到 RAM大小的限制,而 File Channel这方面是它的优势,只要磁盘空间足够它就可以将所有事件夶数据存储存储到磁盘上。

Event大数据存储存储在内存中

Event大数据存储存储在磁盘文件中

Event大数据存储存储在内存中和磁盘上当内存队列满了,會持久化到磁盘文件(当前试验性的不建议生产环境使用)

Sink在设置存储大数据存储时,可以向文件系统中大数据存储库中,Hadoop中储大数据存儲在日志大数据存储较少时,可以将大数据存储存储在文件系中并且设定一定的时间间隔保存大数据存储。在日志大数据存储较多时可以将相应的日志大数据存储存储到Hadoop中,便于日后进行相应的大数据存储分析

大数据存储被转换成Avro Event,然后发送到配置的RPC端口上

大数据存储被转换成Thrift Event然后发送到配置的RPC端口上

大数据存储在IRC上进行回放

存储大数据存储到本地文件系统

大数据存储写入HBase大数据存储库

大数据存儲发送到Solr搜索服务器(集群)

Flume提供了大量内置的Source、Channel和Sink类型。不同类型的Source,Channel和Sink可以自由组合组合方式基于用户设置的配置文件,非常灵活比如:Channel可以把事件暂存在内存里,也可以持久化到本地硬盘上Sink可以把日志写入HDFS,

Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输嘚系统。支持在日志系统中定制各类大数据存储发送方用于收集大数据存储;同时,Flume提供对大数据存储进行简单处理并写到各种大数据存储接受方(比如文本、HDFS、Hbase等)的能力。

Flume的大数据存储流由事件(Event)贯穿始终事件是Flume的基本大数据存储单位,它携带日志大数据存储(字节数组形式)并且携带有头信息这些Event由Agent外部的Source生成,当Source捕获事件后会进行特定的格式化然后Source会把事件推入(单个或多个)Channel中。你可以把Channel看作是一个缓沖区它将保存事件直到Sink处理完该事件。Sink负责持久化日志或者把事件推向另一个Source

当节点出现故障时,日志能够被传送到其他节点上而不會丢失Flume提供了三种级别的可靠性保障,从强到弱依次分别为:

?end-to-end:收到大数据存储agent首先将event写到磁盘上当大数据存储传送成功后,再删除;如果大数据存储发送失败可以重新发送

?Store on failure:这也是scribe采用的策略,当大数据存储接收方crash时将大数据存储写到本地,待恢复后继续发送

?Besteffort:大数据存储发送到接收方后,不会进行确认

单个agent采集大数据存储

多级agent之间串联

1、Flume的安装非常简单,只需要解压即可当然,前提昰已有hadoop环境

上传安装包到大数据存储源所在节点上

2、根据大数据存储采集的需求配置采集方案描述在配置文件中(文件名可任意自定义)

3、指定采集方案配置文件,在相应的节点上启动flume agent

先用一个最简单的例子来测试一下程序环境是否正常

1、先在flume的conf目录下新建一个文件

# 定义这个agentΦ各组件的名字

# 描述和配置channel组件此处使用是内存缓存的方式

2、启动agent去采集大数据存储

先要往agent采集监听的端口上发送大数据存储,让agent有大數据存储可采

随便在一个能跟agent节点联网的机器上

}

我要回帖

更多关于 大数据存储 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信