-
[图片] Hadoop 是当前重要的大数据计算平台,它试图摒弃传统数据库的理念,重新构建一套新的大数据体系。但是,这并不是件很容易的事,在 Hadoop 的设计和实现中能看到一些先天不足的地方 ..
-
[图片] Hadoop 是个庞大的重型解决方案,它的设计目标本来就是大规模甚至超大规模的集群,面对的是上百甚至上千个节点,这样就会带来两个问题: 1.自动化管理管任务分配机制:这样规模的集群, ..
-
[图片] 这好像是个多余的问题,大部分大数据平台都把集群透明化作为一个基本目标在努力实现。 所谓集群透明化,是指把一个多台机器的集群模拟得像一个巨大的单机,只是系统管理层面知道体系是由很多单机 ..
-
虽然我们说了不少 SQL 在性能上的不足,但是,回归 SQL 却是当前大数据计算语法的一个发展倾向。在 Hadoop 体系中,早期的 PIG Latin 已经被淘汰,而 Hive 却一直坚挺; ..
-
[图片] 临时性计算,顾名思义,是指临时发生的一些计算需求。这种计算在日常数据处理中很常见,我们举一些例子: 应对业务部门的取数需求:比如销售部门想获得进行了某项促销活动前后的销售情况变化信息 ..
-
[图片] 报表开发,看起来只是数据呈现环节的事务,并不起眼,但仔细想想,它涉及的工作范围却非常广。如果把查询和交互分析也认为是报表事务的话(呈现形式本来也是报表),那么可以说,绝大多数 ETL ..
-
[图片] 我们继续从软件角度上看外存数据源的性能,来考察数据库的性能特点,在这篇文章中,我们只关心数据的访问性能,而不涉及计算性能。 关系数据库 关系数据库也是很常见的数据存储方式。本质上讲, ..
-
[图片] 我们讲过硬盘的性能特征,主要是针对硬件和操作系统层面进行分析的,现在我们来考虑应用软件层面的差异。 理论上讲,软件可以穿过操作系统直接进行磁盘扇区的访问,但实在太过于麻烦而几乎不会实 ..
-
[图片] 针对我们为数据分段设定的 4 个目标,区块方案会在灵活性和紧凑性之间出现一定的矛盾,还算不上很好,而且这个方案对于列存也不是太适合。 数据按列分别存储后,分段时必须保证各列同步,即各 ..
-
[图片] 现代计算机一般都有多 CPU 核,而日益广泛应用的固态硬盘也有较强的并发能力,这些硬件资源都为并行计算提供了有力的保证。不过,要实现并行计算还需要有较好的数据分段技术,也就是能方便地 ..
-
[图片] 明确维度定义后,还可以换一种更清晰的方式来审视数据库的结构。 这是我们常见的 E-R 图: [图片] E-R 图是个网状结构,实体(表)之间的外键关系直接画在图上,当实体较多时这个图 ..
-
[图片] 有了维度定义后,我们就可以来梳理前面讲过的简化 JOIN 语法了。 先定义字段维度: 维度字段的维度为其本身; 外键字段的维度为相应外键表中关联字段的维度; 测度字段没有维度; 这是 ..
-
[图片] 谈到数据分析时常常会用到维度这个词,针对数据立方体的钻取、旋转、切片等操作都是围绕维度进行的,几乎所有的数据分析人员都知道并会运用这个术语,但要问及它的定义,却几乎没有人能给出来。 ..
-
[图片] 我们再来看同维表和主子表的 JOIN,这两种情况的优化提速手段是一样的。 设两个关联表的规模(记录数)分别是 N 和 M,则 HASH 分段技术的计算复杂度(关联字段的比较次数)大概 ..
-
[图片] 我们继续讨论外键 JOIN,并延用 上一篇 的例子。 当数据量大到无法全部放进内存时,前述的指针化方法就不再有效了,因为在外存无法保存事先算好的指针。 一般来讲, ..
-
[图片] 我们再来看重新定义 JOIN 后如何能够提高运算性能,先看外键式 JOIN 的情况。 设有两个表: products 商品信息表 id商品编号 name商品名称 price单价 …… ..
-
蒋步星《JOIN 运算的简化与提速》系列技术文章。 【数据蒋堂】第 29 期:JOIN 运算剖析 【数据蒋堂】第 30 期:JOIN 简化 – 消除关联 【数据蒋堂】第 31 期:JOIN 简 ..
-
蒋步星《JOIN 运算的简化与提速》系列技术文章。 【数据蒋堂】第 29 期:JOIN 运算剖析 【数据蒋堂】第 30 期:JOIN 简化 – 消除关联 更多敬请期待… [图片] 我们先把上一 ..
-
近期,蒋步星在「天善智能」直播分享了《JOIN 运算的简化与提速》,视频地址:https://edu.hellobi.com/course/197/lessons (主题二)。 接下来的几期《 ..
-
10 月 19 日,蒋步星在「天善智能」直播分享了《JOIN 运算的简化与提速》,视频地址:https://edu.hellobi.com/course/197/lessons ( ..
-
[图片] 我们讨论过的常规聚合运算如 SUM/COUNT 和非常规聚合运算如 maxp/top,都是事先设计好的聚合函数。但如果我们想实现一个以前没有定义过的运算怎么办?是否可以用已有的语法和 ..
-
[图片] 标准 SQL 中提供了五种最常用的聚合运算:SUM/COUNT/AVG/MIN/MAX。观察这几个运算,我们发现它们都可以看成是一个以集合为参数返回单值的函数,我们就先把这个共同点理 ..
-
[图片] 细心的读者可能会发现,我们在讨论有序分组时只研究了待分组集合的成员次序对分组运算可能的影响,但即然要考虑集合的有序性,那么结果集的成员次序是不是也有业务意义呢? 确实有意义,不过重要 ..
-
[图片] 我们知道,SQL 延用了数学上的无序集合概念,所以 SQL 的分组并不关注过待分组集合中成员的次序。我们在前面讨论过的等值分组和非等值分组,也都没有关注过这个问题,分组规则都是建立在 ..
-
[图片] 前一期 【数据蒋堂】第 23 期:还原分组运算的本意 我们在上一期研究了分组运算的实质,即将一个集合按某种规则拆分成若干子集。不过,上期的关注重点在于还原分组运 ..