大数据学习
hykDatabases
这个作者很懒,什么都没留下…
展开
-
java操作sqoop在本地测试正常打包发布到阿里云服务器报错
在做项目时,把sqoop和mapreduce集成到springboot中做数据抽取和计算,并打成jar包上传到服务器,项目是使用eureka进行注册提供服务,父项目下创建子模块,通过maven的package打包子模块。通过以下命令在服务器运行# nohup和&组合在后台运行 运行时会在当前目录下生成一个nohup.out日志文件[root@fda ~]# nohup java -jar XXX.jar &Sqoop版本1.4.7Hadoop版本2.7.7当进行sqoop的数原创 2021-03-04 08:40:37 · 401 阅读 · 7 评论 -
SpringBoot远程提交任务到Hadoop集群报错java.lang.ClassNotFoundException: Class zut.edu.mapreduce.DeptMapper not
在SpringBoot中编写MapReduce程序,并提交任务到集群,我实在本地调试的,一开始使用的是IntelliJ IDEA 2019.3 x64的右侧的Maven直接package直接打包,结果报错如下:Error: java.lang.RuntimeException: readObject can't find class at org.apache.hadoop.mapreduce.lib.input.TaggedInputSplit.readClass(TaggedInputSplit.j原创 2021-02-26 01:07:37 · 339 阅读 · 0 评论 -
Hadoop报错java.io.IOException: java.net.ConnectException: Call From hadoop1/192.168.160.131 to 0.0.0.0
java.io.IOException: java.net.ConnectException: Call From hadoop1/192.168.160.131 to 0.0.0.0:10020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused原创 2021-02-22 01:14:29 · 637 阅读 · 0 评论 -
sqoop本地向云端集群提交任务
org.apache.hadoop.hdfs.DFSOutputStream.createSocketForPipeline(DFSOutputStjava.net.ConnectException: Connection timed out: no further information at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(S原创 2021-02-22 01:00:22 · 348 阅读 · 0 评论 -
Hadoop2.7.7阿里云安装部署
阿里云的网络环境不需要我们配置,如果是在自己电脑上的虚拟机,虚拟机的安装步骤可以百度。这里是单机版的安装(也有集群模式的介绍)使用Xshell连接阿里云主机,用命令将自己下载好的安装包上传到服务器# 先安装程序,方便后面使用[root@fda ~]# yum -y install lrzsz# rz是上传 sz 加文件名 是下载# 如下命令回车会让你选择需要上传的文件[root@fda ~]# rz关闭防火墙阿里云的防火墙是关闭的,如果不是关闭的执行下面的相关命令#查看防火墙开启状态原创 2021-01-22 23:59:40 · 737 阅读 · 0 评论 -
Kettle之调优
1、调整JVM大小进行性能优化,修改Kettle根目录下的Spoon脚本。参数说明-Xmx2048m设置JVM最大可用内存为2048M-Xms1024m设置JVM促使内存为1024m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存-Xmn2g设置年轻代大小为2G。整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的原创 2020-05-27 22:18:44 · 995 阅读 · 1 评论 -
Kettle8.3之Linux下安装使用
Linux下安装使用单机1)jdk安装2)安装包上传到服务器,解压注意:1. 把mysql驱动拷贝到data-integration\lib目录下2. 将本地用户家目录下的隐藏目录C:\Users\自己用户名.kettle,整个上传到linux的家目录/home/node01/下3)运行数据库资源库中的转换:[root@node01 data-integration]# ./pan.sh -rep=my_repo -user=admin -pass=admin -trans=stu1tostu原创 2020-05-27 22:11:30 · 2217 阅读 · 0 评论 -
Kettle8.3之创建资源库
数据库资源库数据库资源库是将作业和转换相关的信息存储在数据库中,执行的时候直接去数据库读取信息,很容易跨平台使用1)点击右上角connect,选择Other Resporitory选择Database Repository建立新连接填好之后,点击finish,会在指定的库中创建很多表,至此数据库资源库创建完成连接资源库默认账号密码为admin将之前做过的转换导入资源库(1)选择从xml文件导入(2)随便选择一个转换(3)点击保存,选择存储位置及文件名原创 2020-05-27 15:06:26 · 1088 阅读 · 0 评论 -
Kettle8.3遇见的错误
连接hive2报错错误连接数据库 [ww] : org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying to connect to the databaseError connecting to database: (using class org.apache.hive.jdbc.HiveDriver)org/apache/hadoop/conf/Configuration…………C原创 2020-05-27 11:57:02 · 900 阅读 · 3 评论 -
Kettle8.3之安装及简单使用
一、Kettle简介Kettle是一款国外开源的ETL工具,纯java编写,可以在Windows、Linux、Unix上运行,数据抽取高效稳定。Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。Kettle背景知识- ETL抽取(Extract) 一般抽取过程需要连接到不同的数据源,以便为随后的步骤提供数据。这一部分看上去简单...原创 2020-05-21 14:33:05 · 4529 阅读 · 0 评论 -
入门Shell脚本
Shell解析器(1)Linux提供的Shell解析器有:[root@node01 ~]# cat /etc/shells /bin/sh/bin/bash/usr/bin/sh/usr/bin/bash(2)bash和sh的关系,sh是bash的软连接[root@node01 bin]# ll | grep bash-rwxr-xr-x. 1 root root ...原创 2020-03-11 22:29:17 · 177 阅读 · 0 评论 -
SparkStreaming基本概述及使用
Spark Streaming概述Spark Streaming用于流式数据的处理。Spark Streaming支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象原语如:map、reduce、join、window等进行运算。而结果也能保存在很多地方,如HDFS,数据库等。和Spark基于RDD的概...原创 2020-03-10 22:11:10 · 468 阅读 · 0 评论 -
Spark SQL编程基本概述及使用
Spark SQL概述Spark SQL是Spark用来处理结构化数据的一个模块,它提供了2个编程抽象:DataFrame和DataSet,并且作为分布式SQL查询引擎的作用。在Hive中,它是将Hive SQL转换成MapReduce然后提交到集群上执行,大大简化了编写MapReduc的程序的复杂性,由于MapReduce这种计算模型执行效率比较慢。所有Spark SQL的应运而生,它是将S...原创 2020-03-09 16:35:09 · 287 阅读 · 0 评论 -
Spark的累加器和广播变量简介
累加器累加器用来对信息进行聚合,通常在向 Spark传递函数时,比如使用 map() 函数或者用 filter() 传条件时,可以使用驱动器程序中定义的变量,但是集群中运行的每个任务都会得到这些变量的一份新的副本,更新这些副本的值也不会影响驱动器中的对应变量。如果想实现所有分片处理时更新共享变量的功能,那么累加器可以实现想要的效果。系统累加器针对一个输入的文件,如果我们想计算文件中所有空行的...原创 2020-03-08 14:29:31 · 267 阅读 · 0 评论 -
Spark的键值对RDD数据分区器和数据读取与保存
键值对RDD数据分区器Spark目前支持Hash分区和Range分区,用户也可以自定义分区,Hash分区为当前的默认分区,Spark中分区器直接决定了RDD中分区的个数、RDD中每条数据经过Shuffle过程属于哪个分区和Reduce的个数注意:(1)只有Key-Value类型的RDD才有分区器的,非Key-Value类型的RDD分区器的值是None(2)每个RDD的分区ID范围:0~nu...原创 2020-03-08 11:45:48 · 541 阅读 · 0 评论 -
Spark的RDD函数传递、依赖关系、缓存及CheckPoint
RDD中的函数传递在实际开发中我们往往需要自己定义一些对于RDD的操作,那么此时需要主要的是,初始化工作是在Driver端进行的,而实际运行程序是在Executor端进行的,这就涉及到了跨进程通信,是需要序列化的。传递一个方法1.创建一个类class Search(query:String) { // 过滤包含字符串的数据 def isMatch(s:String):Boolean...原创 2020-03-07 15:38:07 · 102 阅读 · 0 评论 -
Spark的RDD(actions)
Action算子reduce(func)案例作用:通过func函数聚集RDD中的所有元素,先聚合分区内数据,再聚合分区间数据。需求:创建一个RDD,将所有元素聚合得到结果。(1)创建一个RDD[Int]scala> val rdd1 = sc.makeRDD(1 to 10,2)rdd1: org.apache.spark.rdd.RDD[Int] = ParallelColl...原创 2020-03-07 12:08:35 · 116 阅读 · 0 评论 -
Spark的RDD(transformations)
RDD概述RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据(计算)抽象。代码中是一个抽象类,它代表一个不可变、可分区、里面的元素可并行计算的集合。RDD的属性一组分区(Partition),即数据集的基本组成单位;一个计算每个分区的函数;RDD之间的依赖关系;一个Partitioner,即RDD的分片函数;一个列表...原创 2020-03-07 10:09:31 · 197 阅读 · 0 评论 -
Sqoop优化
1.怎么监控数据是否完全导入?使用shell脚本去查询mysql中某表的数据。然后和hive中表的行数对比。#!/bin/bashcnt = ‘mysq1 -uroot -p123456 一e "select count(*) from hyk.dept"’echo“u2 table of test total rows :${cnt}"2.某表如果2G数据,设置多少个mapper合适...原创 2020-03-05 18:02:21 · 1617 阅读 · 0 评论 -
Sqoop数据导出
公用参数:export参数说明–input-enclosed-by 对字段值前后加上指定字符–input-escaped-by 对含有转移符的字段做转义处理–input-fields-terminated-by 字段之间的分隔符–input-lines-terminated-by 行之间的分隔符–input-optionally-enclose...原创 2020-03-05 17:11:51 · 290 阅读 · 0 评论 -
Sqoop之hive的job
Sqoop提供一系列的job语句来操作Sqoop.$ sqoop job(generic-args)(job-args)[-[subtool-name](subtool-args)]$ sqoop-job(generic-args)(job-args)[-[subtool-name](subtool-args)]使用方法:参数描述–create 用创建保存作业。...原创 2020-03-05 16:22:54 · 231 阅读 · 0 评论 -
Sqoop安装简介及部署
Sqoop安装部署数据同步工具(针对各种数据库) :开源工具: sqoop、datax、kettle、cannal、自定义代码。Sqoop简介产生背景 :基于传统关系型数据库的稳定性。还是有很多企业将数据存储在关系型数据库中,早期由于工具的缺乏,Hadoop与传统数据库之间的数据传输非常困难。基于前两个方面的考虑。需要一个在传统关系型数据库和hadoop之间进行数据传输的项目。Sqoop...原创 2020-03-05 14:24:40 · 297 阅读 · 0 评论 -
Flink部署--入门
Flink安装部署standalone模式在/opt/module/Flink目录下上传flink-1.7.0-bin-hadoop27-scala_2.11.tgz压缩包并解压[root@node01 Flink]# tar -zxvf flink-1.7.0-bin-hadoop27-scala_2.11.tgz #重命名解压后的文件夹[root@node01 Flink]# mv ...原创 2020-03-05 14:23:22 · 359 阅读 · 0 评论 -
Flink简介
Flink简介Apache Flink是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink被设计在所有常见的集群环境中运行,以内存执行速度和任意规模来执行计算。Flink起源于Stratosphere项目,Stratosphere是在2010~2014年由3所地处柏林的大学和欧洲的一些其他的大学共同进行的研究项目,2014年4月Stratosphere的代码被复制并捐...原创 2020-03-05 14:23:00 · 241 阅读 · 0 评论 -
Hive安装部署
Hive安装地址Hive官网地址:http://hive.apache.org/文档查看地址:https://cwiki.apache.org/confluence/display/Hive/GettingStarted下载地址:http://archive.apache.org/dist/hive/github地址:https://github.com/apache/hiveHive安...原创 2020-02-20 22:56:20 · 314 阅读 · 0 评论 -
Hive简介
Hive简介Hive:由Facebook开源用于解决海量结构化日志的数据统计。Hive是基于Hadoop的一个 数据仓库工具 ,可以将 结构化的数据文件映射为一张表 ,并提供 类SQL查询功能。本质是:将HQL转化成MapReduce程序1)Hive处理的数据存储在HDFS2)Hive分析数据底层的实现是MapReduce3)执行程序运行在Yarn上Hive的优缺点优点操作...原创 2020-02-20 21:26:07 · 139 阅读 · 0 评论 -
MapReduce的假死现象
hive的聚合查询时,提交了mapreduce任务,hive的聚合查询假死也就是mapreduce提交任务时出现了问题以上也就是这两个问题,这两个是属于同一个问题问题原因。yarn.nodemanager.resource.memory-mb介绍:yarn.nodemanager.resource.memory.mb的值表示节点分配给NodeManager的总的可用物理内存,也就是节点用来...原创 2019-05-30 12:19:50 · 671 阅读 · 0 评论 -
linux中用sqoop从hdfs导出数据到mysql,汉字显示成问号
sqoop从hdfs导数据到mysql中后,查询表:查看自己mysql中的编码:show variables like 'character%';修改mysql的my.cnf文件,一般都在/etc/my.cnf也可以用命令查找:find / -name my.cnf编辑文件vim /etc/my.cnf添加如下内容:修改完后保存并重启数据库先停止 service my...原创 2019-05-31 17:31:33 · 1303 阅读 · 0 评论 -
dfs磁盘空间不足There are 2 datanode(s) running and no node(s) are excluded in this operation.
说明:下面截图是解决问题后的截图,之前我的剩余DFS的空间只剩下272M当往hdfs里面写文件时报错could only be replicated to 0 nodes instead of minReplication (=1). There are 2 datanode(s) running and no node(s) are excluded in this operation....原创 2019-06-18 18:24:38 · 2173 阅读 · 0 评论 -
Hive之查询
查询查询语句语法:[WITH CommonTableExpression (, CommonTableExpression)*] (Note: Only available starting with Hive 0.13.0)SELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [...原创 2020-02-20 20:55:57 · 267 阅读 · 0 评论 -
Hive之DML数据操作
DML数据操作数据导入向表中装载数据(Load)1.语法hive> load data [local] inpath '/hyk/data/student.txt' overwrite | into table student [partition (partcol1=val1,…)];(1)load data:表示加载数据(2)local:表示从本地加载数据到hive表;否则...原创 2020-02-20 13:03:34 · 141 阅读 · 0 评论 -
NameNode和SecondaryNameNode
NN和2NN工作机制NameNode中的元数据是存储在哪里的?首先,我们做个假设,如果存储在NameNode节点的磁盘中,因为经常需要进行随机访问,还有响应客户请求,必然是效率过低。因此,元数据需要存放在内存中。但如果只存在内存中,一旦断电,元数据丢失,整个集群就无法工作了。因此产生在磁盘中备份元数据的FsImage。这样又会带来新的问题,当在内存中的元数据更新时,如果同时更新FsImage...原创 2020-02-19 12:04:25 · 121 阅读 · 0 评论 -
Hadoop之HDFS的数据流
HDFS的数据流HDFS写数据流程1)客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在。2)NameNode返回是否可以上传。3)客户端请求第一个 Block上传到哪几个DataNode服务器上。4)NameNode返回3个DataNode节点,分别为dn1、dn2、dn3。5)客户端通过...原创 2020-02-18 23:26:37 · 124 阅读 · 0 评论 -
HDFS的java客户端操作
HDFS的Java客户端操作HDFS客户端环境准备详见:https://blog.csdn.net/weixin_45102492/article/details/103008541创建一个Maven工程HdfsClientDemo,导入相应的依赖坐标+日志添加<dependencies> <dependency> <groupId>juni...原创 2020-02-18 22:57:29 · 348 阅读 · 0 评论 -
hadoop中namenode安全状态查看和离开安全模式
查看namenode是否是安全状态[root@node01 ~]# hadoop dfsadmin -safemode getDEPRECATED: Use of this script to execute hdfs command is deprecated.Instead use the hdfs command for it.Safe mode is OFF进入安全模式(ha...原创 2020-02-18 20:45:14 · 2121 阅读 · 0 评论 -
Hadoop之HDFS的shell操作
HDFS的Shell操作(开发重点)基本语法bin/hadoop fs 具体命令 或 bin/hdfs dfs 具体命令dfs是fs的实现类。命令大全[root@node01 ~]# hadoop fsUsage: hadoop fs [generic options] [-appendToFile <localsrc> ... <dst>] [-...原创 2020-02-18 13:16:25 · 204 阅读 · 0 评论 -
HDFS上传文件报错org.apache.hadoop.fs.ChecksumException: Checksum error: file:/hyk/data/hyk.txt
当从本地上传文件到HDFS中时报错fs.FSInputChecker: Found checksum error: b[0, 69]=6d6f77656968616861686168616868616686168616861686861680aorg.apache.hadoop.fs.ChecksumException: Checksum error: file:/hyk/data/hyk.t...原创 2020-02-18 13:04:35 · 789 阅读 · 0 评论 -
Hadoop之HDFS概述
HDFS概述HDFS产出背景及定义1、HDFS产生背景随者数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的态盘中,但是不方便管理和维护,迫切 需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS只是分布式文件管理系统中的一种。2、HDFS定义HDFS (Hadop Distributed File System),它是一个文件系统,用于存...原创 2020-02-18 11:59:33 · 146 阅读 · 0 评论 -
Spark的Standalone模式
Standalone模式构建一个由Master+Slave构成的Spark集群,Spark运行在集群中修改spark-env.sh文件把YARN_CONF_DIR=/opt/module/Hadoop/hadoop-2.7.7/etc/hadoop注释掉,这个是我在Yarn模式下的修改# spark启动时master的启动主机#YARN_CONF_DIR=/opt/module/Hado...原创 2020-02-14 21:13:04 · 231 阅读 · 0 评论 -
Spark的Yarn模式
Spark客户端直接连接Yarn,不需要额外构建Spark集群。有yarn-client和yarn-cluster(集群模式,工作中常用)两种模式,主要区别在于:Driver程序的运行节点。yarn-client:Driver程序运行在客户端,适应于交互、调试,希望立即看到app的输出yarn-cluster:Driver程序运行在由RM(ResourceManager)启动的AP(APPMa...原创 2020-02-14 21:01:56 · 259 阅读 · 0 评论