HDFS

Hadoop凉凉?不,它仍是大厂铁饭碗

守給你的承諾、 提交于 2020-08-07 01:45:20
关于Hadoop可能很多都是坏消息。 在2018年10月,最大的两个Hadoop发行版厂商Cloudera和Hortonworks宣布合并,抱团取暖,由于财报不太好,高层也离职了。还有第三大Hadoop发行版厂商MapR差点破产,幸亏最后被HPE收购....... 1 Hadoop的整体印象 一句话概括:Hadoop就是存储海量数据和分析海量数据的工具。 Hadoop是由java语言编写的,在分布式服务器集群上存储海量数据并运行分布式分析应用的开源框架,其核心部件是HDFS与MapReduce。 HDFS是一个分布式文件系统:引入存放文件元数据信息的服务器Namenode和实际存放数据的服务器Datanode,对数据进行分布式储存和读取。 MapReduce是一个计算框架:MapReduce的核心思想是把计算任务分配给集群内的服务器里执行。通过对计算任务的拆分(Map计算/Reduce计算)再根据任务调度器(JobTracker)对任务进行分布式计算。 2 Hadoop的优势 | 高可靠性 :Hadoop 按位存储和处理数据的能力值得人们信赖。 | 高扩展性 : Hadoop 是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以干计的节点中。 | 高效性 : Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。 |

Hive SQL优化方式及使用技巧

时间秒杀一切 提交于 2020-08-06 19:52:40
HIVE简介 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询,可以将sql语句转换为MapReduce任务进行运行 同时,hive也允许熟悉map-reduce的开发者开发自定义的mapper和reducer来处理内建的mapper和reducer无法处理的复杂的分析工作。 用户发出sql命令----> hive处理并转换为MapReduce---->提交任务到hadoop并运行在hdfs HIVE DDL Hive建表(压缩表和非压缩表) 一个表可以拥有一个或者多个分区,每个分区以文件夹的形式单独存在于表文件夹的目录下 创建表:指定exterbal关键字的就是外部表,没有就是内部表。内部表在drop的时候会从hdfs上删除数据,外部表不会删除 如果不指定数据库,hive会把表创建在默认数据库下。 创建内部表: create table if not exists `my_inner_table`( `id` bigint comment ' 逻辑id,记录的唯一id ' , ` user_id ` string comment ' user_id ' ) comment ' 内部表 ' partitioned by (`dt` string comment ' date, yyyy-MM-dd ' ) ROW

使用Hadoop分析气象数据完整版(附带完整代码)

你。 提交于 2020-08-06 19:49:59
《分布式》布置了一道小作业,让我花了7天时间学习了Hadoop。。。现在终于可以正式地做这个作业了,记录一下。 使用Hadoop分析气象数据 1 获取数据 1.1 下载数据 1.2 数据格式 1.3 合并数据 2 MapReduce处理数据 2.1 环境配置,启动集群 2.2 上传到HDFS 2.2 编写MapReduce代码 2.2.1 TemperatureMapper 2.2.2 TemperatureReducer 2.2.3 JobMain 2.3 执行 2.3.1 打包、上传 2.3.2 运行 3 导入数据到Hive 4 Hive数据分析 5 使用Sqoop导入数据到Mysql 5.1 Mysql创建数据库 5.2 开始导入 6 展示数据 6.1 前端代码 6.2 后端代码 1 获取数据 1.1 下载数据 注意:为了不出现横向拖拉,命令里我加了换行,所有命令都是如此。 获取命令: wget -D --accept-regex = REGEX -P data -r -c ftp://ftp.ncdc.noaa.gov/pub/data/noaa/isd-lite/2019/5* 注意:下载可能出现卡顿,直接 ctrl+c 中断,然后再次输入命令即可。 我就下载了下面这么多,共计78429条。 1.2 数据格式 截取部分数据,格式如下: 2019 01 01 00 -65

Flume HDFS sink: Remove timestamp from filename

試著忘記壹切 提交于 2020-08-06 15:12:50
问题 I have configured flume agent for my application, where source is Spooldir and sink is HDFS I am able to collect files in hdfs. agent configuration is: agent.sources = src-1 agent.channels = c1 agent.sinks = k1 agent.sources.src-1.type = spooldir agent.sources.src-1.channels = c1 agent.sources.src-1.spoolDir = /home/Documents/id/ agent.sources.src-1.deserializer=org.apache.flume.sink.solr.morphline.BlobDeserializer$Builder agent.sources.src-1.fileHeader=true agent.channels.c1.type = file

大数据采集和抽取怎么做?这篇文章终于说明白了!

江枫思渺然 提交于 2020-08-06 10:52:14
本文来源于公众号【胖滚猪学编程】,转载请注明出处! 关于数据中台的概念和架构,我们在 大白话 六问数据中台 和 数据中台全景架构及模块解析!一文入门中台架构师! 两篇文章中都说明白了。从这一篇文章开始分享中台落地实战。 其实无论是数据中台还是数据平台,数据无疑都是核心中的核心,所以闭着眼睛想都知道数据汇聚是数据中台/平台的入口。纵观众多中台架构图,数据采集与汇聚都是打头阵的: 本文将从以下几个方面分享数据采集的方方面面: 一、企业数据来源 二、数据采集概念和价值 三、数据采集常用工具 四、数据采集系统设计原则 五、数据采集模块生产落地分享 有来源才能谈采集,因此我们先来归纳下企业中数据来源。 数据来源 企业中的数据来源极其多,但大都都离不开这几个方面: 数据库,日志,前端埋点,爬虫系统等。 数据库我们不用多说,例如通常用mysql作为业务库,存储业务一些关键指标,比如用户信息、订单信息。也会用到一些Nosql数据库,一般用于存储一些不那么重要的数据。 日志也是重要数据来源,因为日志记录了程序各种执行情况,其中也包括用户的业务处理轨迹,根据日志我们可以分析出程序的异常情况,也可以统计关键业务指标比如PV,UV。 前端埋点同样是非常重要的来源,用户很多前端请求并不会产生后端请求,比如点击,但这些对分析用户行为具有重要的价值,例如分析用户流失率,是在哪个界面,哪个环节用户流失了

无痛搭建hadoop集群并运行Wordcount程序

你离开我真会死。 提交于 2020-08-06 08:26:30
目录 前置准备 查看本地网络信息 查看网络连接状态 更改网络信息 更改主机名 对虚拟机进行克隆得到slave1和slave2节点 配置slave1和slave2的参数信息 建立主机名到ip的映射 配置ssh免密登录 关闭防火墙与SELinux 安装JDK 创建新用户 hadoop环境配置 下载与安装 环境配置 更改配置文件 进行传输与连接 运行Wordcount程序 前置准备 首先,打开自己的虚拟机,我使用的是centos7的系统,但是不同系统操作差别不大。 查看本地网络信息 进入虚拟网络编辑器 进入NAT设置,查看以下信息 查看网络连接状态 可以看到网络成功连接 输入ifconfig命令发现没有eth0(如果就是eth0可以跳过该步骤),不符合我们的习惯。而且也无法远程ssh连接 cd / etc / sysconfig / network - scripts / mv ifcfg - ens33 ifconfig - eth0 更改网络信息 如果有eth0的从这里执行即可 进入管理员模式,因为不进入的话会显示无法保存。 su vim / etc / sysconfig / network - scripts / ifcfg - eth0 对以下信息进行更改, 注意这里的ip和网关需要用你上面自己记录的。 重启网卡,可以看到更改生效 service network restart

OSS数据湖实践——EMR + Hive + OSS案例

半世苍凉 提交于 2020-08-06 08:14:48
Hive是一种建立在Hadoop文件系统上的数据仓库架构,并对存储在HDFS中的数据进行分析和管理;本文通过一个简单的示例来展现如何结合OSS+EMR+Hive来分析OSS上的数据。 前提条件 • 已注册阿里云账号,详情请参见注册云账号。 • 已开通E-MapReduce服务和OSS服务。 • 已完成云账号的授权,详情请参见角色授权。 • 已创建Haoop集群,且带有Hive组件, 且配置好OSS数据源。 步骤一:上传数据至OSS hadoop fs -put course.csv oss://your-bucket-name/ 步骤二:创建Hive作业开发页面 步骤三:SQL 实现 创建数据表 CREATE TABLE course (num INT, subject string, level string) row format delimited fields terminated by "," location "/"; 导入数据 LOAD DATA INPATH 'oss://your-bucket-name/course.csv' INTO TABLE course; 查询语句 select A.suject, A.level, A.count from (select suject, level, count(*) as count from course

Hadoop CDH版本安装和启动(CentOS7)

白昼怎懂夜的黑 提交于 2020-08-06 06:21:17
Hadoop CDH版本安装和启动(CentOS7) 1、创建hadoop组和用户,useradd hadoop  passwd hadoop  groupadd hadoops  usermod -G hadoops hadoop(将hadoop添加到hadoops组中)。 2、下载hadoop版本 http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.15.0.tar.gz 。(或者直接:wget http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.15.0.tar.gz/ , https://archive.cloudera.com/cdh5/cdh/5/ 这里hadoop生态圈其他的工具下载) 3、安装java1.8,解压jdk1.8的包,vi /home/hadoop/.bash_profile,然后添加环境变量 export JAVA_HOME=/home/hadoop/app/jdk1.8.0_91 export PATH=$JAVA_HOME/bin:$PATH 测试:java -version ,成功。 4、配置ssh无密码登录,先输密码登录一次(创建.ssh文件):ssh hadoop000(以后ip可能会变,所以都写成hadoop000

java大数据最全课程学习笔记(2)--Hadoop完全分布式运行模式

女生的网名这么多〃 提交于 2020-08-06 03:44:40
目前 CSDN , 博客园 , 简书 同步发表中,更多精彩欢迎访问我的 gitee pages 目录 Hadoop完全分布式运行模式 步骤分析: 编写集群分发脚本xsync 集群配置 集群部署规划 配置集群 集群单点启动 SSH无密登陆配置 登录状态的环境变量 群起集群 集群启动/停止方式总结 集群时间同步 其他注意事项 Hadoop完全分布式运行模式 步骤分析: 准备3台客户机(关闭防火墙、静态ip、主机名称) vim /etc/sysconfig/network 三台机器各自的配置分别为HOSTNAME=hadoop101;HOSTNAME=hadoop102;HOSTNAME=hadoop103 vim /etc/hosts 三台机器都加入下面的映射关系 192.168.1.101 hadoop101 192.168.1.102 hadoop102 192.168.1.103 hadoop103 安装JDK 配置环境变量 安装Hadoop 配置环境变量 配置集群 单点启动 配置ssh 群起并测试集群 由于在 上一章节 已经配置好环境并测试了hadoop伪分布式开发模式,所以在此不再赘述. 编写集群分发脚本xsync scp(secure copy) 安全拷贝(全量复制) scp定义 scp可以实现服务器与服务器之间的数据拷贝.(from server1 to server2)

Spark-submit常用任务命令参数和说明

会有一股神秘感。 提交于 2020-08-05 19:39:26
Spark常用任务命令参数和说明 spark-submit \ --name task2018072711591669 \ --master yarn --deploy-mode client \ --jars sparklistener-0.0.3-SNAPSHOT.jar \ --conf spark.extraListeners=com.etf.spark.listener.EtfJavaListener \ --py-files service.json,\ freq.py,\ helpers.py,\ spark_template_module.py,\ status.py,\ user_spark_run.py, \ spark_logger.py \ spark_main.py 参数解释 参数名称 值 作用 --name 任务名称 --master yarn 部署模式 --deploy-mode Client 驱动模式 --jars Jar包名称 执行任务附加的包名称 --conf 配置参数 配置参数,有多个参数可以配置 --py-files Py文件列表 任务执行需要的py文件,可以是.py .zip等 以逗号隔开 xx.py xx.py 任务主执行入口文件。Py或者java等 Spark并行执行参数 命令示例: ./bin/spark-submit \ -