首页>动态 >内容

Google更新Cloud Storage的Hadoop连接程式强化栏式资料格式支援

动态2021-02-20 14:02:57
最佳答案

Google释出新版用来连结Cloud Storage的HDFS(Hadoop Distributed File System)连接程式(GCS Connector),这个新版连结程式提供了两个主要的功能更新,第一是支援栏式档案格式以提升资料处理效率,第二个则为协作锁定功能,独立Cloud Storage目录修改,避免可能互相影响的修改受到干扰。

GCS连接程式可在诸如资料节点、Mapper、Reducer或是Spark Executor等Hadoop JVM上运作,让开发者的工作负载能够存取Cloud Storage,这些工作负载包括Hadoop和Spark的任务,以及Hadoop相容的档案系统CLI,都能使用GCS连接程式,直接对Cloud Storage进行资料读写操作。

GCS连接程式预先为Cloud Dataproc以及GCP託管的Hadoop和Spark进行配置,可简单地安装,并用在其他的Hadoop发布版本中,像是MapR、Cloudera以及Hortonworks,能够简化企业将内部HDFS资料搬迁到云端的工作。这个由GCP支援的GCS连接程式完全开源,Google在与推特工程团队合作后,使其设计与实作更能应付PB级规模。

新版GCS连接程式的第一个重要更新,是改进了处理Parquet和ORC等栏式档案格式的效能。Google提到,由于推特在2018年的时候将Hadoop工作负载搬迁到Google云端上,并且大规模地对20 PB以栏式档案格式储存的资料,进行大资料SQL查询测试,而推特为让GCS连接程式符合自家高效能的需求,对该专案做出贡献,让连接程式能支援只读取查询引擎需要的资料栏,进而提升读取效率。

而Google进一步优化这项改进,使其支援fadvise功能。过去Cloud Storage连接程式对MapReduce类型的工作负载进行了最佳化,其资料档案的处理都是按顺序处理,Google表示,由于栏式档案格式如Parquet或ORC,其主要目标都是让查询引擎能聪明地仅查询需要的档案区块。而在Google为GCS连接程式实作了类似Linux中的fadvise功能,让应用程式可以为核心提供I/O存取模式的提示,以达成谓词下推(Predicate Pushdown)的功能。

另一个新版GCS连接程式的功能便是协作锁定(Cooperative Locking),该功能可以独立Hadoop档案系统壳层以及其他HCFS API介面的目录修改操作。Google提到,虽然Cloud Storage上的物件层级非常一致,但本身却没有原生支援目录语意,系统应该定义像是当两个用户对同一个目录发出冲突的命令时,所需要进行的行为。

Google与推特Hadoop团队合作,在GCS连接程式中实作了协同锁定,这项功能可以避免Cloud Storage的目录操作冲突所发生资料不一致,并有助于目录操作失败的恢复工作,同时也使得从HDFS的操作转换成Cloud Storage更简单。

免责声明:本文由用户上传,如有侵权请联系删除!