热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[说明]Doris使用培训

参考文献apachedoris在蜀海供应链数仓建设中的实践应用实践|数仓体系效率全面提升!同程数科基于ApacheDoris的数据仓库建设一、doris的背景介绍

参考文献


  • apache doris在蜀海供应链数仓建设中的实践

  • 应用实践 | 数仓体系效率全面提升!同程数科基于 Apache Doris 的数据仓库建设


一、doris的背景介绍


doris的使用场景

实时/离线一体的数仓

借用一句话: Uniq 模型拳打KUDU、HUDI,Aggregate 模型脚踢Kylin、ClickHouse,Duplicate 模型跟Hive 势不两立。Doris+Flink将会是实时数据仓库的重要基石。


doris选型依据

doris是一个rolap, 可以满足以下需求


  • 同时支持高并发点查询和高吞吐的Ad-hoc查询


  • 同时支持离线批量导入和实时数据导入

  • 同时支持明细和聚合查询

  • 兼容MySQL协议和标准SQL

  • 支持Rollup Table和Rollup Table的智能查询路由

  • 支持较好的多表Join策略和灵活的表达式查询

  • 支持Schema在线变更

  • 支持Range和Hash二级分区

相比较kylin, druid而言, Kylin 主要满足离线固化多维分析的需求,Druid 主要满足实时多维分析的需求。

对比其他的ROLAP系统,


  • SQL on Hadoop 系统:无法支持更新,性能也较差。

  • TiDB: TiDB 虽然当初号称可以支撑 100%的 TP 和 80%的 AP,但是架构设计主要是面向 TP 场景,缺少针对 AP 场景专门的优化,所以 OLAP 查询性能较差,TiDB 团队目前正在研发专门的 OLAP 产品:TiFlash,TiFlash 具有以下特点:列存,向量化执行,MPP,而这些特点 Doris 也都有。

  • SnappyData:SnappyData 是基于 Spark + GemFire 实现的内存数据库,机器成本较高,而我们机器资源很有限,此外 SnappyData 的计算是基于 JVM 的,会有 GC 问题,影响查询稳定性。

  • ClickHouse:Clickhouse 是一款单机性能十分彪悍的 OLAP 系统,但是当集群加减节点后,系统不能自动感知集群拓扑变化,也不能自动 balance 数据,导致运维成本很高,此外 Clickhouse 也不支持标准 SQL,我们用户接入的成本也很高。


为什么选择doris

Doris 的优点是功能强大,易用性好。 功能强大指可以满足我们用户的需求,易用性好主要指 兼容 Mysql 协议和语法,以及 Online Schema Change。

对平台侧来说,Doris 的优点是易运维,易扩展和高可用:


  • 易运维指 Doris 无外部系统依赖,部署和配置都很简单。

  • 易扩展指 Doris 可以一键加减节点,并自动均衡数据。

  • 高可用值 Dors 的 FE 和 BE 都可以容忍少数节点挂掉。


谁在用doris

olap引擎的三大类型:


名称

描述

细节数据存储位置

聚合后的数据存储位置

例子

ROLAP(Relational OLAP)

基于关系数据库的OLAP实现

关系型数据库

关系型数据库

ROLAP可选Presto、impala等,ClickHouse则是ROLAP的佼佼者。

MOLAP(Multidimensional OLAP)

基于多维数据组织的OLAP实现

数据立方体

数据立方体

Kylin、Druid

HOLAP(Hybrid OLAP)

基于混合数据组织的OLAP实现

关系型数据库

数据立方体

大数据篇:一文读懂@数据仓库

OLAP(总):Impala/Druid/Presto/Kylin/Clickhouse/Greenplum等对比


常见的doris数仓流程


doris的架构


doris架构简介

Doris (HOLAP),实时数据仓库的王者。_CesarChoy的博客-CSDN博客_doris 缺点

Doris是基于MPP架构的OLAP引擎,主要整合了Google Mesa(数据模型)、Apache Impala(MPP Query Engine)和Apache ORCFile (存储格式,编码和压缩)的技术。

FE:Doris的前端节点,以java语言为主,主要负责接受和返回客户端请求,元数据以及集群管理,查询计划生成等工作

BE:Doris的后端节点,以C++语言为主,主要负责数据存储与管理、查询计划执行等工作


新架构优点

•数据导入方式简单,我们针对不同业务场景使用了三种导入方式

1.Routin load : 异构实时异步数据导入(这种主要使用在一些临时的数据接入)

2.Stream Load :业务数据实时异步数据接入(我们封装了业务数据零代码入仓,后面我会介绍)

3.Insert into :定时通过 DWD 层数仓表生成 DWS/ADS 层数仓表

•数据链路缩短,数据实时性更高

•数仓使用成本降低


  1. Doris 支持 MySQL 协议,数据分析师可以直接进行自助取数。

  2. Doris 不依赖 Hadoop 生态圈组件,降低了架构的复杂度,大大降低运维成本

  3. Doris 同时支持离线批量和实时数据,一个框架搞定一切


二、doris原理和使用


doris的数据模型

数据模型、ROLLUP 及前缀索引 - Apache Doris


doris的底层数据组织方式


分区与分桶​

Doris 支持两层的数据划分。第一层是 Partition,支持 Range 和 List 的划分方式。第二层是 Bucket(Tablet),仅支持 Hash 的划分方式。

动态分区

创建doris表的时候支持动态分区,比如按照时间的HOUR、DAY、WEEK、    

MONTH    的时间方式创建动态分区表

动态分区 - Apache Doris

数据导入

导入总览 - Apache Doris


推荐阅读
  • Redis:缓存与内存数据库详解
    本文介绍了数据库的基本分类,重点探讨了关系型与非关系型数据库的区别,并详细解析了Redis作为非关系型数据库的特点、工作模式、优点及持久化机制。 ... [详细]
  • Java高级工程师学习路径及面试准备指南
    本文基于一位朋友的PDF面试经验整理,涵盖了Java高级工程师所需掌握的核心知识点,包括数据结构与算法、计算机网络、数据库、操作系统等多个方面,并提供了详细的参考资料和学习建议。 ... [详细]
  • 本文深入探讨了MySQL中的高级特性,包括索引机制、锁的使用及管理、以及如何利用慢查询日志优化性能。适合有一定MySQL基础的读者进一步提升技能。 ... [详细]
  • PHP面试题精选及答案解析
    本文精选了新浪PHP笔试题及最新的PHP面试题,并提供了详细的答案解析,帮助求职者更好地准备PHP相关的面试。 ... [详细]
  • 电商高并发解决方案详解
    本文以京东为例,详细探讨了电商中常见的高并发解决方案,包括多级缓存和Nginx限流技术,旨在帮助读者更好地理解和应用这些技术。 ... [详细]
  • Kylin 单节点安装
    软件环境Hadoop:2.7,3.1(sincev2.5)Hive:0.13-1.2.1HBase:1.1,2.0(sincev2.5)Spark(optional)2.3.0K ... [详细]
  • 本文详细探讨了在Java TCP编程中,如何理解和测量并发连接数、请求数及并发用户数,并提供了实际应用中的测试方法和优化建议。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 如何将955万数据表的17秒SQL查询优化至300毫秒
    本文详细介绍了通过优化SQL查询策略,成功将一张包含955万条记录的财务流水表的查询时间从17秒缩短至300毫秒的方法。文章不仅提供了具体的SQL优化技巧,还深入探讨了背后的数据库原理。 ... [详细]
  • 本文探讨了在Windows系统中运行Apache服务器时频繁出现崩溃的问题,并提供了多种可能的解决方案和建议。错误日志显示多个子进程因达到最大请求限制而退出。 ... [详细]
  • flea,frame,db,使用,之 ... [详细]
  • 深入探讨:Actor模型如何解决并发与分布式计算难题
    在现代软件开发中,高并发和分布式系统的设计面临着诸多挑战。本文基于Akka最新文档,详细探讨了Actor模型如何有效地解决这些挑战,并提供了对并发和分布式计算的新视角。 ... [详细]
  • 探讨在 Swoole 的 WorkerStart 回调中创建的对象如何在多个客户端之间实现隔离,确保每个客户端的数据独立性。 ... [详细]
  • 协程作为一种并发设计模式,能有效简化Android平台上的异步代码处理。自Kotlin 1.3版本引入协程以来,这一特性基于其他语言的成熟理念,为开发者提供了新的工具,以增强应用的响应性和效率。 ... [详细]
  • GreenPlum采纳ShareNothing的架构,良好的施展了便宜PC的作用。自此IO不在是DW(datawarehouse)的瓶颈,相同网络的压力会大很多。然而GreenPlum的查问优化策略可能防止尽量少的网络替换。对于首次接触GreenPlum的人来说,必定耳目一新。 ... [详细]
author-avatar
天狼飞虎神印
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有