HDFS

Hadoop入门进阶课程12--Flume介绍、安装与应用案例

烈酒焚心 提交于 2020-02-04 13:58:38
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan 。该系列课程是应邀实验楼整理编写的,这里需要赞一下实验楼提供了学习的新方式,可以边看博客边上机实验,课程地址为 https://www.shiyanlou.com/courses/237 【注】该系列所使用到安装包、测试数据和代码均可在百度网盘下载,具体地址为 http://pan.baidu.com/s/10PnDs ,下载该 PDF 文件 1 、 搭建环境 部署节点操作系统为 CentOS ,防火墙和 SElinux 禁用,创建了一个 shiyanlou 用户并在系统根目录下创建 /app 目录,用于存放 Hadoop 等组件运行包。因为该目录用于安装 hadoop 等组件程序,用户对 shiyanlou 必须赋予 rwx 权限(一般做法是 root 用户在根目录下创建 /app 目录,并修改该目录拥有者为 shiyanlou(chown – R shiyanlou:shiyanlou /app )。 Hadoop 搭建环境: l 虚拟机操作系统: CentOS6.6 64 位,单核, 1G 内存 l JDK : 1.7.0_55 64 位 l Hadoop : 1.1.2 2 、

Can Hive table automatically update when underlying directory is changed

左心房为你撑大大i 提交于 2020-02-04 05:14:09
问题 If I build a Hive table on top of some S3 (or HDFS) directory like so: Create external table newtable (name string) row format delimited fields terminated by ',' stored as textfile location 's3a://location/subdir/'; When I add files to that S3 location, the Hive table doesn't automatically update. The new data is only included if I create a new Hive table on that location. Is there a way to build a Hive table (maybe using partitions) so that whenever new files are added to the underlying

HDFS中namenode故障处理

核能气质少年 提交于 2020-02-04 03:53:56
NameNode故障后,可以采用如下两种方法恢复数据: 1、将SecondaryNameNode中数据拷贝到NameNode存储数据的目录 (1) kill -9 NameNode进程 [test@hadoop151 ~] $ jps 3764 DataNode 4069 NodeManager 3654 NameNode 7738 Jps [test@hadoop151 ~] $ kill - 9 3654 [test@hadoop151 ~] $ jps 3764 DataNode 4069 NodeManager 7770 Jps (2) 删除 NameNode 存储的数据(/opt/module/hadoop-2.7.2/data/tmp/dfs/name) [test@hadoop151 ~] $ rm - rf / opt / module / hadoop - 2 . 7 . 2 / data / tmp / dfs / name/ * (3) 拷贝 SecondaryNameNode 中数据到原 NameNode 存储数据目录 [test@hadoop151 ~] $ scp - r test@hadoop153: / opt / module / hadoop - 2 . 7 . 2 / data / tmp / dfs / namesecondary/ * /

初学大数据不知从何入手?总结十章大数据学习指南(建议收藏)

醉酒当歌 提交于 2020-02-04 00:24:43
近三年,大数据这个词出现的频次非常高,不仅纳入各大互联网巨头公司的战略规划中,同时也在国家的政府报告中多次提及,大数据已无疑成为当今时代的新宠。大数据给大多数人的感觉是,专业性强,门槛高,完全属于“高大上”的技术。好奇的人或许会通过网络了解一些概念,而有一些人则看到了大数据带来的机遇,投入大数据学习的洪流当中,投身大数据行业为自己带来利益。经历“坎坷”的学习大数据历程后,在求学之路上有哪些具体 容易掉入的“坑”? 让我们一一盘点下。 ​ 1 在这里相信有许多想要学习大数据的同学,大家可以+下大数据学习裙:740041381,即可免费领取套系统的大数据学习教程 我们一起经历的那些坑 大多的初学者在入门初期,基本是在网上各种社区“大海捞针”的到处 知乎、百度: “大数据学习路径是怎么样的?” “学生党,会java,只有一台电脑!!如何学习大数据开发?” “ 语言是学R还是Python?” “我没时间有没钱,自学能学的会吗?” “现在大数据开发挺火的,谁知道大数据开发学习机构哪家靠谱?” “零基础学习大数据,想成为大数据开发工程师,请问该如何入门,有没有推荐网络教程,书籍或者大牛博客?” 自学过程中走过很多弯路,比如环境搭建,总会遇到各种奇葩问题,找不到答案;比如网上扑来各种资料不知道怎么分辨质量,也不知道如何科学利用,很痛苦又很困惑,毫无一点成就感,走了许多冤枉路,踩坑无数…… 第一

13、Hive的DDL、DML语法案例实战

こ雲淡風輕ζ 提交于 2020-02-03 18:58:23
1、Hive的DDL语法操作 1.1、Hive数据库DDL操作 (1)创建数据库 create database db_hive2;`<br/>`或者`<br/>`create database if not exists db_hive; 数据库在HDFS上的默认存储路径/user/hive/warehouse/*.db (2)显示所有数据库 show databases; (3)查询数据库 show database like ‘db_hive’; (4)查询数据库详情 desc database db_hive; (5)显示数据库 desc database extended db_hive; (6)切换当前数据库 use db_hive; (7)删除数据库 #删除为空的数据控 drop database db_hive; #如果删除的数据库不存在,最好采用if exists判断数据库是否存在 drop database if exists db_hive; #如果数据库中有表存在,需要使用cascade强制删除数据库 drop database if exists db_hive cascade ; 1.2、Hive表的DDL操作 1.2.1、建表语法介绍 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col

Updating a hadoop HDFS file

坚强是说给别人听的谎言 提交于 2020-02-03 05:45:07
问题 I am a newbie to Hadoop. I have been reading that HDFS is mostly about "writing once, reading any times". I have a use case where I may have to make modifications to the files stored in HDFS. I have been researching if there are any ways of doing this. My question is will it be possible to load the HDFS file into HBase, do the modifications, and save it back in HDFS, and deleting the original file. Please let me if this feasible. 回答1: If you need to update values in a file you are much better

hdfs读写操作

被刻印的时光 ゝ 提交于 2020-02-03 02:23:33
读取流程 流程图: 1.客户端向NameNode发送读的请求 2.NameNode根据客户端的请求,根据内存索引查找客户端要查的文件对应的文件块,如果没有那么告诉客户端。如果有那么将文件块在那些服务器上以及具体的位置在哪儿告诉客户端。客户端根据namenode返回的信息,读取最近的服务器的文件。 1) 客户端调用 DistributedFileSystem 的 Open() 方法打开文件。 2) DistributedFileSystem 用 RPC 连接到 NameNode,请求获取文件的数据块的信息;NameNode 返回文件的部分或者全部数据块列表;对于每个数据块,NameNode 都会返回该数据块副本的 3) 客户端调用 FSDataInputStream 的 Read() 方法开始读取数据。 4) FSInputStream 连接保存此文件第一个数据块的最近的 DataNode,并以数据流的形式读取数据;客户端多次调用 Read(),直到到达数据块结束位置。 5) FSInputStream连接保存此文件下一个数据块的最近的 DataNode,并读取数据。 6) 当客户端读取完所有数据块的数据后,调用 FSDataInputStream 的 Close() 方法。 在读取数据的过程中,如果客户端在与数据结点通信时出现错误,则尝试连接包含此数据块的下一个数据结点

spark学习进度2

回眸只為那壹抹淺笑 提交于 2020-02-03 00:07:43
今天先安装好了spark,利用spark里自带的Scala运行了几个简单的Scala程序,看教学视频了解了点儿简单的语法,截图如下: 接着安装scala ide for eclipse,安装在了usr/local目录下,本以为他会正常的替代原来的eclipse,因为我之前有这样直接解压到里面直接就替换了,这次解压之后不仅之前的还在,而且两个eclipse都没法正常使用了 暂停scala ide for eclipse的安装,简单了解一下spark的工作机制与hadoop有什么不同,然后下面从四个方面说一下两者的关系与区别: 1、目的:首先需要明确一点,hadoophe spark 这二者都是大数据框架,即便如此二者各自存在的目的是不同的。Hadoop是一个分布式的数据基础设施,它是将庞大的数据集分派到由若干台计算机组成的集群中的多个节点进行存储。Spark是一个专门用来对那些分布式存储的大数据进行处理的工具,spark本身并不会进行分布式数据的存储。 2、两者的部署:Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。 所以使用 Hadoop则可以抛开spark,而直接使用Hadoop自身的mapreduce完成数据的处理。Spark是不提供文件管理系统的,但也不是只能依附在Hadoop上

HDFS的Shell操作

跟風遠走 提交于 2020-02-02 09:52:50
1、基本语法 bin/hadoop fs 具体命令 OR bin/hdfs dfs 具体命令 2、命令大全 [test@hadoop151 ~] $ hadoop fs Usage: hadoop fs [generic options] [ - appendToFile <localsrc> . . . <dst> ] [ - cat [ - ignoreCrc ] <src> . . . ] [ - checksum <src> . . . ] [ - chgrp [ - R ] GROUP PATH . . . ] [ - chmod [ - R ] <MODE [ , MODE ] . . . | OCTALMODE> PATH . . . ] [ - chown [ - R ] [OWNER] [ : [GROUP] ] PATH . . . ] [ - copyFromLocal [ - f ] [ - p ] [ - l ] <localsrc> . . . <dst> ] [ - copyToLocal [ - p ] [ - ignoreCrc ] [ - crc ] <src> . . . <localdst> ] [ - count [ - q ] [ - h ] <path> . . . ] [ - cp [ - f ] [ - p | - p [topax

ranger-hdfs 插件组权限测试

点点圈 提交于 2020-02-02 07:27:24
当 hdfs文件对外是公开的则该其他用户就算没有配置相关的权限一样可以进行相关的操作。 当 hdfs文件对外权限是没有开放的,其他用户若需要进行相关操作则需要通过 Ranger进行相关权限的配置。 首先 /input赋权 775 权限 下递归赋权750权限 让权限管理交给ranger 测试1 建hive1,hive2用户属于 hivegroup,spark1,spark2 属于sparkgroup 配置权限管理页面 配置 sparkgroup hivegroup 对/input/test1目录有可读可执行权限 排除hivegroup组下的hive1 预期应该是sparkgroup下spark1,spark2对目录有访问权限 hivegroup下hive2有访问权限 Hive1没有权限 实际上 都没有权限 组权限测试无效 将允许权限加入spark1 其他不变 可以看到spark1 已经可以访问了 spark2还是不能访问 测试下删除权限 成功删除 spark2 并没有权限 (组权限也没有生效) 测试下执行权限 给spark1用户 可读可写不可执行权限 目录已经没有 可读的权限了 这个符合期望 接下来继续测试组权限 图中可以看到sparkgroup 组跟spark1对目录具有可读可写可 执行下 看到 spark1 有权限 spark2没有权限 检查namenode 节点 spark1