大数据
身体健康,万事如意
这个作者很懒,什么都没留下…
展开
-
Flink 程序打印过多日志问题,日志过多解决
比如在flink 消费kafka的程序中,出现多次kafka fetcher,map 2/10类似的日志,是因为在执行的任务的依赖里有log相关的依赖,建议exclue掉当前执行的任务的依赖中所有log4j,sl4j,logback等相关依赖,就可以解决这个问题。原创 2023-03-17 15:07:22 · 1230 阅读 · 0 评论 -
flink CEP 不输出问题
flink cep 任务不输出原创 2023-02-24 11:07:15 · 332 阅读 · 3 评论 -
flink stop with savepoint 命令 Caused by: java.util.concurrent.TimeoutException
flink stop savepoint 超时 timeout原创 2023-02-20 16:55:56 · 667 阅读 · 3 评论 -
2.Flink DateStream API
分布式流处理模型抄的网图,下图就是典型的flink 分布式流处理模型主要将数据分为三部分,输入,处理,输出三部分。flink 就是一个批流一体的数据处理引擎和工具。其中flink sql ,flink table api ,flink date stream 关系如图:首先类似hadoop wordcount demo,flink 版也来的wordcount,告诉你整体怎么用这个datastreamAPI。执行这个要包含main方法,和MR类似;实际上,数据处理也和离线差不多原创 2021-10-11 20:15:16 · 225 阅读 · 0 评论 -
1.Flink 核心特性概述
1.统一的数据处理组件栈,处理不同的数据需求,有batch,stream,machinelearning,graph等2.支持事件时间,接入时间,处理时间等时间概念。3.基于轻量级分布式快照实现容错(主动的savepoint和被动的checkpoint)4.支持有状态计算5.支持高度灵活的窗口操作(滑动,滚动,会话窗口)6.带反压的连续流模型(自带反压,进行生产消费监测,当消费能力弱与生产能力,则通过master监控传递并减少生产速度)7.基于JVM实现了自己的内存管理(应用可以超出原创 2021-10-11 19:49:29 · 208 阅读 · 0 评论 -
hadoop ipc
hadoop虽然没有使用javaRMI,但是也类似,使用的是家IPC,使用IPCFIleStatus作为getFIleStatus()作为getFileStatus方法的返回结果;IPCQueryStatusImpl实现了接口中定义的功能,IPCQueryServer利用RMIQueryStatusImpl的实例,构造运行IPC服务器,IPCQueryStatusClient作为客户端,使用I原创 2018-01-01 00:13:07 · 267 阅读 · 0 评论 -
hadoop ipc 创建
其实这个类似于java RMIIPCServer建立,public class IPCServer{ public static final int IPC_PORT=9999; public static final long IPC_VER=88877; public static void main(String [] args) { tr原创 2018-01-03 11:54:30 · 193 阅读 · 0 评论 -
关于,recordreader,recordwriter,分组,分块
recordreader,recordwriter方法都是对每一个key,value进行的,只不过一个是读,一个是写;两者都要从format开始,分别是inputformat和outputformat,对于recordreader是从分片里读取的数据,分片也有格式,当然也可以重写,因为有个抽象类inputsplit,输入内容也是通过文件流读取,这个流实际上也是可以重写和重定向的,所以数据来源,原创 2018-01-23 22:01:06 · 369 阅读 · 0 评论 -
关于分类与回归
分类主要分出的是离散值,回归是一个量化的连续值,根据类别的固定和不固定,可以是聚类和分类,而回归就是回归;只不过同一个算法可以用来做分类或者是回归;...原创 2018-08-09 14:23:32 · 223 阅读 · 0 评论 -
hadoop源码解读三
接着上一篇,来探寻一下hadoop中的Configuration类;在第一次wordcount中我们都看到了使用这个类创建的对象,然后各种配置;其实本质上这个配置是在加载资源,配置信息参数;在windows中我们都用过的ini结尾的文件,比如mysql的my.ini文件,就直接使用的是键值对,xx=xxx,key=value;当然我们也在hadoop中配置了n个xml,配置了各种信息,原创 2017-11-12 23:51:57 · 142 阅读 · 0 评论 -
hadoop源码阅读之mapreduce再理解
map类实现于库类中的Mapper接口, Mapper,其中包括了map方法void map(K1 key, V1 value, OutputCollector output, Reporter reporter) throws IOException; 当然一般要重写;,并且执行会执行该方法;该方法中,包括了四个参数,经过处理,将结果送到上下文,使用context.write(keyo原创 2017-11-05 23:37:53 · 194 阅读 · 0 评论 -
hadoop源码解读一
打开已经编译的hadoop文件夹,bin:看来像hadoop下的各种服务和组件,有cotainer,hdfs,mapred,yarn;sbin:hadoop各项服务的启动脚本,配置脚本;反正里面全是脚本;设置各方面的都有;etc:各项的配置文件,只要可以配置的都在里面,包括dfs配置,调度器配置,namenode,datanode,端口,环境,容错,缓存,等等;include:里面时h原创 2017-11-03 19:17:31 · 574 阅读 · 0 评论 -
hadoop源码解读二
hadoop中的dfs读写操作在eclipse下创建一个hadoop项目,然后建立一个java文件TestDFS类,里面包含main方法;首先是Configuration conf =new Configuration();conf.set("fs.default.name","hdfs://localhost:9000");FileSystem hdfs =FileSystem.原创 2017-11-11 00:09:34 · 294 阅读 · 0 评论 -
yarn-5
yarn各个组件分析交互 ResourceManager ResourceManager时Master,仲裁集群中所有的可用资源,从而帮助管理运行在yarn平台上的分布式应用程序,它和以下组件一起运行; 每个节点的NodeManager,从ResourceManger获取指令,管理单个节点的可用资源,并接收ApplicationMaster的资源请求;每个应用程序的Applicatio原创 2017-08-30 22:50:10 · 265 阅读 · 0 评论 -
spark-1
简介spark是一个用来实现快速而通用的集群计算平台,扩展了MR,高效的支持了更多的计算模式,包括交互式查询和流处理,可以进行交互式的数据处理,主要特点是可以在内存中进行计算;适用于各种各样的原先需要各种不同的分布式平台的场景,包括批处理,地带算法,交互式查询,流处理;提供了java,scala,python,R的接口,spark可以作为一个组件运行在其他的例如yarn的平台上,当然,也可原创 2017-09-24 23:07:00 · 173 阅读 · 0 评论 -
mapreduce实例教程
首先准备好你的文件比如111.txt在Eclipse上创建一个Map/Reduce项目将为了方便将hadoop中所有的jar包都复制到一个你自己创建的文件夹里,然后把这个文件夹设置为本项目依赖的jar包集lib;Mapreduce代码的实现hadoop的API提供了Mapper和Reducer的抽象类,只要继承这两个类就可以实现这两种函数;在工程下创建一个WordMapper类原创 2017-06-16 19:08:23 · 736 阅读 · 0 评论 -
hadoop源码反思-1
在阅读hadoop源码中,感触最深的有以下几个1.状态机,以消息顺序图来作为触发和hadoop运行的条件;2.protocolbuffer engine,将主要运行的函数和代码,比如server端的功能序列化,消息化,字段化,可以动态进行生成,这就很6了;3.构件模块化,功能分割的很不错,hdfs,还有业务逻辑运行时的通用部件和自定义的都留有接口(在状态机上留了),使得各种部件,比如spark,s...原创 2018-03-10 21:24:13 · 129 阅读 · 0 评论 -
关于spark2.x后的SparkSession
Apache Spark2.0 引入了SparkSession,其为用户提供了一个统一的切入点来使用Spark的各项功能,并且允许用户通过它调用DataFrame和Dataset相关API来编写Spark程序。最重要的是,它减少了用户需要了解的一些概念,使得我们可以很容易地与Spark交互,在SparkSession中封装了SparkContext,SparkConf等,为了解决用户可能对Spar...原创 2018-03-10 21:40:43 · 3065 阅读 · 0 评论 -
数据加载(python,spark)
数据加载创建日期 星期五 01 三月 2019这一章写一下数据加载的东西一般就是python加载或者jiava,scala加载java加载都很熟悉,就是流加载inputstream outputstream之类的python加载普通加载f = open(’test.txt','r') # 返回一个文件对象line = f.readline() # 调用文件的 readline...原创 2019-03-01 21:47:59 · 217 阅读 · 0 评论 -
hadoop作业调度和mapreduce过程详解
一直想写一个关于hadoopMR和作业调度,还有存储过程(hdfs)等的详细总结,因为这一段时间巩固并且学到了很多,所以借此来写一个好一点的详细一点的,以后忘了好再看着回忆一下; 先从作业提交开始 ,首先来一个简略的,作为动作级别的;首先你有了一个作业,比如MR,然后你作为客户端,向服务器提交作业,首先提交至ResourceManager,获取一个作业ID,如果没有,则生成,如果有的话,就...原创 2018-11-15 00:11:11 · 542 阅读 · 0 评论 -
spark executor原理详解
我原先以为executor和container有一定区别,只是功能差不多,其实功能基本一致,是作为计算资源单元,来进行计算,作为一个任务分配的单元可以是本地的或者是其他节点上的资源,反正是集群资源,可以使用其他的来进行计算,我看了有些书写的是compute方法,有些事execute方法,不知道哪一个是执行方法,在这里面设置了task数量,还有相关的操作,都实现了相关的,比如说心跳机制,心跳失败后的...原创 2018-09-06 17:32:13 · 868 阅读 · 0 评论 -
Spark中的ShuffleManager
shuffleManager负责管理本地以及远程的block数据的shuffle操作;shuffleManager默认使用凡是的方式来生成sortshufflemanager的实例,SortShuffleManager通过持有的IndexShuffleBlockManager简介操作BlockManager中的DiskBlockManager将map结果写入本地,并且根据shuffleId,map...原创 2018-08-28 16:23:37 · 173 阅读 · 0 评论 -
SparkConext内部原理解析
sparkcontext和hadoop的context其实差不多,都是用configuration来加载相关配置,然后里面初始化各种需要的值,比如sparkenv环境加载创建,还有RDD清理器,初始化sparkUI,hadoop相关配置加载,executor环境变量加载,DAGschedule,TaskScheduler,TaskScheduler这个在hadoop里是在ResourceManag...原创 2018-08-28 16:16:37 · 274 阅读 · 0 评论 -
hive sql
hive -e中不能有"",会解析失败,但是hive -f可以有;curl 删除索引的type失败,只好直接删掉索引重建原创 2018-08-13 20:13:30 · 128 阅读 · 0 评论 -
SparkSession 内部原理就简单解析
自己下一个源码看到导的包就知道里面包含了很多内容import java.io.Closeableimport java.util.concurrent.atomic.AtomicReferenceimport scala.collection.JavaConverters._import scala.reflect.runtime.universe.TypeTagimport sca...原创 2018-08-14 22:28:35 · 587 阅读 · 0 评论 -
spark sql 过滤空值,过滤某行的空值
data.na.drop() //所有空值data.na.drop(Seq("col1","col2")过滤第一行,第二行的空值;原创 2018-07-31 23:17:54 · 10926 阅读 · 0 评论 -
spark 表连接
一般的join都可以使用,但是如果没有唯一键,还想进行连接,就使用innerjoin,并且在join之后使用distinct,而且切记表的位置,如果不好使,还有重复,就换一下左右位置,亲测好使;还有当join之后字段重复,可以指定join之前的df名的中的字段dfname("colname")的方式;spark在预测值中切记features中不要加入标签,让不然acc一直是1.0; ...原创 2018-07-30 21:25:43 · 599 阅读 · 0 评论 -
hive udf 函数
使用hive udf函数,需要导入hive序列化类型的类,udf类等,然后创建类继承UDF,其中实现evaluate方法,返回值必须是hive可序列化的类型,从里面书写计算逻辑;然后将该类打成jar包,在hive控制台输入命令添加jar包,并且把它加入到class path当中,(add jar [绝对路径]) 然后create temporary function add as '该类的绝对路...原创 2018-03-23 09:21:27 · 296 阅读 · 0 评论 -
scala-2
如果要匹配构造函数,则需要显示定义其伴生对象,并在该对象汇总实现unapply方法;for循环中的匹配,则可以部分匹配,全部匹配,没有匹配的部分需要指定;隐式转换使用implicit 关键字,implicit def xxx(X:Float)=x.toInt)scala默认的隐式转换是默认定义了toString,toInt,toDouble等方法,而且当需要隐式转换时,隐式转换函数名可原创 2017-09-14 22:22:40 · 143 阅读 · 0 评论 -
yarn-4
客户端资源请求客户端向ResourceManager发出应用程序请求;ResourceManager应答一个ApplicationID和协助请求资源的集群信息;ApplicationMaster Container的分配得到响应之后,客户端使用Application Submission Context 发出响应给ResourceManager,ApplicationSubmi原创 2017-08-29 10:45:18 · 299 阅读 · 0 评论 -
scala-1
scala的比较是对于内容的比较;1 to 5==1.to(5)没有break,如果需要break,需要调用scala相应的包;for循环可以后面接yield i来循环遍历返回一个集合,作为一个表达式;var x=for(iscala集合分为可变集合和不可变集合,可变集合在增删改查之后返回的是新的集合;scala中表示所有类不是*,而是_;方法也是对象;原创 2017-09-14 12:14:35 · 233 阅读 · 0 评论 -
大数据-十六
文件模式使用通配符匹配多个文件;无需列举每个文件和目录来指定输入,而是通过通配符来确定;此操作为通配(globbing)hadoop为执行此方法提供了连个FileSystem方法;public FileStatus[] golbStatus(Path pathPattern) throws IOException;public FileStatus[] golbStatus(原创 2017-06-19 23:13:39 · 130 阅读 · 0 评论 -
大数据-十一
HTTP通过HTTP访问HDFS有两两种方法,一种是直接访问,HDFS后台进程直接服务于来自客户端的请求,通过(代理)一个对多个的访问客户端通常用DistributedFileSystemAPI访问HDFS;有namenode内嵌的web服务器(运行在端口50070)提供目录服务,目录列表以XML或者JSON格式存储,并且文件数据有datanode的web服务器上以数据流的形式传输;原创 2017-06-07 23:05:57 · 197 阅读 · 0 评论 -
大数据-九
HDFS的高可用性虽然通过在多个文件系统中备份namenode,但是namenode的冷启动是需要30分钟的,所以hadoop2.x针对此问题增加了HA的支持,在这一实现中,配置了一对活动-备用的namenode,一旦活动的namenode失效,备用的namenode将会启动接管他的任务;并开始于服务来自客户端的请求;不会有任何明显的中断;namenode也有了以下的修改;namenode原创 2017-06-07 15:06:52 · 173 阅读 · 0 评论 -
大数据-三
传统的文本分析使用的linux中的awk文本分析,但是只是单线程的,要使速度变快,就要考虑多线程,如果考虑到每年的数据量大小不一样,并导致线程长短将会不一致,所以将其数据分成若干相同大小的块,然后进行分布式计算,最后合并处理,统计结果;从这里变引入了mapreduce;maper函数过程将数据进行清洗,除去无关的数据,提取有关的有价值数据,生成基本的map类型的数据,然后再进行统计和整理归类等原创 2017-06-02 20:23:35 · 187 阅读 · 0 评论 -
大数据-八
namenode和datanodeHDFS集群有两类节点以管理者-工作者的模式运行,即一个namenode(管理者)和多个datanode(工作者).namenode管理文件系统的命名空间;他维护者文件系统树以及整棵树内的所有文件和目录;这些信息命名空间镜像文件和编辑日志文件这两个文件形式永久保存在本地磁盘上;namenode也记录着每个文件中各个快所在的数据节点信息,但他并不会永原创 2017-06-06 21:31:28 · 190 阅读 · 0 评论 -
大数据-七
hadoop 分布式文件系统因为是大数据,所以普通的文件系统和单一的计算机不能承载如此多的数据,就算能承载,成本也是非常高昂的,所以就采用分布式文件系统,这比普通的磁盘文件系统更为复杂,容错能力,处理能力等,都变得更复杂;hadoop中的分布式文件系统为HDFS(Hadoop Distributed Filesystem)也可以称作DFS;HDFS以流式数据访问模式来储存超大文件,运行于商原创 2017-06-06 20:52:09 · 140 阅读 · 0 评论 -
大数据-十五
目录Filesystem实例提供了创建目录的方法,pulbic boolean mkdirs(Paht f)throws IOException;查询文件系统文件元数据:FileStatus任何文件系统的一个重要的特征就是提供其目录结构浏览和检索它所存在的文件和目录相关信息的功能FileStatus类封装了文件系统中的元数据,包括文件长度,块大小,副本,修改时间,所有者原创 2017-06-17 23:43:49 · 172 阅读 · 0 评论 -
大数据-二
handoop项目如下:Common:一系列组件和接口,用于分布式文件系统和通用的I/O(序列化,java RPC和持久化数据结构(RPC是远程调用过程常用与分布式应用);Avro:一种序列化系统,用于支持高效的跨语言的RPC和持久化数据存储;Mapreduce:分布式数据处理模型和执行环境,运行于大型商用机集群;HDFS:分布式文件系统,运行于大型商用机集群;Pig:数据流语原创 2017-06-01 20:14:45 · 212 阅读 · 0 评论 -
大数据-六
Combiner集群上的可用宽带限制了MapReduce作业数量,因此尽量避免map和reduce之间的数据传输是有利的,hadoop允许map任务指定一个combiner,combiiner的输出是reduce的输入;combiner属于优化方案,可以说是小型的reduce,就是小范围的reduce;combiner是通过Reducer类来定义的,要在job中设置combiner类;Ha原创 2017-06-05 16:10:36 · 281 阅读 · 0 评论