自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 Finebi 启动命令

nohup ./FineBI &

2020-11-24 18:52:14 1119

原创 Fluem 数据集成

1.监控 一个目录,将数据打印出来创建 spoolingtest.confa: 代表agent的名称type=spooldir ; 监控一个目录,只要目录中有新的文件就会被取过来,不能出现文件名一样的文件a.sources = r1a.sinks = k1a.channels = c1#指定spooldir的属性a.sources.r1.type = spooldira.sources.r1.spoolDir = /usr/local/soft/dataa.sources.r1.fil

2020-11-21 22:51:01 487

原创 sqoop 数据集成

############ mysql 数据集成 到 hdfs 中创建一个 .conf 文件 将参数 放进去 直接 sqoop --options-file 文件名.conf 就可以执行了import–connectjdbc:mysql://master:3306/user //mysql 地址–username // 用户root–password //密码123456–table //表名student–m

2020-11-21 21:51:41 365

原创 hive 数据库删除语句

1.删除空数据库hive>drop database db_hive2;2.如果删除的数据库不存在,最好采用 if exists判断数据库是否存在hive> drop database db_hive;FAILED: SemanticException [Error 10072]: Database does not exist: db_hivehive> drop database if exists db_hive2;3.如果数据库不为空,可以采用cascade命令,强制删

2020-11-16 16:07:00 2037

原创 Spark BlockManager

blocakManager 也叫作快管理器是存放在Executor 中BlockManager中含有四个 组件1.ConnectionManager 作用:和其他Executor中的BlockManager 建立连接2.BlockTransferService 作用:拉取数据3.MemoryStore 作用:管理内存数据4.DiskStore 作用: 管理磁盘上的数据blockManager 用来存储三种数据1.RDD的缓存数据 2. 广播变量和累加器 3.shuffle的文件广播变量拉

2020-11-11 00:24:44 218

原创 Spark 累加器

1.在算子内部修改Driver端的一个变量是不会生效的,因为算子里面的代码在 Executor 端运行算子外卖的代码在Driver 端运行,属于不同jvm2.在Driver端定义一个累加器3.在executor 端进行累加4.在Driver端进行获取累加结果//读取分数表val student: RDD[String] = sc.textFile(“spark/students.txt”)// 定义累加器 Acval acc: LongAccumulator = sc.longAccumul

2020-11-10 21:28:28 183

原创 spark广播变量

1.当在算子内使用到Driver端的一个变量的时候,这个变量封装到Task中,变为一个变量副本,发送到Executor中执行2.由于task 的数量一般大于executor 的数量,会产生很多的变量副本,会降低任务执行的速度3.使用广播变量的步骤在 Driver端定义一个广播变量在算子中如果使用到广播变量,会先向executor 中索取如果executor中没有这个广播变量,executor回去Driver端获取广播变量后续的 Task 可以直接使用使用广播变量后 广播变量的 副本数 M&lt

2020-11-10 21:10:23 207

原创 Spark checkpoint

1.将Rdd 的数据保存到Hdfs 会切断Rdd 的依赖关系2.当第一个job执行完成之后会向前回溯,如果有RDD 做了checkpoint ,会打上一个标记3.重新启动一个Job任务计算RDD 数据,将RDD 的数据保存到Hdfs4.在Checkpoint 前可以先缓存一下val sc = new SparkContext(conf)//设置checkpoint的路径sc.setCheckpointDir(“spark/data/checkpoint”)//读取分数表val student

2020-11-10 18:11:08 156

原创 Spark 缓存

1.Rdd 中默认不保存数据2.如果多次使用Rdd 中的数据 可以将RDD 进行缓存3.缓存级别 , 常用三种Memry_only 内存足够的时候 推荐Memory_only_serMemory_and_dsik_ser4.缓存的数据实际保存在 executor的内存或者磁盘上是由BlockManager 来管理...

2020-11-10 18:04:07 114

原创 Spark 任务调度 资源调度

资源调度分为两种一种是 client 用于测试当代码中出现 New SparkConf在本地启动一个 Driver 和executor 并向 ResourceManager 申请 一个启动 ApplicationManager 的节点 ,ResourceManager 接到申请后启动 ApplicationManager ,ApplicationManager 启动后 向ResourceManager申请资源,ResourceManager 会随机向 NodeManager 启动Containe.

2020-11-10 17:36:36 214

原创 spark 隐士转换

如果 这里 导入 后 不可以引用的 $" * " 的话 要看看 你的 sparkSession 的 名字是什么这个 如果 是你别的 名字 你导入的 就要换 你写的 那个名字如 val ssss =SparkSession就应该导入 import ssss.implicits._...

2020-11-08 12:45:21 263

原创 Spark 运行模式

Spark 运行 模式 分为 四种local 本地运行独立集群 基本上已经淘汰了 我就不说了yarn 模式 目前 公司 主流模式mesos我今天 主要 介绍 Yarn 模式 其他模式 不多说Yarn 模式 主要分为 两种 模式yarn-client 模式yarn-cluster 模式yarn-client1.Driver 实在 本地启动的 主要负责任务的调度任务调度 构建 DAG 有向无环图2.DAGScheduler 根据宽窄依赖切分 Stage ,DagScheduler将

2020-11-06 00:53:33 125

原创 RDD 的依赖关系

2020-11-06 00:44:41 139

原创 Spark RDD五大特征

1.Rdd由一组分区组成 (partition) 默认是一个block 对应一个分区2.每个分区都有一个 Task 来处理 ,函数实际上 是作用在每一个分区上的3.RDD 直接由一系列的依赖关系 宽依赖 与窄 依赖宽依赖 存在 shuffle 算子分区对应的关系 是一对多 关系 窄依赖 没有 shuffle 算子 分区对应一对一关系根据宽窄依赖切分 Stage , Stage 是一组并行计算的 task4.分区类算子都会作用在 key value 的 RDD 上5.spark为 task 提.

2020-11-06 00:44:07 2756

原创 Spark-sql 链接hive 元数据 数据的表

需要修改 hive conf 中的 hive-site.xml 文件增加过这个配置之后 hive 就会用不了接下来启动hive元数据服务nohup hive --service metastore >> metastore.log 2>&1 &启动过后 jps 会有 一个 runjar配置环境 变量 可以直接 执行 没有 的 话 要去 hive bin 目录下 执行2、将hive-site.xml 复制到spark conf目录下4、 将mysql

2020-11-05 23:44:31 241

原创 Exception in thread “main“ org.apache.spark.sql.AnalysisException: Table or view not found: student;

sqark sql 在创建视图的时候 会出错 是因为 使用的 临时 视图要改成 局部的

2020-11-05 16:39:48 1550

原创 Spark 算子

1.map:将原来RDD的每个数据项通过 map 中的用户自定义函数映射转变为一个新的元素。输入一条输出一条;val newRDD = listRDD.map(line=>line.split(",")) //每一行变成了一个数组2.flatMap:先进行一次 map 操作,然后把输出的结果合并成一个对象listRDD.flatMap(line=>line.split(",")).foreach(println)//一行变成多行//输出结果// a// b//

2020-11-01 23:50:27 148 1

原创 spark 常用算子 1

1.map 对数据进行处理 传入一行返回一行2.filter3.FlatMap4.sample5.groupByKey6.ReduceBykey7.Union8.JOin

2020-11-01 23:49:30 110

原创 Spark core 写程序 指定 本地或者hdfs

2020-11-01 16:14:25 223

原创 Maven pom文件爆红处理

Pom 爆红的 的原因解决 :右击 找到 maven 刷新出现小蜘蛛 导致 全部爆红按减号

2020-11-01 16:11:03 2243

原创 Mapreduce join 时候 Reduce 阶段 没有输出

文件输入 要改成addInputPath

2020-10-29 17:20:20 425

原创 java.lang.ClassCastException: org.apache.hadoop.mapreduce.lib.input.FileSplit cannot be cast to org

这个 FileSplit 的jar 包是错误的

2020-10-28 14:44:10 337

原创 Scala WordCount

object Demo17WordCount {def main(args: Array[String]): Unit = {//1、读取数据val lines: List[String] = Source.fromFile("scala/data/words.txt").getLines().toList//2、使用flatMap 将单词展开val words: List[String] = lines.flatMap(line => line.split(","))//3、按照单

2020-10-27 23:10:39 106

原创 Scala Map

object Demo16Map {def main(args: Array[String]): Unit = {/** * map : key-value * */// 不可变mapval map = Map("001" -> "张三", "002" -> "李四", ("003", "王五"))//通过key获取valueprintln(map("001")) //如果key不存在会报错println(map.getOrElse("005", "默认值"))

2020-10-27 23:09:55 91

原创 Scala Set集合

object Demo15Set {def main(args: Array[String]): Unit = {/** * * Set : 无序唯一 * *///默认是一个不可变的集合val set = Set(100, 1, 2, 3, 1, 2, 2, 1, 1, 12, 1)println(set)val l = List(1, 2, 3, 1, 1, 21, 2, 3, 1, 2)//对list去重println(l.distinct)println(l

2020-10-27 23:08:40 399

原创 Scala 元祖

/*** 元组 : 不可变集合*/val t=(1,2,3,4,5,6)val t1=Tuple4(1,2,3,4)println(t1._2)//元组可以直接通过 _下标方式获取数据//在写代码的时候 已经明确了集合的长度,不肯能下标越界println(t._1)

2020-10-27 23:07:20 96

原创 Scala ListBuffer 可变集合

object Dome13ListBuffer {def main(args: Array[String]): Unit = {/***可变集合* listBuffer* scala.collection.mutable.所在集合*scala.collection.immutable*/val as: ListBuffer[Int] = new ListBuffer[Int]//增加元素as += 5as += 10as += 111// 指定下标插入元素as.insert(1,

2020-10-27 23:06:48 262

原创 Scala list 集合

def main(args: Array[String]): Unit = {/*** scala 中集合分为* list:有序(插入顺序)。可以重复* Set:无序,唯一* Map:key-value* Tuple:相当于数组**/// List :默认是不可变的集合val list: List[Int] = List(1,2,3,5,600,8,4,5)println(list.sum) //求和println(list.max) //获取最大值println(list.min

2020-10-27 23:05:34 234

原创 连接zk 报错连接不上hbase jdbc

看一下 设置的依赖 是否有问题还有编码格式org.apache.maven.pluginsmaven-compiler-plugin1.81.8在依赖中添加这个

2020-10-25 11:19:25 375

原创 Phoenix 调优

1、建立索引超时,查询超时修改配置文件,hbase-site.xml两个位置phoenix-4.15.0/binhbase-1.4.6/conf所有节点增加配置phoenix.query.timeoutMs500000建与不键是有很大差距的,数据越大差距越大hbase 建表的时候可以预分区,Phoenix建表的时候也可以预分区CREATE TABLE IF NOT EXISTS STUDENT (id VARCHAR NOT NULL PRIMARY KEY,name VARC

2020-10-25 10:04:40 285

原创 Phoenix二级索引

3、Phoenix二级索引对于Hbase,如果想精确定位到某行记录,唯一的办法就是通过rowkey查询。如果不通过rowkey查找数据,就必须逐行比较每一行的值,对于较大的表,全表扫描的代价是不可接受的。1、开启索引支持# 关闭hbase集群stop-hbase.sh# 在hbase-site.xml中增加如下配置 phoneix 与 hbase 的都要去设置<property> <name>hbase.regionserver.wal.codec&

2020-10-24 22:04:42 196

原创 Phoenix

Phoenix是hbase 的一个工具 ,可以将hbase中的数据通过sql语句执行默认情况下,直接在hbase中创建的表,通过phoenix是查看不到的,而在phonenix中创建 可以在hbase shell 通过 list查看 (因为hbase中的表示没有结构的只有一个表名和列蔟,而phonenix中的表示结构表, 不过可以通过phonenix表映射获取hbase中键的表视图映射put ‘test’,‘001’,‘name:firstname’,‘zhangsan’put ‘test’,‘00

2020-10-24 21:21:14 169

原创 hbase 过滤器

//正则比较器//RegexStringComparator rex = new RegexStringComparator(“理科*”);//字符串包含比较器//SubstringComparator rex = new SubstringComparator(“文科”); //前缀二进制比较器 // BinaryPrefixComparator rex = new BinaryPrefixComparator("文科".getBytes()); //二进制

2020-10-24 21:10:51 124

原创 hive 与 HBase的区别及应用场景

1.定义hive是基于hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,默认情况下可以将sql语句转换为mapreduce 任务进行运行HBase 是Hadoop 的数据库 ,一个分布式 可扩展,大数据的存储2.区别hivesql 默认转换为MapReduce进行计算,所以比较慢,只能做离线数据分析,不能做实时查询HBase 是nosql 数据库,是物理表,不是逻辑表,虽然数据是存储在hdfs,但是读写非常快,适合做大数据量的即时查询3联

2020-10-21 09:43:06 419

原创 Hbase shell 命令

进入Hbase shell语法:create , {NAME => , VERSIONS => }创建一个User表,并且有一个info列族create ‘User’,‘info’listdescribe ‘User’查看表的详细删除指定的列族alter ‘User’, ‘deletc’ => ‘info’增加新的列族alter ‘User’, NAME => ‘info’插入数据语法:put ,,family:column,put ‘User’, ‘

2020-10-20 22:43:09 254

原创 HBase 简介

1.HBase-Hadoop database,是高可靠性、高性能、面向列、可伸缩实时读写的分布式数据库2.mysql 是单机的 可以实时查询 数据量小hbase 数据量大 在hdfs上 可伸缩 最终存在hdfs上,hbase 会在hdfs 基础上键很多索引索引 用空间换时间 hbase 就是用空间换时间 的框架 当然也会有冗余3.利用Hadoop Hdfs 作为其文件存储系统,利用hadoop MApreduce 来处理Hbase 中的海量数据,利用Zookeeper 作为其分布式协同服务h

2020-10-20 22:18:33 192 1

原创 hive 窗口函数

hive高级函数:row_number、rank、dense_rank这三个窗口函数的使用场景非常多row_number()从1开始,按照顺序,生成分组内记录的序列,row_number()的值不会存在重复,当排序的值相同时,按照表中记录的顺序进行排列RANK() 生成数据项在分组中的排名,排名相等会在名次中留下空位DENSE_RANK() 生成数据项在分组中的排名,排名相等会在名次中不会留下空位例子:员工表中,求每个岗位薪水前两名的员工信息(name,入职日期,sal)row_numbe

2020-10-18 22:51:21 97

原创 hive 是什么

hive 是做数据仓库的工具之一,不是数据仓库,更不是数据库;hive 是站在hdfs上面 没有hdfs就没有hive,hive是建立在Hadoop 上的数据仓库基础架构。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive定义了简单的类sql查询语言,成为Hql,他熟悉sql的用户查询数据。同时,这个语言也允许熟悉MapReduce开发者的开发自定的mapper和reducer 来处理内建的mapper和red

2020-10-18 22:49:04 2467

原创 hive 分区表 分组表 分桶表

第一种常用新建原始表:create [EXTERNAL] table vv_stat_fact(userid string,stat_date string,tryvv int,sucvv int,ptime float)PARTITIONED BY ( 非必选;创建分区表dt string)clustered by (userid) into 3000 buckets // 非必选;分桶子ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’

2020-10-16 13:20:44 424

原创 hadoop 优化方式

hadoop 优化:MapReduce:Map:切片优化:调整map的数量当集群的资源(cup,内存)比较充足。可以适当将切片大小,调小。这个时候会增加map的数量,加快读取处理速度。当集群的资源(cup,内存)比较紧缺,可以适当将切片大小,调大。这个时候会减少map的数量,可以一定程度提高效率。数据本地化,任务本地化处理:可以适当增加副本数(前提是磁盘空间充足)调整Reduce数量:reduce的数量默认由分区决定,也可以直接手动设置reduce个数。job.setNumReduce

2020-10-14 20:03:15 236

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除