[TOC]前言数据仓库的核心是展现层和提供优质的服务。ETL 及其规范、分层等所做的一切都是为了一个更清晰易用的展现层。一、数仓分层数仓分层的原则:为便于数据分析,要屏蔽底层复杂业务,简单、完整、集成的将数据暴露给分析层。底层业务变动与上层需求变动对模型冲击最小化,业务系统变化影响削弱在基础数据层,结合自上而下的建设方法削弱需求变动对模型的影响。高内聚松耦合,即主题之内或各个完整意义的系统内...
[TOC]前言本篇以及接下来更新的几篇关于数仓建设的文章都转载于大佬园陌,文章通俗易懂、内容全面非常值得向大家推荐!!!小编最近也在学习数仓相关知识,但是尝试好多次还是不能系统全面的整理出一套让自己满意的文章出来,特地转载大佬的文章大家一起学习,共同进步。再次感谢大佬,每篇文章末尾都会附上原文链接地址。一、数仓基本概念1、数据仓库架构我们在谈数仓之前,为了让大家有直观的认识,先来谈数仓架构,...
[TOC]一、前言版本信息:filebeat-8.3.3-linux-x86_64.tar.gz启动命令nohup ./filebeat -e -c filebeat-myconf.yml > filebeat.log 2>&1 &问题描述当FileBeat很久没有拉取到日志信息会自动关闭二、解决方案自定义Service方式启动2.1 创建filebeat.ser...
[TOC]前言MaterializeMySQL号称ClickHouse的王炸功能,本篇文章将结合具体示例来对MaterializeMySQL进行一个介绍本篇示例版本ClickHouse 21.7.3.14-2MySQL 8.0.23一、概述 MySQL 的用户群体很大,为了能够增强数据的实时性,很多解决方案会利用 binlog 将数据写入到 ClickHouse。为了能够监听...
[TOC]前言 ClickHouse 的物化视图是一种查询结果的持久化,它确实是给我们带来了查询效率的提升。用户查起来跟表没有区别,它就是一张表,它也像是一张时刻在预计算的表,创建的过程它是用了一个特殊引擎,加上后来 as select,就是 create 一个 table as select 的写法。 “查询结果集”的范围很宽泛,可以是基础表中部分数据的一份...
[TOC]一、概述查询 CK 手册发现,即便对数据一致性支持最好的 Mergetree,也只是保证最终一致性:我们在使用 ReplacingMergeTree、SummingMergeTree 这类表引擎的时候,会出现短暂数据不一致的情况。在某些对一致性非常敏感的场景,通常有以下几种解决方案。二、准备测试表和数据(1)创建表CREATE TABLE test_a( user_id U...
[TOC]一、数据类型1. 时间字段的类型 建表时能用数值型或日期时间型表示的字段就不要用字符串,全String类型在以Hive为中心的数仓建设中常见,但ClickHouse环境不应受此影响。 虽然ClickHouse底层将DateTime存储为时间戳Long类型,但不建议存储 Long 类型, 因为 DateTime不需要经过函数转换处理,执行效率高、可读性...
[TOC]一、概述 在clickhuse20.6版本之前要查看SQL语句的执行计划需要设置日志级别为trace才能可以看到,并且只能真正执行sql,在执行日志里面查看。在20.6版本引入了原生的执行计划的语法。在20.6.3版本成为正式版本的功能。二、基本语法EXPLAIN [AST | SYNTAX | PLAN | PIPELINE] [setting = value, ...
08.ClickHouse副本和分片介绍一、概述集群是副本和分片的基础,它将ClickHouse的服务拓扑由单节点延伸到多个节点,但它并不像Hadoop生态的某些系统那样,要求所有节点组成一个单一的大集群。ClickHouse的集群配置非常灵活,用户既可以将所有节点组成一个单一集群,也可以按照业务的诉求,把节点划分为多个小的集群。在每个小的集群区域之间,它们的节点、分区和副本数量可以各不相同...