热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HadoopNo.6之文件在HDFS中的位置

hadoop,no,6,之,文件,在,

在设计一种HDFS模式时,首先应该决定文件的位置.标准化的位置会使得团队之间更容易查找和共享数据.
推荐HDFS目录结构实例.目录结构简化了不同组和用户的权限分配

/user/{username}

只属于特定用户的数据,JAR包和配置文件.通常是用户在试验中使用的非正式数据,不属于业务流程./user下的目录通常只能由所有者进行读取和写入

/etl

ETL(Extract, Transform and Load,提取,转化,加载)工作流正在处理的.处于不同阶段的数据./etl目录由ETL过程(通常是在各自的user目录下进行)与ETL团队的成员读取和写入.拥有ETL过程的不同组别(如业务分析,欺诈识别,以及市场营销)在/etl目录树中都有对应的子目录.

/tmp

工具生成或者用户共享的临时数据.该目录通常通过程序自动清除,不会存储生命周期长的数据.通常每个人都能读取或写入该目录

/data

经过处理并且在整个组织内共享的数据集.这些通常是待分析数据的重要来源,可以促成业务决策,所以不能不分身份角色,任人读取和写入.通常用户只能读取数据,数据由自动化的ETL过程写入.而且需要审计./data目录下的数据通常对于业务非常重要,所以一般只允许自动化的ETL过程写入数据,改变都是要受到控制和审计的.不同的业务团队对于/data目录下的目录拥有不同的读取权限.

/app

几乎囊括Hadoop应用运行所需要的一些,但不包括数据,这里有Jar文件,OOzie工作流定义,Hive HQL文件,等等.应用的代码目录/app用于存储应用所需要的依赖.各版本的目录应该类似于如下结构:

/app/<组>/<应用>/<版本>/<包目录>/<包>

/metadata

存储元数据,尽管大多数表元数据都存储在Hive metastore中,但是还是可能会有一些元数据(如Avro模式文件)可能需要存储在HDFS中.该目录是存储此类元数据的最佳位置.该目录通常对ETL任务可读,而采集数据到Hadoop中的用户(如Sqoop用户)则拥有写权限.


推荐阅读
author-avatar
魔者
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有