作者:RickyHuo 本文转载自公众号「大道至简bigdata」 原文链接:优秀的数据工程师,怎么用 Spark 在 TiDB 上做 OLAP 分析 TiDB 是一款定位于在线事务处理/在线分析处理的融合型数据库产品...,实现了一键水平伸缩,强一致性的多副本数据安全,分布式事务,实时 OLAP 等重要特性。...TiSpark 是 PingCAP 为解决用户复杂 OLAP 需求而推出的产品。它借助 Spark 平台,同时融合 TiKV 分布式集群的优势。...直接使用 TiSpark 完成 OLAP 操作需要了解 Spark,还需要一些开发工作。那么,有没有一些开箱即用的工具能帮我们更快速地使用 TiSpark 在 TiDB 上完成 OLAP 分析呢?...目前开源社区上有一款工具 Waterdrop,可以基于 Spark,在 TiSpark 的基础上快速实现 TiDB 数据读取和 OLAP 分析。
OLAP概念 OLAP(On-Line Analytical Processing)即联机分析处理,通过对数据大量分析,得出分析报告,提供决策支持,其侧重数据分析能力,比喻说用户行为分析。...OLAP/OLATP对比 OLAP 功能型分类 ROLAP: 关系型OLAP 特点:基于原始数据灵活的查询分析,但是其性能差 代表:Hive、Spark、Impala、Presto、Clickhouse...、Hologres MOLAP: 多维型OLAP 特点:基于预聚合数据分析,性能高,灵活性差 代表:Kylin、Druid HOLAP: 混合型OLAP 混合型OLAP同时具有ROLAP、MOLAP的特点...OLAP 选择 在当前面对大数据量、低延时、灵活查询的场景下,没有一个OLAP引擎能够完全满足所有场景,需要根据特定的场景做tradeoff. ----
OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。...在OLAP系统中,常使用分区技术、并行技术: 【1】分区技术在OLAP系统中的重要性主要体现在数据库管理上,比如数据库加载,可以通过分区交换的方式实现,备份可以通过备份分区表空间实现,删除数据可以通过分区进行删除...但有时候对于OLAP系统,我们又有分页的情况下,我们可以考虑在每条SQL中用hint。...但是,在OLAP环境中,可能会因为其特有的特性,提高OLAP的查询速度。...3.OLAP系统的重点是通过数据提供决策支持,所以查询一般都是动态,自定义的。所以在OLAP中,维度的概念特别重要。一般会将用户所有关心的维度数据,存入对应数据平台。
本文将从业务角度切入,通过对不同类型业务(OLTP 和 OLAP)在资源管控下的表现进行详尽分析,探讨在动态发展模式下,如何优化TiDB 的资源管理策略。...)OLAP vs OLAP 是否存在相互影响情况,包括 业务层(TPS、QPS、duration)环境介绍最小化部署 3PD,3TiDB,3TiKVTiDB 节点:为了公平 PD 和 TiDB 为混合部署...是存算分离的分布式数据库,多种不同类别的 SQL 难免会集中到一个 tidb 的计算节点上,而数据库中我们分为 OLTP 类业务和 OLAP 类业务,在这里我想说明下这两种业务的区别OLTP 类的业务特点是短小的...OLTP 和 OLAP 在相同计算节点上执行时,OLAP 业务表现会有 20% 左右的衰减(不过感觉 AP 类业务多个几秒钟无所谓);如果 AP 和 TP 类 SQL 分别运行在不同的 TiDB 计算节点上时...OLAP vs OLAP:当 OLAP 和 OLAP 在相同计算节点上执行时,查询效率会有下降(实测中发现过原来 300s 跑出的语句,时间翻倍);从返回结果看 OLAP 的资源优先级在实测过程中 medium
时序型数据的实时OLAP分析:a.明细数据产生速率快b.原始数据量大,以简单(sum/count/min/max)为主,c.去重指标不多(1~2个)doris1、运维成本低,无外部依赖,部署简单。...多维过滤场景下性能较低2、同时负责数据导入, compaction, 查询, 这些操作之间会相互影响基于MPP高性能计算,提供灵活高的分析(主要依靠现场计算):a.明细查询b.主键更新的场景c.百毫秒的高性能灵活d.OLAP...二、行业情况调研公司业务特点引擎使用阿里查询场景丰富、规模大、服务内部也对外提供云服务自研OLAP引擎为主、基于MPP架构和自研存储系统支持需求闭源。...典型系统:Doris腾讯查询场景丰富、大业务线有自己的OLAP团队;开源和自研OLAP都有不同业务线采用、典型系统:Clickhouse、PivotEngine(广点通自研OLAP引擎)头条查询场景集中
什么是OLAP ?...在做数据分析时有OLAP、OLTP是我们必定会遇到的技术,在介绍OLAP引擎技术选型之前,我们先看看这两个技术分别是什么意思?...OLAP系统则强调数据分析,强调SQL执行时长,强调磁盘I/O,强调分区。 OLAP 分类 OLAP 是一种让用户可以用从不同视角方便快捷的分析数据的计算方法。...主流的 OLAP 可以分为3类: 1.多维OLAP ( Multi-dimensional OLAP )、 2.关系型OLAP ( Relational OLAP ) 3.混合OLAP ( Hybrid...4.Others 除此之外,还包含一些其他分类,包括启用Web的OLAP(WOLAP),桌面OLAP(DOLAP),移动OLAP(MOLAP)和空间OLAP(SOLAP)。
和 OLAP 类型的请求开始力不从心,更坏的情况可能还会影响到 OLTP 类型的请求,所以针对 OLAP 场景设计了更符合其工作负载的 OLAP 类型数据库,通过将 OLTP 类型的数据同步到 OLAP...论文中,TiDB 选择的是方案 2,针对 OLTP 工作负载提供一个行存引擎 TiKV,针对 OLAP 工作负载负载提供一个列存引擎 TiFlash,那么数据强一致性和资源相互隔离怎么解决呢?...HTAP or (OLTP and OLAP) 到这里,TiDB 有了两个存储引擎:对 OLTP 友好的行存 TiKV,对 OLAP 友好的列存 TiFlash,其实这个不关键,关键的是这个两个存储引擎的数据同步是强一致性的...从单集群 TiDB 的角度来看,数据强一致性但资源相互隔离的 HTAP 是一个非常高效的能力,省去了数据从 OLTP 数据库同步到 OLAP 数据库的过程,也省去了将 OLAP 数据库计算结果需要提供在线业务使用时...不可能将整个公司的所有数据都放入一个 TiDB 集群中,那么虽然 TiDB 提供了 OLAP 能力,但是如果需要做 AP 操作的数据分布在多个集群中,这样依然需要将多个集群的数据从外部同步到一个提供 OLAP
OLAP组件选型 一、OLAP简介 1、olap准则 2、OLAP场景的关键特征 3、与oltp比较 二、开源引擎 1、Hive 2、spark SQL 3、presto 4、kylin 5、impala...简介 说起 OLAP 要追溯到 1993 年。...传统OLAP根据数据存储方式的不同分为ROLAP(relational olap)以及MOLAP(multi-dimension olap) ROLAP 以关系模型的方式存储用作多为分析用的数据,优点在于存储体积小...机制进行主节点容错,当主节点发生错误时,可以切换到Stand by节点继续服务 支持MapReduce 数据库内部压缩 一个重要的信息:Greenplum基于Postgresql,也就是说GreenPulm和TiDB...的定位类似,想要在OLTP和OLAP上进行统一。
实时 HTAP TiDB 作为典型的 OLTP 行存数据库,同时兼具强大的 OLAP 性能,配合 TiSpark,可提供一站式 HTAP 解决方案,一份存储同时处理 OLTP & OLAP 无需传统繁琐的...TiDB 的设计目标是 100% 的 OLTP 场景和 80% 的 OLAP 场景,更复杂的 OLAP 分析可以通过 TiSpark 项目来完成。...TiDB 集群主要包括三个核心组件:TiDB Server,PD Server 和 TiKV Server,此外,还有用于解决用户复杂 OLAP 需求的 TiSpark 组件。...TiSpark TiSpark 作为 TiDB 中解决用户复杂 OLAP 需求的主要组件,将 Spark SQL 直接运行在 TiDB 存储层上,同时融合 TiKV 分布式集群的优势,并融入大数据社区生态...至此,TiDB 可以通过一套系统,同时支持 OLTP 与 OLAP,免除用户数据同步的烦恼。 TiFlash TiFlash 是一类特殊的存储节点。
社区版和企业版 TIDB核心特性 水平弹性扩展 分布式事务支持 金融级高可用 实时 HTAP 云原生的分布式数据库 高度兼容 MySQL OLTP&OLAP(自学) OLTP(联机事务处理) OLAP(...实时 HTAP TiDB 作为典型的 OLTP 行存数据库,同时兼具强大的 OLAP 性能,配合 TiSpark,可提供一站式 HTAP 解决方案,一份存储同时处理 OLTP & OLAP 无需传统繁琐的...TiDB 的设计目标是 100% 的 OLTP 场景和 80% 的 OLAP 场景,更复杂的 OLAP 分析可以通过 TiSpark 项目来完成。...TiDB 集群主要包括三个核心组件:TiDB Server,PD Server 和 TiKV Server,此外,还有用于解决用户复杂 OLAP 需求的 TiSpark 组件。...至此,TiDB 可以通过一套系统,同时支持 OLTP 与 OLAP,免除用户数据同步的烦恼。 TiFlash TiFlash 是一类特殊的存储节点。
and Analytical Process,混合事务和分析处理) 同时支持OLTP 和OLAP,支持实时分析。...TiDB-serer最大程序下推算法与Hash/Join关键算子提供了基础的AP能力 TiDB可以比喻成一个大号的Mysql, 最早TiDB是为了解决在线业务的分库分表问题,由于以下特性: 1....借助生态,让spark跑在Tikv上 但是TiDB的最初定位是面向OLTP的系统,针对OLAP,很容易造成OOM,所以引入了spark,分装为Ti-spark,缓解了数据中台算力的问题。...4.行列混合引擎,列式引擎提供实时写入能力 这时候OLTP的查询和TIspark用的同一套底层存储TiKv,OLTP和OLAP的资源在软件层面上很难实现隔离 物理隔离是最好的资源隔离 列存天然对OLAP...6.TiDB-servert统一技术服务 7.Mpp解决计算节点的扩展与并行计算 OLAP的场景里,经常会出现大表关联,之前的架构中join是无法下推的,引入了MPP计算框架 TiDB关键技术创新
TiDB 架构以及它能支持哪些功能为主。...为什么要研究 TiDB ? 其实 TiDB 我想要了解已经很久了,但是一直都有点不想去面对这么大一滩代码。...同时它还负责下发数据调度命令给具体的 TiKV 节点; 存储节点:存储节点主要有两部分构成 TiKV Server 和 TiFlash TiKV :一个分布式的提供事务的 Key-Value 存储引擎; TiFlash:专门解决OLAP.../stable/tidb-architecture https://pingcap.com/blog-cn/tidb-internal-1/ https://pingcap.com/blog-cn/tidb-internal...-2/ https://pingcap.com/blog-cn/tidb-internal-3/ https://docs.pingcap.com/zh/tidb/stable/tidb-best-practices
[1509352844507_8075_1509352846303.jpg] PingCAP 作为本次算法大赛商业组参赛队,借助 TiDB 的算法引擎,展现了强大的复杂 OLAP 处理能力。...作为 PingCAP 的核心产品 TiDB 受 Google/F1 启发,具备强大的水平扩展,强一致性的多副本数据安全,分布式事务,实时 OLAP 等特性。...作为 TiDB 项目中针对解决用户复杂 OLAP 需求的重要组件,TiSpark 将 Spark SQL 直接运行在 TiDB 存储层上,同时融合 TiKV 分布式集群的优势,并融入大数据社区生态。...至此,TiDB 可以通过一套系统,同时支持 OLTP 与 OLAP,免除用户数据同步烦恼。...TiDB 融合了 OLTP 与 OLAP 能力,将数据价值最大化,通过技术创新研发,为市场提供更好的技术解决方案,希望能够降低实时数据分析行业的门槛。
实时 HTAP TiDB 作为典型的 OLTP 行存数据库,同时兼具强大的 OLAP 性能,配合 TiSpark,可提供一站式 HTAP 解决方案,一份存储同时处理 OLTP & OLAP 无需传统繁琐的...TiDB 的设计目标是 100% 的 OLTP 场景和 80% 的 OLAP 场景,更复杂的 OLAP 分析可以通过 TiSpark 项目来完成。...OLAP(联机分析处理) OLAP(Online Analytical Processing) 即联机分析处理,是数据仓库的核心部心,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。...TiDB 集群主要包括三个核心组件:TiDB Server,PD Server 和 TiKV Server,此外,还有用于解决用户复杂 OLAP 需求的 TiSpark 组件。 ...TPC-H 是数据分析领域的一个测试集,TiDB 2.0 在 OLAP 场景下的性能有了大幅提升,原来只能在数据仓库里面跑的一些复杂的 Query,在 TiDB 2.0 里面跑,时间基本都能控制在 10
当然,如果多点只是用另外一套 OLAP 数据库来满足财务分析需求并承担双数据库所带来的运维成本升高的话,那么故事到此就结束了。但 TiDB 给多点提供的却是一条完全不同的路径。...作为一款具备 HTAP 能力的数据库,TiDB 可以同时满足 OLTP 和 OLAP 两种不同应用的需求。...在面对多点业财一体中的 OLAP 需求时,TiDB 能够提供高性能的分析能力,满足业财一体在财务端的报表合并及分析需求。...业财一体化架构图 而 TiDB 的 HTAP 能力则意味着多点可以首先在 OLAP 领域部署 TiDB,解决现有痛点。...在实际部署当中,承担 OLTP 业务的 MySQL 和承担 OLAP 的 TiDB 之间通过 PingCAP 开发的 TiDB DM 工具和相关 API 实现高速数据同步,并且保证了金融级的数据一致性。
1.OLAP分类 2.OLAP常见的一些操作 1.上卷(Roll Up)/聚合:选定某些维度,根据这些维度来聚合事实,如果用SQL来表达就是select dim_a, aggs_func(fact_b
OLAP定义 OLAP 是 Online Analytical Processing system 的简称,是一个联机分析处理系统,主要目标是数据分析而不是数据处理。...OLAP 数据库存储的是 OLTP 输入的历史数据。可以允许用户查看不同纬度的数据。使用 OLAP,我们可以从大型数据库中提取信息并进行分析来做决策。...OLAP 还允许用户执行复杂的查询以提取多维数据。在 OLAP 中,即使事务在中间过程中失败,也不会损害数据完整性,因为用户使用 OLAP 系统只是从大型数据库中检索数据进行分析。...OLAP 中的事务很长,因此需要花费更多的时间以及更大的空间。与 OLTP 相比,OLAP 中的事务较少。甚至 OLAP 数据库中的表也可能不规范。...参考:Difference Between OLTP and OLAP
OLAP OLAP:On-Line Analytical Processing,联机(线上)分析处理。指处理分析型应用的场景。...OLAP 与 DSM:OLAP 的查询模式一般是同时查很多对象的几个属性。...列存数据库等就是面向 OLAP 的,因此,列式存储在大数据时代这种分析型场景中火了一把,如数据仓库 HBase。 NSM 不适用于 OLAP,因为会额外读取很多不需要的列。...HTAP 就是 OLAP 和 OLTP 两种场景的结合。在对新旧数据进行 OLAP 分析的情况下增加事务的处理来对数据进行更新。...一种构造 HTAP DBMS 的方式就是分别针对新旧数据构建两套引擎,一套负责 OLTP,一套负责 OLAP,相当于将关系数据库和列存数据库进行结合。
[y7u4oedjci.png] 随着实时 OLAP 技术的提升,一个新的实时架构被提出,暂时被称为“实时 OLAP 变体”。...相比于 Kappa 架构,实时 OLAP 变体架构可以执行更加灵活的计算,但需要依赖额外的实时 OLAP 算力资源。...接下来我们将介绍的 Flink + TiDB 实时数仓方案,就属于实时 OLAP 变体架构。 关于实时数仓及这些架构更加详细的对比说明,有兴趣的读者可以参考 Flink 中文社区的这篇文章。...在集成了 TiFlash 之后,TiDB 已经成为了真正的 HTAP(在线事务处理 OLTP + 在线分析处理 OLAP)数据库。...换句话说,在实时数仓架构中,TiDB 既可以作为数据源的业务数据库,进行业务查询的处理;又可以作为实时 OLAP 引擎,进行分析型场景的计算。
领取专属 10元无门槛券
手把手带您无忧上云