- 博客(449)
- 资源 (12)
- 论坛 (1)
- 收藏
- 关注
原创 每天进步一点点【2021-1-16】
每日一读Clickhouse源码解读 - 两个核心机制的数据抽象https://www.aboutyun.com/forum.php?mod=viewthread&tid=301481、如何理解Column组织?2、如何理解MergeTree组织?3、三种Function接口如何使用?4、机器学习接口有哪些?大数据项目之电商数仓(总结)(三):系统业务数据仓库https://www.aboutyun.com/forum.php?mod=viewthread&tid=30149
2021-01-16 13:27:46
7
原创 代码中如何取消正在运行的Flink Streaming作业
1可以通过 StreamExecutionEnvironment#executeAsync 提交作业,返回 JobClient [1], 通过JobClient 可以 cancel 作业,获取 job status。[1] https://cwiki.apache.org/confluence/display/FLINK/FLIP-74%3A+Flink+JobClient+API2如果是想做一个作业管理的平台,可以尝试看一下 CliFrontend[1] 中相关的逻辑,对于 On Yarn的作
2021-01-15 13:15:47
12
原创 Flink连接Hive代码测试案例
import org.apache.flink.table.api.{EnvironmentSettings, StatementSet, Table, TableEnvironment, TableResult}import org.apache.flink.table.catalog.hive.HiveCatalogimport org.apache.flink.types.Rowimport org.apache.flink.util.CloseableIterator/** * @pa
2021-01-15 09:48:55
22
原创 【Flink答疑】Flink sql 状态过期后,checkpoint 大小没变化
版本: 1.12.0方式: flink sql测试sql:select a.id,b.money,b.createTime from test_state_from afull join test_state_from1 b on a.id=b.id;问题:test_state_from和test_state_from1 分别插入50万条数据,查看 checkpoint 大小为83m,state ttl 设 置为16分钟,30分钟后查看checkpoint的值还是83m,状态过期清理
2021-01-15 09:35:43
16
原创 【Flink 注意】Flink checkpoint清除策略使用指南
文章目录Flink Checkpoint 目录的清除策略应用代码Flink源码需要注意Flink Checkpoint 目录的清除策略应用代码CheckpointConfig checkPointConfig = streamEnv.getCheckpointConfig();checkPointConfig.setCheckpointingMode(CheckpointingMode.EXACTLY_ONCE);checkPointConfig.setCheckpointTimeout(1 *
2021-01-14 20:16:25
25
原创 【Flink纠错】The method requestJob‘s result size 19811407 exceeds the maximum size 10485760
完整log日志见最后报错信息:关键报错信息是:org.apache.flink.runtime.rpc.akka.exceptions.AkkaRpcException:The method requestJob's result size 19811407 exceeds the maximum size 10485760 .这是flink的Akka部分报的错,相关源码如下:https://github.com/apache/flink/blob/d093611b5dfab95fe62e4f
2021-01-14 19:47:37
9
原创 Python threading 线程 target 函数参数传递 args要用中括号
今天开启线程传递参数的时候,出现了一个小问题,一直不能传递多个参数,如下import threadingthread1 = threading.Thread(target=fun, args=[1, 2, 3,])thread1.start()thread1.join()要用中括号,不用用大括号,一开始的时候,用的大括号,参数不能组成数组, 在最后的参数内,还要添加逗号.另外当传入参数是一个字符串的时候,一定要这样写也是中括号import threadingthread1 = thread
2021-01-14 15:42:08
25
1
原创 【flink源码解读 】flink 生成watermark的默认时间间隔
默认间隔是200ms(1) 在 StreamExecutionEnvironmennt的方法有体现@PublicEvolvingpublic void setStreamTimeCharacteristic(TimeCharacteristic characteristic) { this.timeCharacteristic = Preconditions.checkNotNull(characteristic); if (characteristic == TimeCharacteristic
2021-01-14 09:50:36
76
原创 hive 解决 ALTER TABLE cannot be used for a non-native table
hive on es 表中配置的es.nodes节点下线了怎么处理前提描述hive on es表中有一个属性es.nodesCREATE EXTERNAL TABLE `es_xxx`(xxx...)ROW FORMAT SERDE 'org.elasticsearch.hadoop.hive.EsSerDe' STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler' WITH SERDEPROPERTIES (
2021-01-13 17:49:30
15
原创 FlinkSQL 维表中的async参数使用介绍
在维表的DDL的WITH参数中添加async='true',Async 相关参数如下。参数说明是否必填备注async 是否开启异步请求 否 默认值为fasle。asyncResultOrder 异步结果顺序取值如下:unordered(默认值):无序。ordered:有序。asyncTimeoutMs 异步请求的超时时间 否 单位毫秒,默认值为3分钟。asyncCapacity 异步请求的队列容量 否 默认值为100。asyncCallbackThreads 回调处理线程数 否回调类中
2021-01-12 20:07:17
14
原创 Impala使用ORC文件格式
注意: Impala 3.1版本之后才可以使用ORC格式Impala官方文档描述:https://docs.cloudera.com/documentation/enterprise/6/6.1/topics/impala_orc.html#orc$ impala-shell -i localhost[localhost:21000] default> CREATE TABLE orc_table (x INT) STORED AS ORC;[localhost:21000] defaul
2021-01-12 19:47:13
27
原创 hive分区表插入/导入数据
数据库分区的主要目的是为了在特定的SQL操作中减少数据读写的总量以缩减响应时间,主要包括两种分区形式:水平分区与垂直分区。水平分区是对表进行行分区。而垂直分区是对列进行分区,一般是通过对表的垂直划分来减少目标表的宽度,常用的是水平分区.1. hive建立分区表create external table if not exists tablename(a string,b string)partitioned by (year string,month string)row format deli
2021-01-12 17:07:33
33
原创 Hive 表备注中文乱码
这个还是因为编码的问题:hive元数据表以及字段默认编码是 latin1,需要修改为utf8执行如下语句即可:alter table partition_keys modify column PKEY_COMMENT varchar(4000) character set utf8;如果已经乱码的,不方便再重新建hive表,可以直接去mysql表中找到对应的记录,直接修改元数据即可。...
2021-01-12 15:06:42
13
原创 hive jdbc连接报错 thrift.TApplicationException: Required field ‘client_protocol‘ is unset !
10:50:13.115 [main] ERROR org.apache.hive.jdbc.HiveConnection - Error opening sessionorg.apache.thrift.TApplicationException: Required field 'client_protocol' is unset! Struct:TOpenSessionReq(client_protocol:null, configuration:{set:hiveconf:hive.server2.
2021-01-12 11:04:24
11
原创 zookeeper的znode最多可以存储多大数据
看到Solr将index的配置文件放在zookeeper的znode中,所以就查询了相关问题:官方给的解释是1M,但是不建议存储太大的数据https://zookeeper.apache.org/doc/r3.6.2/zookeeperProgrammers.html#Data+Access翻译过来就是:存储在namespace中每个znode上的数据以原子方式读取和写入。读取将获取与znode关联的所有数据字节,而写入将替换所有数据。每个节点都有一个访问控制列表(ACL),用来限制谁可以做什
2021-01-12 09:06:21
58
原创 Flink消费kafka获取kafka消息的offset
虽然Flink消费kafka有着完善的checkpoint机制,可以使得程序停止后再次能从上一次的消费位点继续消费,但是有时候flink的checkpoint也会失败,或者checkpoint管理起来不够灵活,我们想自己维护kafka 的offset信息。但是Flink封装的FlinkKafkaConsumer并不能直接的获取kafka 消息的offset现在有两种实现方法,原理都是一样的,第二种就是知道这里可以改就行了,真正使用的时候还是第一种。原理:将kafka消息的offset和partitio
2021-01-09 16:05:29
61
原创 Canal 直接发送消息到 Kafka 、RocketMQ配置
文章目录环境版本一、 安装zookeeper二、安装MQ三、 安装canal.server3.1 下载压缩包3.2 将canal.deployer 复制到固定目录并解压3.3 配置修改参数mq相关参数说明mq顺序性问题MQ发送性能数据阿里云RocketMQ对接参数3.4 启动3.5 查看日志3.6 关闭3.7 MQ数据消费canal 1.1.1版本之后, 默认支持将canal server接收到的binlog数据直接投递到MQ, 目前默认支持的MQ系统有:kafka: https://github.
2021-01-06 20:04:39
61
原创 Currently, defining WATERMARK on a changelog source is not supported
fink mysql cdc报错:Currently, defining WATERMARK on a changelog source is not supported原因为flink cdc connector 表不支持定义 watermark将watermark定义删除即可
2021-01-06 19:39:44
7
原创 Canal使用官方指南
环境要求1. 操作系统 a. 纯java开发,windows/linux均可支持 b. jdk建议使用1.6.25以上的版本,稳定可靠,目前阿里巴巴使用基本为此版本. 2. mysql要求 a. 当前的canal开源版本支持5.7及以下的版本(阿里内部mysql 5.7.13, 5.6.10, mysql 5.5.18和5.1.40/48),ps. mysql4..
2021-01-06 11:37:09
69
原创 Flink streaming 程序报错not enough arguments for method addSource: (implicit evidence$9:
运行flink streaming程序报错:报错信息如下:Error:(21, 18) not enough arguments for method addSource: (implicit evidence$9: org.apache.flink.api.common.typeinfo.TypeInformation[String])org.apache.flink.streaming.api.scala.DataStream[String].Unspecified value parameter
2021-01-05 20:37:44
36
原创 Access denied; you need (at least one of) the RELOAD privilege(s) for this operation
使用flink mysql cdc时报错,原因是该用户没有mysql的reload权限:Caused by: java.sql.SQLSyntaxErrorException: Access denied; you need (at least one of) the RELOAD privilege(s) for this operation at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
2021-01-05 13:52:40
30
原创 CDH 集群服务器下线记录
CDH测试集群原来有5台服务器,现在需要下线其中的4号和5号服务器。服务器上主要有如下服务:要保证服务器平稳下线,所以就需要将这些节点一个个的轮流停止,万一中间那个环节报错了,也好排查。先从对整个集群影响最大的节点开始:zookeeper因为几乎所有的高可用分布式服务都是依赖zookeeper的,所以先下线zk节点。zookeeper直接停止4,5两台服务器上的zkServer,然后删除,然后cm会提示需要重启整个集群,按指示操作即可。KuduTabletServer下线kudu表建表时
2021-01-04 16:16:50
17
原创 linux下切换用户出现This account is currently not available
今天在一台新服务器下切换用户的时候出现“This account is currently not available”错误这是因为用户的shell设置的禁止登录解决办法:比如我是 su apache的时候出现的问题用vi看看 apache的帐号信息# cat /etc/passwd | grep apache发现它的shell是“/sbin /nologin”,需要将起改成“/bin/bash”# vim /etc/passwd修改完毕后,保存退出这 样再 su apache就可以很
2021-01-04 15:17:42
47
原创 flink如何使用oss作为checkpoint/savepoint/statebackend
将flink-oss-fs-hadoop jar包放在plugins目录下配置oss的endpoint,id和secret在需要使用oss的地方,声明oss:// 开头的schema,例如state backend创建的时候;// 读取 OSS bucketenv.readTextFile("oss://<your-bucket>/<object-name>");// 写入 OSS bucketstream.writeAsText("oss://<your-b.
2020-12-31 10:06:35
19
原创 备用库做逻辑备份时,主库执行了一个DDL语句会怎么样
当备库用–single-transaction 做逻辑备份的时候,如果从主库的 binlog 传来一个 DDL 语句会怎么样?假设这个 DDL 是针对表 t1 的, 这里我把备份过程中几个关键的语句列出来:Q1:SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;Q2:START TRANSACTION WITH CONSISTENT SNAPSHOT;/* other tables */Q3:SAVEPOINT sp;/* 时刻 1
2020-12-25 16:43:41
11
原创 Mysql的行锁(六)
Mysql的行锁是引擎层各个引擎独立实现的。MyIsam引擎不支持行锁,意味着MyISAM表的并发只能用表锁,会影响业务并发度,但是InnoDB是支持行锁的。行锁就是对数据库中某一行数据的加锁行为,行锁中也有一些特别的情况,如果考虑不全,就会导致非预期结果,比如接下来要说的两阶段锁。两阶段锁在事务中,行锁都是自动隐式开启的,某一行发生了数据修改行为,那么就会给这一行加上锁,一直到当前事务提交或回滚,行锁才会自动释放。上图,假设id是表t的主键,事务B的执行会被阻塞,直到事务A执行commit之后
2020-12-25 10:34:26
42
2
原创 Mysql全局锁和表锁(五)
根据加锁的范围,MySQL里面的锁大致可以分成全局锁、表级锁和行锁三类。全局锁对整个数据库实例加锁,mysql加全局读锁的方法:flush tables with read lock (FTWRL),当需要让整个库处于只读状态的时候,可以使用这个命令,之后其他线程的以下语句会被阻塞:数据更新语句(数据的增删改)、数据定义语句(包括建表、修改表结构等)和更新类事务的提交语句。全局锁的典型使用场景是,做全库逻辑备份。也就是把整库每个表都select出来存成文本。注意,在备份过程中整个库完全处于只读状态,
2020-12-23 20:42:40
42
1
原创 mysql 深入浅出索引(四)
执行select * from T where k between 3 and 5,需要执行几次树的搜索操作,会扫描多少行?下面是这个表的初始化语句。mysql> create table T (ID int primary key,k int NOT NULL DEFAULT 0, s varchar(16) NOT NULL DEFAULT '',index k(k))engine=InnoDB;insert into T values(100,1, 'aa'),(200,2,'b
2020-12-21 17:18:55
10
原创 Cannot modify mapreduce.job.name at runtime. It is not in list of params that are allowed to be modi
Hive报错:Error: Error while processing statement: Cannot modify mapreduce.job.name at runtime. It is not in list of params that are allowed to be modified at runtime (state=42000,code=1)解决方法:在hive-site.xml中增加如下配置:<property> <name>hive.sec
2020-12-21 10:58:59
98
原创 Mysql如何避免长事务对业务的影响
这个问题可以从应用开发端和数据库端来看:应用开发端:确认是否使用了set autocommit=0。这个确认工作可以在测试环境中开展,把MySQL的general_log开起来,然后随便跑一个业务逻辑,通过general_log的日志来确认。一般框架如果会设置这个值,也就会提供参数来控制行为,你的目标就是把它改成1。确认是否有不必要的只读事务。有些框架会习惯不管什么语句先用begin/commit框起来。我见过有些是业务并没有这个需要,但是也把好几个select语句放到了事务中。这种只读事务可
2020-12-20 16:18:59
33
原创 深入浅出索引Mysql索引(三)
数据库索引的出现是为了提高数据查询的效率,就像书的目录一样。索引常见的三种模型哈希表,有序数组,搜索树。哈希表是一种以key-value存储数据的结构,我们只要输入待查找的键即可,当多个key值有相同的hash结果时,就会出现一种链表结构:上图,user2和user4对应的key值都是N,查询user2的时候,就会先将ID_card_n2通过hash运算得到N,然后顺序遍历找到User2。因为是key值的hash值确定索引的位置,这样做的好处,增加数据的时候插入会很快,等值查询时也很快,但
2020-12-20 16:08:43
10
原创 PyFlink 在Pycharm中开启调试
问题描述:基于flink1.12.0版本的pyflink开发了一个程序,使用了udaf,想在本地的PyCharm环境调试该功能,在udaf的第一行打了断点,但是没法进入。可以确认程序有正确运行,因为sink到kafka里看了是有数据的,请问是否需要什么配置才能进行调试。问题解答:调试可以使用的方式为在PyCharm里创建一个Python Remote Debug run -> Python Remote Debug -> + -> 选择一个端口(比如6789)如下图:
2020-12-15 21:57:06
93
原创 Kafka日志存储解析(二)日志索引
每个日志分段文件对应了两个索引文件,主要用来提高查找消息的效率。如上图偏移量索引文件用来建立offset到物理地址之间的映射关系,方便快速定位消息所在的物理文件的位置。时间戳索引文件则根据指定的时间戳来查找对应的偏移量信息。Kafka中的索引文件属于稀疏索引,不是所有的消息都有对应的索引项。每当写入一定量(由broker端参数log.index.interval.bytes指定,默认是4KB)的消息时,偏移量索引文件和时间戳索引文件分别增加一个偏移量索引项和时间戳索引项。索引文件会被映射到
2020-12-08 14:18:33
35
原创 Kafka日志存储解析(一)
注:本文是《深入理解Kafka:核心设计与实践原理》的读书笔记Kafka中的消息是以Topic为单位管理的,每个Topic又可以分为若干个分区,消息在被发送后悔根据分区规则被追加到特定的分区,每条消息都会有一个唯一的“编号”,也就是我们常说的offset。Kafka消息日志(Log)是以分区为单位存储在磁盘中,为了便于管理和存储,这些日志数据被切分为若干个LogSegment来进行存储,而每个LogSegment 实际上对应于磁盘上的一个日志文件和两个索引文件,以及可能的其他文件(比如以.txninde
2020-12-05 18:02:47
43
原创 DBeaver 连接 Hive 报错解决
版本信息DBeaver:7.3.0Hive: CDH 5.12.1 集成的 1.1.0问题描述DBeaver 连接各种数据库时需要自己安装驱动编辑驱动设置,将hive-jdbc-1.1.0.jar添加并加载进去后, 点击测试连接然后就开始报各种诸如下面截图的错误。解决问题后来经过一步步的排查,发现DBeaver 连接 Hive 不仅仅需要hive-jdbc-1.1.0.jar这么简单,而是需要如下10个jar包,而且缺一不可:到此,问题解决,可以连接Hive了...
2020-12-01 19:09:06
94
原创 DBeaver 连接 Apache Phoenix 报错Unexpected version format 11.0.5
下载最新版的DBeaver 连接 Apache Phoenix,habse版本是cdh 5.12.1 自带的1.2.0Phoenix 是用的整合的cdh版本的4.14.0一切都配置好后连接报错:关键信息如下:......Unexpected version format 11.0.5......这个问题一般是哪个组件的版本不兼容后来打开DBeaver安装目录下,看到一个jre的文件夹,使用jre\bin\java.exe -version命令后果然出现了:open jdk ver
2020-12-01 14:45:31
57
转载 [squirrel使用]--Windows安装详解 [转]
注:本文转载自https://blog.csdn.net/high2011/article/details/80565352squirrel在windows下的安装文档一.下载安装从网址http://www.squirrelsql.org/下载相应版本的squirrel的安装jar包,比如下载squirrel-sql-3.7-standard.jar双击安装,出现如下安装界面,下一步开始安装二.配置连接phonenix(无kerberos认证)1.配置squirrel(1)在phoenix机器
2020-12-01 10:04:01
26
原创 Mysql事务隔离(二)
文章目录mysql事务事务的四大属性ACID隔离性与隔离级别测试案例事务隔离的实现事务的启动方式总结mysql事务事务就是要保证一组数据库操作,要么全部成功,要么全部失败。在 MySQL 中,事务支持是在引擎层实现的。MySQL 是一个支持多引擎的系统,但并不是所有的引擎都支持事务。比如 MySQL 原生的 MyISAM 引擎就不支持事务,这也是 MyISAM 被 InnoDB 取代的重要原因之一。事务的四大属性ACIDACID(Atomicity、Consistency、Isolation、D
2020-11-25 19:58:14
41
原创 一条SQL查询语句时如何执行的(一)
一、Mysql的逻辑架构图大体上Mysql可分为Server层和存储引擎层两部分。Server层:主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。存储引擎层主要负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、Memory 等多个存储引擎。现在最常用的存储引擎是 InnoDB,它从 MySQL 5.5.5
2020-11-21 14:28:03
24
数据仓库数据分层结构
2019-03-02
hadoop-2.7.2.zip
2020-09-16
sqoop-1.4.6.2.3.99.0-195.jar..zip
2020-08-14
javax.jms-1.1.jar.7z
2020-08-14
十大数据分析模型详解_白皮书.pdf
2020-06-24
mongodb-win32-x86_64-enterprise-windows-64-4.2.1-signed.msi
2020-06-05
Apache Flink结合Apache Kafka实现端到端的一致性语义.pdf
2019-05-16
基于Flink SQL构建实时数仓.pdf
2019-05-16
HBase权威指南
2019-03-02
求助 xshell能连上集群里的其他虚拟机,就连不上同一号段103的虚拟机
发表于 2019-02-21 最后回复 2019-09-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝