大数据
程序员椰子橙
这个作者很懒,什么都没留下…
展开
-
flink 实现CommonSink,自动生成sql,自动匹配字段值
团队的业务需求,flink实时计算任务在sink polarDb时,每个任务都需要编写实体类sink代码,重复工作浪费时间。观察之后发现代码可以实现通用sink,代码有重合。通过泛型传入实体对象,通过反射获取字段名和字段值。原来的sink代码,如果实体类字段非常多的话,可能要重复编写几十上百行,复杂枯燥且容易出错。public class EventTopicSink extends RichSinkFunction<EventTopic> { PreparedStatement原创 2021-04-22 18:03:46 · 731 阅读 · 1 评论 -
Exception in thread “main“ org.apache.flink.table.api.SqlParserException: SQL parse failed. Encounte
Exception in thread "main" org.apache.flink.table.api.SqlParserException: SQL parse failed. Encountered "table" at line 1, column 308.Was expecting one of: "CONSTRAINT" ... "PRIMARY" ... "UNIQUE" ... "WATERMARK" ... <BRACKET_QUOTED...原创 2020-12-29 14:18:14 · 5506 阅读 · 5 评论 -
数据倾斜
3.自定义分区,这需要用户自己继承partition类,指定分区策略,这种方式效果比较显著。4.重新设计key,有一种方案是在map阶段时给key加上一个随机数,有了随机数的key就不会被大量的分配到同一节点(小几率),待到reduce后再把随机数去掉即可。5.使用combinner合并,combinner是在map阶段,reduce之前的一个中间阶段,在这个阶段可以选择性的把大量的相同key...原创 2020-04-02 10:27:40 · 192 阅读 · 0 评论 -
数据仓库
https://www.cnblogs.com/itboys/p/10592871.html原创 2020-03-31 16:09:31 · 168 阅读 · 0 评论 -
Flink 自定义UDF处理异常数据
Flink 自定义UDF处理异常数据原创 2020-03-23 20:19:46 · 878 阅读 · 0 评论 -
kafka
Kafka 高性能吞吐揭秘Kafka重度依赖底层操作系统提供的PageCache功能。当上层有写操作时,操作系统只是将数据写入PageCache,同时标记Page属性为Dirty。当读操作发生时,先从PageCache中查找,如果发生缺页才进行磁盘调度,最终返回需要的数据。实际上PageCache是把尽可能多的空闲内存都当做了磁盘缓存来使用。同时如果有其他进程申请内存,回收PageCache的代...原创 2020-03-22 01:28:28 · 125 阅读 · 0 评论 -
Todo
ES索引切片原创 2020-03-20 16:04:20 · 149 阅读 · 0 评论 -
流量异常检测
https://mp.weixin.qq.com/s/9h-hOt630W6k077Rupc9CA预测移动平均算法使用当前窗口内w个数据的均值作为窗口内最后一个点的预测值,即。线性回归的方法预测流量值对于窗口内n个数据点使用最小二乘法来最小化损失函数由于线性回归的损失函数是二次函数,所以异常点带来的影响被放大,导致拟合的结果偏离理想结果。由于线性回归的二次损失函数放大了异常点的影响,因...原创 2020-03-19 11:39:10 · 8378 阅读 · 0 评论 -
checkpoint
Exactly_Once 和 At_Least_Once 具体在底层实现大致相同,具体差异表现在 CheckpointBarrier 对齐方式的处理:如果是 Exactly_Once 模式,某个算子的 Task 有多个输入通道时,当其中一个输入通道收到 CheckpointBarrier 时,Flink Task 会阻塞该通道,其不会处理该通道后续数据,但是会将这些数据缓存起来,一旦完成了所有...原创 2020-03-19 10:54:53 · 161 阅读 · 0 评论 -
加速python程序
加速python程序原创 2020-02-25 22:06:30 · 185 阅读 · 0 评论 -
Kafka 常见问题
1. Kafka 如何做到高吞吐、低延迟的呢?这里提下 Kafka 写数据的大致方式:先写操作系统的页缓存(Page Cache),然后由操作系统自行决定何时刷到磁盘。因此 Kafka 达到高吞吐、低延迟的原因主要有以下 4 点:页缓存是在内存中分配的,所以消息写入的速度很快。Kafka 不必和底层的文件系统进行交互,所有繁琐的 I/O 操作都由操作系统来处理。Kafka 采用追加写的方...原创 2020-02-25 14:46:38 · 308 阅读 · 0 评论 -
谈谈三种海量数据实时去重方案(w/ Flink)
谈谈三种海量数据实时去重方案(w/ Flink)借助Redis Bitmap实现简单的布隆过滤器原创 2020-02-25 02:53:36 · 997 阅读 · 0 评论 -
Apache Flink 1.10.0 重磅发布,新特性解读
Table API/SQL: 生产可用的 Hive 集成Flink 1.9 推出了预览版的 Hive 集成。该版本允许用户使用 SQL DDL 将 Flink 特有的元数据持久化到 Hive Metastore、调用 Hive 中定义的 UDF 以及读、写 Hive 中的表。Flink 1.10 进一步开发和完善了这一特性,带来了全面兼容 Hive 主要版本的生产可用的 Hive 集成。Bat...原创 2020-02-25 01:30:18 · 764 阅读 · 0 评论 -
中国CDN市场厂商排名:阿里云稳居第一,腾讯云第三
中国CDN市场厂商排名:阿里云稳居第一,腾讯云第三日前,市场咨询机构计世资讯(CCW Research)发布《2018-2019年中国CDN市场发展报告》显示,阿里云以近31%的市场份额,成为中国CDN市场第一大厂商,腾讯云则以10.4%排在第三位。CDN(内容分发网络)通俗地讲,其主要功能是让在各个不同的地点的网络用户,都可以迅速访问到网站提供的内容,不会出现等待或者卡顿的情况。过去一年...原创 2020-02-25 00:26:37 · 15504 阅读 · 0 评论 -
大数据分析之OLTP与OLAP的区别
业务类系统主要供基层人员使用,进行一线业务操作,通常被称为OLTP(On-Line Transaction Processing,联机事务处理)。数据分析的目标则是探索并挖掘数据价值,作为企业高层进行决策的参考,通常被称为OLAP(On-Line Analytical Processing,联机分析处理)。从功能角度来看,OLTP负责基本业务的正常运转,而业务数据积累时所产生的价值信息则被OL...原创 2020-02-25 00:24:40 · 517 阅读 · 0 评论 -
Zookeeper的选举机制原理
三个核心选举原则:(1)Zookeeper集群中只有超过半数以上的服务器启动,集群才能正常工作;(2)在集群正常工作之前,myid小的服务器给myid大的服务器投票,直到集群正常工作,选出Leader;(3)选出Leader之后,之前的服务器状态由Looking改变为Following,以后的服务器都是Follower。zookeeper选举...原创 2020-02-10 13:07:56 · 293 阅读 · 0 评论 -
CENTOS7下安装REDIS
yum install gcctar -zxvf cd redis-4.0.6make MALLOC=libccd src./redis-sercer ../redis.conf./redis-cliset "testkey" "testvalue"get "testkey"原创 2020-01-29 18:09:04 · 158 阅读 · 0 评论 -
centos7上的kafka安装
centos7上的kafka安装原创 2020-01-29 18:08:40 · 454 阅读 · 0 评论 -
Centos镜像下载地址
CentOS 7官方下载地址:https://www.centos.org/download/Centos国内下载源http://man.linuxde.net/download/CentOShttp://mirrors.btte.net/centos/7/isos/x86_64/http://mirrors.cn99.com/centos/7/isos/x86_64/http://mi...原创 2020-01-28 17:52:57 · 569 阅读 · 0 评论 -
linux
创建新用户[root@VM ~]# adduser it为这个用户初始化密码,linux会判断密码复杂度,不过可以强行忽略:[root@VM_~]# passwd itChanging password for user it.New password:BAD PASSWORD: it is based on a dictionary wordBAD PASSWORD: is too...原创 2020-01-28 13:42:56 · 159 阅读 · 0 评论 -
HDFS读写流程
HDFS读写流程HDFS的读写流程原创 2020-01-18 18:47:15 · 152 阅读 · 0 评论 -
Flink
Flink-WordCountimport org.apache.flink.api.common.functions.FlatMapFunction;import org.apache.flink.api.java.utils.ParameterTool;import org.apache.flink.streaming.api.datastream.DataStream;import ...原创 2020-01-16 17:24:27 · 137 阅读 · 0 评论 -
Hive
一、order byorder by 是要对输出的结果进行全局排序,故此只有一个reducer(多个reducer无法保证全局有序);但是当数据量过大的时候,效率就很低。如果在严格模式下(hive.mapred.mode=strict),则必须配合limit使用。二、sort bysort by 不是全局排序,只是在进入到reducer之前完成排序,只保证了每个reducer中数据按照指定...原创 2020-01-13 09:50:25 · 427 阅读 · 0 评论 -
富函数(Rich Functions)
“富函数”是DataStream API提供的一个函数类的接口,所有Flink函数类都有其Rich版本。它与常规函数的不同在于,可以获取运行环境的上下文,并拥有一些生命周期方法,所以可以实现更复杂的功能。 RichMapFunction RichFlatMapFunction RichFilterFunctionRich Function有一个生命周期的概念。典型的生命周期方法有:...原创 2020-01-08 16:56:26 · 2656 阅读 · 0 评论 -
Flink原理与实现:详解Flink中的状态管理
上面Flink原理与实现的文章中,有引用word count的例子,但是都没有包含状态管理。也就是说,如果一个task在处理过程中挂掉了,那么它在内存中的状态都会丢失,所有的数据都需要重新计算。从容错和消息处理的语义上(at least once, exactly once),Flink引入了state和checkpoint。首先区分一下两个概念,state一般指一个具体的task/operat...原创 2020-01-06 20:45:45 · 401 阅读 · 0 评论 -
Flink流计算编程--watermark(水位线)
watermark+window处理乱序原创 2020-01-05 15:13:58 · 604 阅读 · 0 评论 -
Hbase
入门HBase,看这一篇就够了原创 2020-01-03 22:44:21 · 129 阅读 · 0 评论 -
Namenode、Datanode、Jobtracker、Tasktracker、yarn
hadoop的集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个.SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常secondary NameNode(运行在单独的物理机器上)和 NameNode 运行在不同的机器上...原创 2020-01-03 11:10:09 · 214 阅读 · 0 评论 -
MAPREDUCE工作原理
流程分析:1.在客户端启动一个作业。2.向JobTracker请求一个Job ID。3.将运行作业所需要的资源文件复制到HDFS上,包括MapReduce程序打包的JAR文件、配置文件和客户端计算所得的输入划分信息。这些文件都存放在JobTracker专门为该作业创建的文件夹中。文件夹名为该作业的Job ID。JAR文件默认会有10个副本(mapred.submit.replication属...原创 2020-01-02 16:36:37 · 206 阅读 · 0 评论 -
hive四种存储格式介绍与分析比较
一、四种存储格式介绍1、TestFileTextFile文件不支持块压缩,默认格式,数据不做压缩,磁盘开销大,数据解析开销大。这边不做深入介绍。2、RCFileRecord Columnar的缩写。是Hadoop中第一个列文件格式。能够很好的压缩和快速的查询性能,但是不支持模式演进。通常写操作比较慢,比非列形式的文件格式需要更多的内存空间和计算量。RCFile是一种行列存储相结合的存储...原创 2020-01-02 16:10:46 · 331 阅读 · 0 评论 -
hiveSQL调优
数据经过iputformat进行节分格式化,输入map,执行计算,map输出将数据写到缓冲区,并计算分区(上图标注地方有问题),当写到一定的阀值会spill到磁盘,并进行排序,当map执行完会将各个map写出的小文件进行归并排序。map执行完后reduce会起一个fechoutservlet将数据拷贝到reduce节点,并进行合并排序,送入redcue,执行计算。做过服务端开发同学知道,图上的每...原创 2020-01-02 15:51:24 · 338 阅读 · 0 评论 -
Spark Core 学习笔记
1、Spark 简介 Spark 是一种用于大规模数据处理的统一计算引擎。它是加州大学伯克利分校AMP 实验室所开发,后又成为Apache 顶级项目。围绕着Spark 还推出了Spark SQL、Spark Streaming、MLlib 和GraphX 等组件。 Spark使用Scala语言实现,它是一种面向对象的函数式编程语言,能够像操作本地集合对象一样轻松地操作分布式数据集。2、 ...原创 2020-01-01 14:10:02 · 224 阅读 · 0 评论 -
数据仓库
数据库是面向业务,数据仓库面向主题。数据仓库特点:面向主题是企业系统信息中的数据综合、归类并进行分析的一个抽象,对应企业中某一个宏观分析领域所涉及的分析对象。比如购物是一个主题,那么购物里面包含用户、订单、支付、物流等数据综合,对这些数据要进行归类并分析,分析这个对象数据的一个完整性、一致性的描述,能完整、统一的划分对象所设计的各项数据。如果此时要统计一个用户从浏览到支付完成的时间时...原创 2019-12-31 17:27:32 · 320 阅读 · 1 评论 -
clickhouse 基础知识
Clickhouse是一个用于联机分析处理(OLAP)的列式数据库管理系统(columnar DBMS)。传统数据库在数据大小比较小,索引大小适合内存,数据缓存命中率足够高的情形下能正常提供服务。但残酷的是,这种理想情形最终会随着业务的增长走到尽头,查询会变得越来越慢。你可能通过增加更多的内存,订购更快的磁盘等等来解决问题(纵向扩展),但这只是拖延解决本质问题。如果你的需求是解决怎样快速查询出...原创 2019-12-31 16:45:42 · 315 阅读 · 0 评论 -
大数据和云计算
大数据和云计算的区别1)目的不同:大数据是为了发掘信息价值,而云计算主要是通过互联网管理资源,提供相应的服务。2)对象不同:大数据的对象是数据,云计算的对象是互联网资源以及应用等。3)背景不同:大数据的出现在于用户和社会各行各业所产生大的数据呈现几何倍数的增长;云计算的出现在于用户服务需求的增长,以及企业处理业务的能力的提高。4)价值不同:大数据的价值在于发掘数据的有效信息,云计算则可以大...原创 2019-12-24 11:15:16 · 450 阅读 · 0 评论 -
Impala和Hive的关系
Impala和Hive的关系原创 2019-12-21 13:05:33 · 185 阅读 · 0 评论 -
spark
RDD(Resilient Distributed Dataset )• 五大特性:– A list of partitions– A function for computing each partition– A list of dependencies on other RDDs– Optionally, a Partitioner for key-value RDDs• shu...原创 2019-11-15 00:04:52 · 157 阅读 · 0 评论 -
简单理解Zookeeper的Leader选举
简单理解Zookeeper的Leader选举原创 2019-10-16 17:49:24 · 164 阅读 · 0 评论 -
HDFS写详解 block、packet与chunk
block、packet与chunk在DFSClient写HDFS的过程中,有三个需要搞清楚的单位:block、packet与chunk;block是最大的一个单位,它是最终存储于DataNode上的数据粒度,由dfs.block.size参数决定,默认是64M;注:这个参数由客户端配置决定;packet是中等的一个单位,它是数据由DFSClient流向DataNode的粒度,以dfs.write...转载 2018-04-01 13:26:03 · 3180 阅读 · 1 评论 -
Hive基础
desc t2;本地数据load data local inpath '/root/data/sutdent01.txt' HDFS中的文件load data inpath Hive中的大部分查询会转换成mapreduce作业进行select * from table 不会,因为是全表查询 select 字段 会执行distinct 合并相同的简单查询的Fetch Task,执行简单查询语句(没...原创 2018-03-26 17:59:23 · 107 阅读 · 0 评论