- 博客(141)
- 资源 (1)
- 收藏
- 关注
原创 Flink cdc3.0同步实例(动态变更表结构、分库分表同步)
基于 Flink CDC 3.0 同步 MySQL 到 Doris ,来体验整库同步、表结构变更同步和分库分表同步等功能。
2023-12-20 17:32:50
13460
24
原创 Flink源码解析(一、source原理)
source/sink 是flink最核心的部分之一,通过对其实现原理的学习,结合源码debug,有助于加深对框架处理过程的理解,以及架构设计上的提升。
2022-11-27 12:55:41
2281
原创 Iceberg (一、presto和trino实践——行级更新)
Iceberg 是一种用于大型分析表的高性能格式。Iceberg 为大数据带来了 SQL 表的可靠性和简单性,文章讲述 Presto/Trino对iceberg的入门实践
2022-09-26 19:15:34
3659
原创 Debezium指定binlog位置初始化异常排查修复
文章目录异常现象如何复现排查定位线索定位异常现象最近项目需要使用Debezium指定binlog位置读取数据,当配置FileDatabaseHistory 保存offset就会出现无法识别schema异常。14:52:18.237 [blc-9.135.12.10:3307] ERROR io.debezium.connector.mysql.MySqlStreamingChangeEventSource - Encountered change event 'Event{header=EventHe
2022-05-17 20:27:46
3953
2
原创 Apache Druid(二、架构设计)
文章目录回顾架构 整体设计进程服务作用数据流数据生产数据查询查询的优化索引服务存储设计Datasrouces and segmentssegment设计 特殊数据结构命名设计实际物理存储Segment创建过程参考回顾上一篇提供druid的安装是很早的版本了 https://blog.youkuaiyun.com/yyoc97/article/details/88411429,目前druid的安装使用会更简洁些快速入门。因为现在接触的业务有使用到这个组件,今天我们再来学习下它整体的架构。架构 整体设计这个是Dr
2021-08-21 17:47:39
687
原创 scala dataframe添加一列行号到开头
需求项目有时候需要在dataframe开头添加字段,之前也没搜到好的案例。下面就写个相对简洁的方法。实现import org.apache.spark.sql.SparkSessionimport org.apache.spark.sql.functions.{col, monotonically_increasing_id}object SparkTest4 { def main(args: Array[String]): Unit = { val sc = SparkSessio
2021-04-30 16:35:00
1332
2
原创 DataX导数的坑
安装按照Git Quick StartDownload 中的描述,选择直接点击DataX下载地址,然后解压执行自检脚本: python {YOUR_DATAX_HOME}/bin/datax.py {YOUR_DATAX_HOME}/job/job.json,到这为止一切都是正常的。异常于是根据reader和writer的格式配置自己的json脚本。{ "core": { "transport" : { "channel": {
2020-12-21 12:19:20
21522
原创 clickhouse(十三、JDBC引擎)
准备异常Caused by: java.sql.SQLException: No suitable driver found for jdbc:postgresql://dev-111:5432/report?user=dev&password=123456 at java.sql.DriverManager.getConnection(DriverManager.java:689) at java.sql.DriverManager.getConnection(
2020-12-18 18:33:51
1311
原创 scala cube聚合操作实例
前言因为内部平台spark-sql不方便调优、配置资源的因素,某些情况还是会用到scala dateframe操作数据,今天记录一些关于聚合,count distinct多个字段,重名展示的一些示例。数据准备Jack2 22 20200405Jack2 21 20200401Jack2 21 20200401Kate 22 20200406Mi2ng 20 20200406代码示例def main(args: Array[String]): Unit = { val sc = S
2020-12-08 16:27:40
418
原创 scala(Row、Array、Tuple、Class、RDD、DF之间类型转换)
前言spark中因为Rdd和Dataframe的一些分装函数处理,经常会遇到类型的相关转换,今天就记录些常见的几种类型转换。Array => Rowval arr = Array("aa/2/cc/10","xx/3/nn/30","xx/3/nn/20")// val row = Row.fromSeq(arr)val row = RowFactory.create(arr)Row => Arrayval a:Array[Any] = row.toSeq.toArray有时
2020-10-25 15:34:17
12585
原创 spark数据倾斜处理实践
文章目录判断是否倾斜实践定位解决判断是否倾斜通过Spark Web UI查看运行到了哪个Stage。 主要看最慢的Stage各task里 Shuffle Write Size / Records分配的数据量,来确定是否是数据倾斜。实践定位如图stage基本在几分钟内、而这个stage运行较长时间,却只有一个task没完成了。这种情况发生倾斜的概率就很大了。我们可以点到具体的stage中看下详情。从DAG中我们可以看到有leftOuterJoin算子。所以任务必然有shuffle产生,接着继续
2020-10-21 21:28:48
1085
原创 clickhouse(十二、踩坑之路)
Q1DB::Exception: Cannot create table from metadata file /data/clickhouse/metadata/default/dwd_test.sql, error: DB::Exception: The local set of parts of table default.dwd_test doesn’t look like the set of parts in ZooKeeper: 65.88 million rows of 85.04 mi.
2020-09-14 13:37:53
22721
19
原创 metabase常用指令
获取管理员sessioncurl -X POST -H "Content-Type: application/json" -d '{"username": "root@qq.com", "password": "root"}' http://127.0.0.1:3000/api/session{"id":"c9ad042a-9481-4547-bd77-e83321e20f26"}% 创建账号将上面获取的id填到 X-Metabase-Session 中。 分组可以不填,如果填写grou.
2020-09-08 16:39:23
1856
原创 clickhouse(十一、 实时分析优化AggregateFunction及物化视图 )
文章目录AggregateFunction物化视图原理AggregateFunctionAggregatingMergeTree就有些许数据立方体的意思,它能够在合并分区的时候,按照预先定义的条 件,聚合数据。同时,根据预先定义的聚合函数,计算数据并通过二进制的格式存入表内。将同一分组 下的多行数据,聚合成一行,既减少了数据行,又降低了后续聚合查询的开销。-- 建表语句CREATE TABLE agg_table( id String, city String, code Aggregate
2020-08-04 22:17:33
9379
原创 clickhouse(十、 特殊函数应用 )
文章目录分组取每组前n条分组、汇总同时计算表重命名分组取每组前n条数据分析分组展示N行想必大家都不陌生,clickhouse也很方便的提供了相关的查询语法:LIMIT n BY express,我们以系统表为例,用到的属性有数据库名、表名、表大小。-- 数据库分组取每个库下最大的三个表SELECT database, table, formatReadableSize(sum(data_compressed_bytes)) AS bytes FROM system.parts GR
2020-07-23 11:59:51
4155
转载 深度对比delta、iceberg和hudi三大开源数据湖方案
目前市面上流行的三大开源数据湖方案分别为:delta、Apache Iceberg和Apache Hudi。其中,由于Apache Spark在商业化上取得巨大成功,所以由其背后商业公司Databricks推出的delta也显得格外亮眼。Apache Hudi是由Uber的工程师为满足其内部数据分析的需求而设计的数据湖项目,它提供的fast upsert/delete以及compaction等功能可以说是精准命中广大人民群众的痛点,加上项目各成员积极地社区建设,包括技术细节分享、国内社区推广等等,也在逐步地
2020-07-20 21:17:58
933
原创 clickhouse(九、metabase链接及时区配置)
文章目录安装metabase配置clickhouse驱动metabase时区配置安装metabase# 选用docker方式,下载镜像docker pull metabase/metabase# 创建插件目录mkdir -p /data/docker/metabase/plugins# 启动容器,将目录挂载到容器/tmp 目录下docker run -d -v /data/docker/metabase/plugins:/tmp \ --name metabase \ meta
2020-07-13 10:36:14
6276
12
转载 ClickHouse之DBA运维宝典
ClickHouse 中有没有一些能够 “安家立命” 的运维 SQL 语句。我想对于这个问题很多朋友都会有兴趣,所以就在这里做一个简单的分享。在 ClickHouse 默认的 system 数据库下(databse),拥有众多的系统表。我们对 ClickHouse 运行状态的各种信息,就主要来自于这些系统表。接下来就列举一些常用的运维 SQL 语句。 当前连接数 众所周知,CH 对外暴露的原生接口分为 TCP和 HTTP 两类,通过system.metrics即可查询当前...
2020-06-30 09:50:44
1196
1
原创 clickhouse(八、特有存储结构和分布式表)
文章目录存储结构逻辑划分列式存储稀疏索引分布式表存储结构以下实例我们都以clickhouse最常用的*MergeTree(合并树)子类引擎来做介绍。逻辑划分以分布式表为例,那么ck数据存放于该集群下多个shard分片中。如果shard不在一个节点上,也就是数据会分散到多台机下。每个分片中的数据会根据建表时指定的partition在进行划分,而单个partition中,如果数据容量超过一定阈值又会重新拆分。# 表结构:${ck_data}/metadata/path_to_table/*.sql
2020-05-29 00:33:10
2124
原创 clickhouse(七、集群监控)
文章目录介绍chproxygrafanaprometheus安装配置chproxyprometheusgrafana监控配置配置DataSources导入模板查看效果结尾介绍集群监控对于一个生产应用的重要性不言而喻。今天我们就来看下clickhouse集群监控的实践。对于还不熟悉clickhouse相关组件的朋友,本节有必要先介绍一些工具。chproxy首先在使用ck集群时,通常我们通过会利用到 chproxy 这个开源的代理工具,主要用于负载均衡、并发控制、用户权限控制等操作。grafanag
2020-05-12 15:53:22
5381
11
原创 通俗易懂的大数据平台概念和架构
文章目录前言问题什么是大数据为什么需要数据平台数据平台整体模型模块分析主流平台前言今天为什么来写这个内容了,一是前些天有个非行业内的好朋友想了解了大数据相关概念的内容,搜了下网上平台相关的介绍,对于业内和业外的感觉都不太完善。另外就是自己也想定时归纳下认知。所以今天特意描述下自己的愚见,也欢迎大家指点。问题在开始今天的描述前,这里我先提一个问题。假设双11马总让大家来计算下淘宝过去1小时购...
2020-04-25 14:41:05
3112
转载 58同城离线计算平台设计与实践(大数据进阶)
编者荐语:58离线计算平台基于 Hadoop 生态体系打造,单集群4000+台服务器,数百 PB 存储,日40万计算任务,面临挑战极大。本次分享将聚焦大数据平台离线计算和大家一起系统的探讨58在离线计算平台建设实践的思路、方案和问题解决之道。分享嘉宾:余意 58同城高级架构师编辑整理:史士博内容来源:58大数据系列直播出品平台:DataFun导读:58离线计算平台基于...
2020-04-13 18:38:41
978
转载 数据仓库(二、美团设计实践)
OneData建设探索之路:SaaS收银运营数仓建设背景随着美团业务的发展,频繁迭代和跨部门的垂直业务单元变得越来越多。但由于缺乏前期规划,导致后期数仓出现了严重的数据质量问题,这给数据治理工作带来了很大的挑战。在数据仓库建设过程中,我们总结的问题包括如下几点:缺乏统一的业务和技术标准,如:开发规范、指标口径和交付标准不统一。 缺乏有效统一的数据质量监控,如:列值信息不完整和不准确,...
2020-04-09 18:45:28
3123
转载 美团1万台 Hadoop 集群 YARN 的调优之路
编者荐语:YARN作为Hadoop的资源管理系统,负责Hadoop集群上计算资源的管理和作业调度。随着集群规模扩大以及业务量的增长,集群调度能力会随着压力增加而逐渐下降。美团是如何解决这个问题的呢?以下文章来源于美团技术团队,作者世龙 廷稳美团技术团队9000+工程师,如何支撑中国领先的生活服务电子商务平台?3.2亿消费者、500万商户、2000多个行业、几千亿交易额背后...
2020-04-05 22:13:46
523
原创 yarn capacity scheduler调度器实践
文章目录简述配置测试异常结尾简述能力调度器在生产实践中是用的较多的一种模式,今天单机来实践一下。hadoop版本我这里选用了3.1.2,spark是用的2.4.3配置yarn-site.xml这里主要配置yarn.resourcemanager.scheduler.class属性就好。<configuration> <property> ...
2020-04-01 18:28:29
472
原创 clickhouse(六、集群扩容)
文章目录背景方案复制配置权重测试结尾背景之前公司面临磁盘不足的问题、如果通过增加磁盘来缓解了。但是clickhouse金额集群扩容是发展迟早要面临的问题,所以尝试思考解决方案。ck不同于hadoop体系,hdfs当集群增减节点时可以通过balance命令去自动调节。但ck集群不能自动感知集群拓扑变化,也不能自动 balance 数据。当集群数据量较大,复制表和分布式表过多时、想做到表维度、或者...
2020-03-30 19:13:18
7695
7
原创 org.apache.flink.table.api.TableException: Only the first field can reference an atomic type.
文章目录异常maven依赖flink sql实例方案异常Exception in thread "main" org.apache.flink.table.api.TableException: Only the first field can reference an atomic type. at org.apache.flink.table.api.TableEnvironmen...
2020-03-30 16:28:33
2106
原创 最新elasticsearch7(七、集群多主高可用配置)
文章目录前言配置集群间证书认证elasticsearch.yml验证客户端集群配置restHighLevelClientjdbc参考前言前面介绍了es7相关的一些用法。这一节我们来实践下集群高可用搭建,以及账号权限的配置。之前看了很多博主介绍的都是从主模式,主节点挂了集群也就不能对外服务了。目前使用的最新版本7.6.0。账号配置需要破解x-pack包。(如果不需要设置密码可以忽略)配置集...
2020-02-26 18:23:19
4585
5
转载 干货 | 携程机票数据仓库建设之路
一、前言随着大数据技术的飞速发展,海量数据存储和计算的解决方案层出不穷,生产环境和大数据环境的交互日益密切。数据仓库作为海量数据落地和扭转的重要载体,承担着数据从生产环境到大数据环境、经由大数据环境计算处理回馈生产应用或支持决策的重要角色。数据仓库的主题覆盖度、性能、易用性、可扩展性及数据质量都是衡量数据仓库解决方案好坏的重要指标。携程机票部门数据仓库也在不断摸索向着这些目标砥砺前行。...
2020-02-20 18:24:12
710
原创 最新elasticsearch7(六、sql查询工具datagrip)
文章目录准备导入驱动sql实测准备我们需要下载一个DataGrip,是JetBrains公司推出的管理数据库的产品。然后通过maven下载对应版本jdbc的jar包x-pack-sql-jdbc。导入驱动我们在maven的仓库找到jar包,或者也通过插件导出 x-pack-sql-jdbc-7.x.x.jar文件配置驱动使用EsDriver7.5.1驱动连接测试地址jdbc:es:...
2020-02-18 21:58:02
4939
原创 最新elasticsearch7(五、结合mybatis、springboot实例)
文章目录前言前言上一篇介绍Elasticsearch7.5的破解方法,结果csdn现在莫名其妙不支持破解、激活类博文公开,审核没有通过。不过网上也有其他版本的破解方式,新版本也就一些细节区别,有需要的也可以后面留言。这节我们接着第三节写下Elasticsearch结合mybatis的实例。...
2020-02-12 13:49:17
3908
27
原创 最新elasticsearch7(三、jdbc链接sql查询)
文章目录采坑新方案结尾采坑这节我们来说下如何使用sql来查询es,网上很多使用 NLPChina提供的elasticsearch-sql包,比如gitlab上给出的案例public void testJDBC() throws Exception { Properties properties = new Properties(); properties.pu...
2020-02-07 17:41:40
4204
原创 最新elasticsearch7(二、批量插入存在即更新java)
文章目录前言唯一键批量插入批量插入或更新结尾前言本篇开发环境基于上篇,客户端client使用rest风格的高等级(high level)API,这节我们来讲下ES的批量插入或更新操作。唯一键这里先提个概念,存在则更新。ES是以_id来作为doc的唯一键的,等同于主键,但它没有像关系型数据库的索引,不过我们开始可以利用_id来实现我们唯一索引的目的。当有多个字段需作为唯一键时,我们可以利用h...
2020-02-05 16:46:03
13958
1
原创 最新elasticsearch7(一、增删改查java)
文章目录前言文档使用spring配置CRUD前言之前想到网上找几个es结合spring的简单实例,但是因为es的版本众多,个别版本的差异还较大,另外es本身提供多种api,导致许多文章各种乱七八糟实例,很难找到版本匹配直接能用的。所以后面直接放弃,从官网寻找方案,这里我使用elasticsearch最新的7.5版本来做样例,这里特别写一下官方文档的使用,方便小伙伴遇到问题可以自行查找。文档使...
2020-02-04 16:32:08
3283
4
原创 nginx服务器高并发配置详解(单机3w+并发)
文章目录前言nginx配置nginx异常系统配置apache-ab压测测试部分问题尾言前言以前没有动手实践高并发系统搭建,对它的认知局限在事务控制,异步处理,微服务,负载均衡的应用层处理上。这两天在服务器的实践调优,了解如何配置参数,更重要的是知道为什么要这么配置,从而认识到了应用与操作系统的一些相关联系。这个过程遇到了许多bug和系统相关,在这次记录中也会一起提到。nginx配置下面是...
2019-12-29 21:06:28
11007
15
转载 数据库内核杂谈(一):一小时实现一个基本功能的数据库
很好的数据库内核系列文章,用简洁的样例描述数据库内核的众多原理。虽然后面优化器的算法难以理解,但是在其他章节我相信你一定也会有收获。数据库内核杂谈(二):存储“演化论”数据库内核杂谈(三):索引优化数据库内核杂谈(四):执行模式数据库内核杂谈(五):如何实现排序和聚合数据库内核杂谈(六):表的 JOIN(连接)数据库内核杂谈(七):数据库优化器(上)数据库内核杂谈(...
2019-12-26 18:34:22
3693
Docker技术入门与实战PDF
2017-12-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人