jjzjj

【SQL开发实战技巧】系列(三十七):数仓报表场景☞从表内始终只有近两年的数据,要求用两列分别显示其中一年的数据聊行转列隐含信息的重要性

系列文章目录【SQL开发实战技巧】系列(一):关于SQL不得不说的那些事【SQL开发实战技巧】系列(二):简单单表查询【SQL开发实战技巧】系列(三):SQL排序的那些事【SQL开发实战技巧】系列(四):从执行计划讨论UNIONALL与空字符串&UNION与OR的使用注意事项【SQL开发实战技巧】系列(五):从执行计划看IN、EXISTS和INNERJOIN效率,我们要分场景不要死记网上结论【SQL开发实战技巧】系列(六):从执行计划看NOTIN、NOTEXISTS和LEFTJOIN效率,记住内外关联条件不要乱放【SQL开发实战技巧】系列(七):从有重复数据前提下如何比较出两个表中的差异数据及

数据治理系列:数仓建模之数仓主题与主题域

背景:数据仓库之父BillInmon将数据仓库描述为一个面向主题的、集成的、稳定的、反应历史变化的数据集合,用于支持管理者的决策过程。从上面的引言里面,我们其实可以知道主题在数仓建设里面绝对是很重要的一环,这的确是的。数仓在建设过程中,对数据的组织管理上,不仅仅要进行横向的分层,也需要根据业务情况进行纵向的主题域划分。看到这里可能就有疑问了,上面明明说的是面向主题,怎么又突然说到主题域了,这里就延伸出主题和主题域的关系了。下面我就围绕数仓主题、主题域以及两者之间关系、划分方式等,进行更详细的阐述。 一、数仓主题是什么?主题域又是什么?1.数仓主题是什么?数仓主题(Subject)是在较高层次上

数据治理系列:数仓建模之数仓主题与主题域

背景:数据仓库之父BillInmon将数据仓库描述为一个面向主题的、集成的、稳定的、反应历史变化的数据集合,用于支持管理者的决策过程。从上面的引言里面,我们其实可以知道主题在数仓建设里面绝对是很重要的一环,这的确是的。数仓在建设过程中,对数据的组织管理上,不仅仅要进行横向的分层,也需要根据业务情况进行纵向的主题域划分。看到这里可能就有疑问了,上面明明说的是面向主题,怎么又突然说到主题域了,这里就延伸出主题和主题域的关系了。下面我就围绕数仓主题、主题域以及两者之间关系、划分方式等,进行更详细的阐述。 一、数仓主题是什么?主题域又是什么?1.数仓主题是什么?数仓主题(Subject)是在较高层次上

开源云原生数仓引擎ByConity 存储计算分离架构和优势

供稿|ByConity技术团队出品|CSDN云计算ByConity是一款字节跳动开源的云原生数仓引擎。它的一个重要优势是采用存储计算分离的架构,实现了读写分离和弹性扩缩容。这种架构确保读操作和写操作不会相互影响,使得计算资源和存储资源解耦,两者可以按需的且独立的扩缩容,确保资源高效利用,同时保证数据读写的强一致性。此外,ByConity支持多租户资源隔离功能,保证不同租户之间不会互相影响,更加适合多租户环境,同时ByConity采用主流的OLAP引擎优化,提供更加优异的读写性能。一、ByConity技术背景ClickHouse是一个开源的列式数据库管理系统,它采用Shared-Nothing的

数仓建模—AI+BI的解决方案

AI+BI的解决方案2018年3月,国家提出了“要加强新一代人工智能的研发应用。大力发展智能产业,拓展智能生活,并且大力改造提升传统的产业。”于是,被寄予厚望的人工智能便粉墨登场,从诞生伊始就得到的政策倾斜、产业扶持,到落地应用的技术井喷、造就风口。AI一出生就风光无限,一举一动都是话题性十足。2021年政府工作报告指出“加快数字化发展,协同推进数字产业化和产业数字化转型,建设数字中国。”于是,与数据相关的概念、平台、工具、也开始越来越多地被提及。而BI作为数字化领域的关键一环,也在市场的发展中拔得头筹。相似的机遇,交集的能力范围,互补的工具属性让无数人都对AI+BI充满了幻想。但AI真的如想

数仓知识07:数据增量更新的几种方式

1、增量更新的几种方式增量更新的本质,其实是获取源表中数据变化的情况(增、删、改),然后将源表中发生的变化同步至目标表中。不同的方式,获取源表中数据变化的情况不一样,受技术的限制、表结构的限制,某些方式可能无法获取到完整的数据变化情况,因此只能适用于特定的场景。方式简述适用场景详述优点缺点时间戳增量1记录每次读数完成时的最大时间戳,后续读数时只获取源头表中新增的数据,将其增量写入到目标表。源表只增不删不改源表有时间戳标记新增的数据第一次从源头表读取数据的动作完成之后,记录一下时间戳字段中最大的时间点,保存到一个记录表中。第二次从源头表读取数据之前,先获取记录表中最后/最大的时间点,只读取源表中

数仓之全量表、增量表、快照表、切片表、拉链表

目录一、全量表二、增量表三、快照表四、切片表五、拉链表1、概念2、拉链表的使用场景3、拉链表的实现方法1.同步ods数据2.创建拉链表3.初始化拉链表4.新增增量数据5.对比上日变化数据关链操作一、全量表记录每天的所有的最新状态的数据,有无变化都要上报,每次往全量表里面写数据都会覆盖之前的数据缺点:不能记录数据的历史变化,只能截止到当前最新、全量的数据二、增量表记录每天的新增的数据和改变的数据。三、快照表按日分区,记录截止数据日期的全量数据(每个分区都是记录截止当前分区日期的全量数据)。优点:可以反映历史的变化 缺点:在数据量大的情况下,每个分区存储的都是全量数据,数据冗余和浪费存储空间四、切

数仓工具—Hive集成篇之UDF写ES(04)

Hive—UDF写ES遇到一个问题,让人很无语,前面其实我们介绍过Hive写ES或者是Hive数据导出到ES的方案,其实基本上就是两类第一类是通过Hive的外部表,借助es-hadoop组件完成第二类是通过数据同步工具来完成,例如dataX或者我们自己写Spark代码但是今天遇到的这个场景,这两种方法都不太合适,我们的场景是在阿里云上的maxcompute将数据写到华为云上的elasticsearch,maxcompute由于是阿里云的基础组件由于阿里云提供了数据集成组件,所以maxcompute根本就不支持外部表,其实我们第一时间想到的就是那直接使用阿里云的数据集成工具不就好了嘛,问题是阿里

数仓工具—Hive集成篇之UDF写ES(04)

Hive—UDF写ES遇到一个问题,让人很无语,前面其实我们介绍过Hive写ES或者是Hive数据导出到ES的方案,其实基本上就是两类第一类是通过Hive的外部表,借助es-hadoop组件完成第二类是通过数据同步工具来完成,例如dataX或者我们自己写Spark代码但是今天遇到的这个场景,这两种方法都不太合适,我们的场景是在阿里云上的maxcompute将数据写到华为云上的elasticsearch,maxcompute由于是阿里云的基础组件由于阿里云提供了数据集成组件,所以maxcompute根本就不支持外部表,其实我们第一时间想到的就是那直接使用阿里云的数据集成工具不就好了嘛,问题是阿里

【SQL开发实战技巧】系列(二十九):数仓报表场景☞简单的树形(分层)查询以及如何确定根节点、分支节点和叶子节点

系列文章目录【SQL开发实战技巧】系列(一):关于SQL不得不说的那些事【SQL开发实战技巧】系列(二):简单单表查询【SQL开发实战技巧】系列(三):SQL排序的那些事【SQL开发实战技巧】系列(四):从执行计划讨论UNIONALL与空字符串&UNION与OR的使用注意事项【SQL开发实战技巧】系列(五):从执行计划看IN、EXISTS和INNERJOIN效率,我们要分场景不要死记网上结论【SQL开发实战技巧】系列(六):从执行计划看NOTIN、NOTEXISTS和LEFTJOIN效率,记住内外关联条件不要乱放【SQL开发实战技巧】系列(七):从有重复数据前提下如何比较出两个表中的差异数据及