当前位置: 首页 > news >正文

Doris2.0时代的一些机遇和挑战!

e5265c5bd583546e950b689184498aa7.png300万字!全网最全大数据学习面试社区等你来!

上个周五的时候,Doris官宣了2.0版本,除了在性能上的大幅提升,还有一些特性需要大家特别关注。

根据官网的描述,Doris在下面领域都有了长足进步:

  • 日志分析

  • 数据湖联邦分析场景

  • 数据更新效率和写入

  • 资源弹性和存算分离

  • 其他面向企业用户的易用性特性

在Doris出现这些能力之前,大家是没有机会免费用到这些能力的。数据库的这些能力集中在云平台上的一些付费数据库,不花钱根本体验不到。

这里面有一些特别重要的更新,大家在深度使用Doris的时候可能需要特别注意一下,这些内容也是很多面试官喜欢问的,我结合我的一些实践,挑一些重要的说。

点查并发能力的支持

在数据开发领域,「点查询」或者叫KV查询,在过去此类需求往往需要引入 Apache HBase等KV系统来应对点查询、或者Redis作为缓存层来分担高并发带来的系统压力。例如我们在订单属性查询的场景中,我们需要根据订单号关联订单的一些属性信息,很多OLAP在这个场景有很严重的性能问题,所以我们在之前提到各种OLAP库并不擅长像后端开发用Mysql数据库一样应付 Data Serving查询,但是在2.0版本后,如果我们的业务规模不大,我们可以不引入类似Hbase这样额外的组件,可以小范围的支持某些点查询需求,减少复杂技术栈带来的维护成本以及数据的冗余存储。

这里面原理涉及到:缓存优化、行式存储格式、点查询短路径优化、语句预处理、Row Cache等,需要大家自行了解。假如你在规模较大的生产环境用到了这样的能力,需要了解基本的原理,以及有哪些最佳生产实践。

日志分析类场景

Doris 2.0版本中引入了一些特性例如「倒排索引」「半结构数据类型」等,大家如果对ES不陌生的话,应该理解上面的这两些词语。

在此之前我们大规模使用ELK全家桶支持日志系统:FileBeat、Logstash、Kafka、Kibana,或者还需要了解ES DSL,如果我们的系统规模不大,要引入上述组件带来的使用和运维成本复杂度非常高昂,另外还需要解决ES的读写稳定性问题等等。

在Doris 2.0版本之后,我们可以基于Doris尝试在某些场景直接打造一个低成本、高易用的简版ELK系统,加之Doris对标准 SQL的支持和高度兼容 MySQL协议和语法,我们可以非常简单的进行日志分析。

冷热分离

2.0版本的一个重要功能是冷热分离。冷热分离是大数据领域的一个很重要的概念,其实在Doris之前,很多大数据领域的组件都支持冷热分离存储,例如大家熟知的Elasticsearch,利用ES的分片分配策略和给定节点路由,可以实现数据的冷热分离存储,使得热数据节点处理所有新输入的数据,并且存储速度也较快,以便确保快速地采集和检索数据。冷节点的存储密度则较大,可以在较长保留期限内保留数据,从而大大降低成本。

Doris同样也可以利用动态分区功能,对表分区进行生命周期管理,通过设置热数据转冷时间以及存储介质标识,后台任务将热数据从SSD自动冷却到 HDD,以帮助用户较大程度地降低存储成本。

这个在业务和数据规模较大的场景几乎是必做的操作,毕竟,谁会跟省钱过不去呢?

湖仓一体领域

Doris在很早的版本就已经支持了多种异构数据源的映射,例如Hive、ES等,在2.0版本这个范围扩展了湖表领域,增加了对Hudi、Iceberg、Paimon的支持。这将是一个巨大的改变,我们现在可以很轻松的将湖表映射到Doris来加速查询,在数据联邦查询分析场景得到了长足的进步。

c80cea68b7a6fd2fde4a2bcf22315621.png

未来,我们可以在特定业务场景中轻松实现湖仓一体化架构。届时,基于Flink、Doris、Hudi等的湖仓一体架构会频繁出现在大家眼前。当然这里面需要进行大量的最佳化实践,不过这一天很快会到来。

其他

此外,Doris还对某些功能进行了增强,例如多个数据模型下的列更新能力,高频写入Compaction内存优化等,在这些优化之前,我们都需要对任务进行很多优化,而现在不需要了,需要大家在使用过程中自行体会一下。

总之,2.0版本之后,Doris在开源OLAP领域的领先优势会逐步扩大,可以媲美很多云平台上的成熟的产品。

大家可以看到,数据开发领域过去的这几年发展有多快,是所有IT开发方向里几乎仅有的技术栈一直在快速迭代升级的方向,大家的技术栈也要跟上时代啊!不要等到被时代抛弃了才醒悟过来!

如果这个文章对你有帮助,不要忘记 「在看」 「点赞」 「收藏」 三连啊喂!

f303f4dd2a2eaa47177dd267e586af3b.png

6b4b9c4f1a6ba2e3e211bdf8fbeed720.jpeg

2022年全网首发|大数据专家级技能模型与学习指南(胜天半子篇)

互联网最坏的时代可能真的来了

我在B站读大学,大数据专业

我们在学习Flink的时候,到底在学习什么?

193篇文章暴揍Flink,这个合集你需要关注一下

Flink生产环境TOP难题与优化,阿里巴巴藏经阁YYDS

Flink CDC我吃定了耶稣也留不住他!| Flink CDC线上问题小盘点

我们在学习Spark的时候,到底在学习什么?

在所有Spark模块中,我愿称SparkSQL为最强!

硬刚Hive | 4万字基础调优面试小总结

数据治理方法论和实践小百科全书

标签体系下的用户画像建设小指南

4万字长文 | ClickHouse基础&实践&调优全视角解析

【面试&个人成长】2021年过半,社招和校招的经验之谈

大数据方向另一个十年开启 |《硬刚系列》第一版完结

我写过的关于成长/面试/职场进阶的文章

当我们在学习Hive的时候在学习什么?「硬刚Hive续集」

相关文章:

Doris2.0时代的一些机遇和挑战!

300万字!全网最全大数据学习面试社区等你来! 上个周五的时候,Doris官宣了2.0版本,除了在性能上的大幅提升,还有一些特性需要大家特别关注。 根据官网的描述,Doris在下面领域都有了长足进步: 日志…...

Leetcode-每日一题【剑指 Offer 32 - I. 从上到下打印二叉树】

题目 从上到下打印出二叉树的每个节点&#xff0c;同一层的节点按照从左到右的顺序打印。 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回&#xff1a; [3,9,20,15,7] 提示&#xff1a; 节点总数 < 1000 解题思路 1.题目要求我们从…...

网神 SecGate 3600 防火墙任意文件上传漏洞复现

0x01 产品简介 网神SecGate3600下一代极速防火墙&#xff08;NSG系列&#xff09;是基于完全自主研发、经受市场检验的成熟稳定网神第三代SecOS操作系统 并且在专业防火墙、VPN、IPS的多年产品经验积累基础上精心研发的高性能下一代防火墙 专门为运营商、政府、军队、教育、大型…...

把独显塞回CPU,新核显能够媲美RTX 30、40系显卡了

上个月&#xff0c;AMD 发布了 Zen4 架构 R5 7600X 的无核显版 - 7500F 。 各种数据评测和玩家实际体验大家也已经看过了&#xff0c;说是变相降价一点不错。 原因也很简单&#xff0c;感谢 Intel 。 Jon Peddie Research 刚出炉报告显示&#xff0c;2023 第二季度 AMD 客户端…...

Python爬虫——scrapy_工作原理

引擎向spiders要url引擎把将要爬取的url给调度器调度器会将url生成的请求对象放入到指定的队列中从队列中出队一个请求引擎将请求交给下载器进行处理下载器发送请求获取互联网数据下载器将数据返回给引擎引擎将数据再次给到spidersspiders通过xpath解析该数据&#xff0c;得到数…...

gRPC vs REST:创建API的方法比较

本文对gRPC和REST的特征和区别进行了介绍&#xff0c;这可能是当今创建API最常用的两种方法。 文章目录 一、gRPC的介绍 二、什么是REST&#xff1f; 三、什么是gRPC? 四、gRPC和REST的比较 &#xff08;1&#xff09;底层HTTP协议 &#xff08;2&#xff09;支持的数据…...

缓存平均的两种算法

引言 线边库存物料的合理性问题是物流仿真中研究的重要问题之一,如果线边库存量过多,则会对生产现场的布局产生负面影响,增加成本,降低效益。 写在前面 仿真分析后对线边Buffer的使用情况进行合理的评估就是一个非常重要的事情。比较关心的参数包括:缓存位最大值…...

SpringBoot的配置文件(properties与yml)

文章目录 1. 配置文件的作用2. 配置文件格式3. 配置文件的使用方法3.1. properties配置文件3.1.1. 基本语法和使用3.1.2. properties优缺点分析 3.2. yml配置文件3.2.1. 基本语法与使用3.2.2. yml中单双引号问题3.2.3. yml配置不同类型的数据类型及null3.2.4. 配置对象3.2.5. 配…...

如何应用项目管理软件进行敏捷开发管理

敏捷开发&#xff08;Agile Development&#xff09;是一种软件开发方法论&#xff0c;强调在不断变化的需求和环境下&#xff0c;通过迭代、协作和自适应的方式来开发软件。敏捷方法的目标是提供更快、更灵活、更高质量的软件交付&#xff0c;以满足客户需求并实现项目成功。 …...

ARM DIY 硬件调试

前言 之前打样的几块 ARM 板&#xff0c;一直放着没去焊接。今天再次看到&#xff0c;决定把它焊起来。 加热台焊接 为了提高焊接效率&#xff0c;先使用加热台焊接。不过板子为双面贴片&#xff0c;使用加热台只能焊接一面&#xff0c;那就优先焊主芯片那面&#xff0c;并…...

DataFrame.rename()函数--Pandas

1. 函数作用 修改DataFrame的行名、列名 2. 函数语法 DataFrame.rename(mapperNone, *, indexNone, columnsNone, axisNone, copyNone, inplaceFalse, levelNone, errorsignore)3. 函数参数 参数含义mapper与axis结合使用&#xff0c;表示运用到axis上的值&#xff1a;类字…...

09- DMA(DirectMemoryAccess直接存储器访问)

DMA 09 、DMA(DirectMemoryAccess直接存储器访问)DMA配置流程 09 、DMA(DirectMemoryAccess直接存储器访问) DMA配置流程 dma.c文件 main.c文件 详见《stm32中文参考手册》表57。...

责任链模式

责任链模式 责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;是一种行为型设计模式&#xff0c;它用于将请求的发送者和接收者解耦&#xff0c;使多个对象都有机会处理请求。这种模式建立在一个处理对象的链上&#xff0c;每个处理对象都可以选择处理请求或…...

【BI看板】Docker-compose安装Superset,安装最新版本2.1.0

软件及环境准备 docker&#xff0c; docker-compose docker-compose安装 字节码安装 #wget https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64 #mv docker-compose-linux-x86_64 docker-compose #chmod x /usr/local/bin/docker-com…...

VS2019生成的DLL,给QT(MinGW版本)使用的小结

VS2019端&#xff1a; a 基于生成一个DLL的工程&#xff08;要注意生成是x86&#xff0c;还是x64的&#xff0c;需要和后面的QT的App工程对应&#xff09;&#xff0c;这里不多解释了&#xff0c;网上多的是&#xff1b; b 在cpp实现文件里&#xff0c;假如要导出一个这样的…...

c++--SLT六大组件之间的关系

1.SLT六大组件&#xff1a; 容器&#xff0c;迭代器&#xff0c;算法&#xff0c;仿函数&#xff0c;适配器&#xff0c;空间配置器 2.六大组件之间的关系 容器&#xff1a;容器是STL最基础的组件&#xff0c;没有容器&#xff0c;就没有数据&#xff0c;容器的作用就是用来存…...

解析个人信息保护影响评估

一、个人信息保护影响评估的概念及范围&#xff08;What&#xff09; 什么是“个人信息保护影响评估”&#xff1f;如何理解&#xff1f;“个人信息保护影响评估”的概念未在我国高位阶的法律规定中明确&#xff0c;其历经从观念到实践的演变&#xff0c;逐渐形成业界普遍认可…...

2.阿里云对象存储OSS

1.对象存储概述 文件上传&#xff0c;是指将本地图片、视频、音频等文件上传到服务器上&#xff0c;可以供其他用户浏览或下载的过程。文件上传在项目中应用非常广泛&#xff0c;我们经常发抖音、发朋友圈都用到了文件上传功能。 实现文件上传服务&#xff0c;需要有存储的支持…...

(三)Unity开发Vision Pro——入门

3.入门 1.入门 本节涵盖了几个重要主题&#xff0c;可帮助您加快visionOS 平台开发速度。在这里&#xff0c;您将找到构建第一个 Unity PolySpatial XR 应用程序的分步指南的链接&#xff0c;以及 PolySpatial XR 开发时的一些开发最佳实践。 2.开发与迭代 有关先决条件、开…...

召集令:CloudQuery 社区有奖征文活动来啦!

CloudQuery 社区第一期征文活动来袭&#xff01;&#xff01;&#xff01;只要你对 CloudQuery 产品感兴趣&#xff0c;或者是希望了解 CQ &#xff0c;都可以来参加&#xff0c;在本期活动中&#xff0c;我们也为大家准备了多种主题供你选择&#xff0c;CQ 使用案例、版本对比…...

ES6从入门到精通:前言

ES6简介 ES6&#xff08;ECMAScript 2015&#xff09;是JavaScript语言的重大更新&#xff0c;引入了许多新特性&#xff0c;包括语法糖、新数据类型、模块化支持等&#xff0c;显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言&#xff1a;为什么 Eureka 依然是存量系统的核心&#xff1f; 尽管 Nacos 等新注册中心崛起&#xff0c;但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制&#xff0c;是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错

出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上&#xff0c;所以报错&#xff0c;到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本&#xff0c;cu、torch、cp 的版本一定要对…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下&#xff0c;知识图谱凭借其高效的信息组织能力&#xff0c;正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合&#xff0c;探讨知识图谱开发的实现细节&#xff0c;帮助读者掌握该技术栈在实际项目中的落地方法。 …...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》

这段 Python 代码是一个完整的 知识库数据库操作模块&#xff0c;用于对本地知识库系统中的知识库进行增删改查&#xff08;CRUD&#xff09;操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 &#x1f4d8; 一、整体功能概述 该模块…...

代码规范和架构【立芯理论一】(2025.06.08)

1、代码规范的目标 代码简洁精炼、美观&#xff0c;可持续性好高效率高复用&#xff0c;可移植性好高内聚&#xff0c;低耦合没有冗余规范性&#xff0c;代码有规可循&#xff0c;可以看出自己当时的思考过程特殊排版&#xff0c;特殊语法&#xff0c;特殊指令&#xff0c;必须…...