日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

Doris到底有多牛,為什么大廠都在使用它?

來源: 責編: 時間:2024-01-19 17:25:14 299觀看
導讀今天給各位分享一個非常牛的實時分析型數據庫Apache Doris,幾乎國內的一二線大廠都在使用它做數據分析,如下圖,這只是一小部分圖片同時我司也在使用它,它目前支撐了我們億級業務數據的多維實時查詢分析,而且性能很不錯Dori

今天給各位分享一個非常牛的實時分析型數據庫Apache Doris,幾乎國內的一二線大廠都在使用它做數據分析,如下圖,這只是一小部分BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

同時我司也在使用它,它目前支撐了我們億級業務數據的多維實時查詢分析,而且性能很不錯BcK28資訊網——每日最新資訊28at.com

Doris 介紹

官方地址:https://doris.apache.org/BcK28資訊網——每日最新資訊28at.com

Apache Doris源于百度2008年啟動的產品Palo在2018年捐獻給Apache基金會,是一個基于 MPP 架構的高性能、實時的分析型數據庫,它非常簡單易用,而且性能還不錯,僅需亞秒級響應時間即可獲得查詢結果,不僅支持高并發的查詢場景,也可以支持高吞吐的復雜分析場景,比如你可以基于它做用戶行為分析、日志檢索平臺、用戶畫像分析、訂單分析等應用。BcK28資訊網——每日最新資訊28at.com

Doris的架構非常簡潔,易于運維,并且可以支持10PB以上的超大數據集BcK28資訊網——每日最新資訊28at.com

特性

圖片圖片BcK28資訊網——每日最新資訊28at.com

這里特性很多,但是如果沒接觸過大數據的同學,可能不是特別了解,但是注意這個特性,支持SQL 語言,兼容MySQL,比如:通過Mybatis 寫好 sql,就可以調用查詢,而且它能支持億級數據檢索響應,以前想分庫分表,現在有了它可以考慮還有必要嗎,但是這里要注意下,它是一個 OLAP 引擎與 OLTP還是有點區別,如果業務場景,新增多后期更新少,同時查詢場景多,那么可以在 mysql 中保存一段時間的熱點數據,來進行相關業務操作,而報表查詢都走DorisBcK28資訊網——每日最新資訊28at.com

這里可能有些人員不懂什么是 OLAP,下面是一個OLAP與OLTP對比圖BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

架構BcK28資訊網——每日最新資訊28at.com

Doirs只有兩個主進程模塊。一個是 Frontend(FE),另一個是Backend(BE)BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

Frontend(FE)

主要負責用戶請求的接入、查詢計劃的解析、元數據的存儲和集群管理相關工作, Doris采用Paxos協議以及Memory + Checkpoint + Journal的機制來確保元數據的高性能及高可靠。BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

Leader、follower和 observer它們三個構成一個可靠的服務,保證單節點宕機的情況下,元數據能夠實時地在線恢復,而不影響整個服務,與zookeeper角色一樣。BcK28資訊網——每日最新資訊28at.com

Backend(BE)

BE主要負責數據存儲、查詢計劃的執行。BcK28資訊網——每日最新資訊28at.com

  • BE管理tablet副本, tablet是table經過分區分桶形成的子表, 采用列式存儲。
  • BE受FE指導, 創建或刪除子表。
  • BE接收FE分發的物理執行計劃與其他BE共同協作完成執行。
  • BE讀本地的列存儲引擎, 獲取數據, 通過索引和謂詞下沉快速過濾數據。
  • BE后臺執行compact任務, 減少查詢時的讀放大。

以上FE和 BE支持動態彈性擴容,而且在擴容過程中對應用無影響,同時Doris 不依賴zk、hdfs等,所以架構很簡單,這種架構設計極大的簡化了運維成本,其實一個好的產品就應該這樣,把復雜留給自己,把簡單留給用戶BcK28資訊網——每日最新資訊28at.com

OLAP對比

在我們解決大數據查詢分析時,也調研了比較知名的一些產品,下面是一個對比BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

TIDB

TIDB 是一個非常優秀的國產分布式數據庫,他的主要優勢OLTP處理上,但是也支持OLAP,但是在我們調研過程中,抱著使用一個TIDB 完全替代掉Mysql 想法,我們進行了測試,我們使用的版本是v5.3.3,但是在測試過程中效果不理想,因為 TIDB 解析引擎會對SQL進行分析,來決定走 OLTP 還是OLAP,比如我們期望走OLAP 但是走了OLTP導致性能有所降低BcK28資訊網——每日最新資訊28at.com

ClickHouse

提到 Doris 不得不提ClickHouse,CK是由俄羅斯IT公司Yandex為Yandex.Metrica網絡分析服務開發的開發的實時數倉,以性能著稱,但是經過測試,與 Doris在不同場景各有優劣,  但是它的架構復雜、運維成本高,同時對 sql 語法兼容性沒有Doris好,因此沒有選擇,不過國內也有不少公司在使用BcK28資訊網——每日最新資訊28at.com

Doris

運維成本低、兼容Mysql 語法、架構足夠簡單、社區支持性好(非?;钴S),同時經過百度內部長達10 多年的大規模使用,成熟度不容置疑,沒有理由不選它BcK28資訊網——每日最新資訊28at.com

性能測試報告

Doris 版本:0.15.0,目前最新版本是:2.03BcK28資訊網——每日最新資訊28at.com

  • 1 FE + 3 BE 獨立部署
  • CPU:8core 16G Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
  • 內存:16GB
  • 硬盤:1塊機械硬盤
  • 網卡:萬兆網卡

測試1

圖片圖片BcK28資訊網——每日最新資訊28at.com

6億數據進行多表查詢,響應1.98sBcK28資訊網——每日最新資訊28at.com

SELECT SUM(lo_revenue), d_year, p_brand FROM lineorder, date, part, supplier WHERE lo_orderdate = d_datekey AND lo_partkey = p_partkey AND lo_suppkey = s_suppkey AND p_category = 'MFGR#12' AND s_region = 'AMERICA' GROUP BY d_year, p_brand ORDER BY d_year, p_brand;

圖片圖片BcK28資訊網——每日最新資訊28at.com

測試2

ods_test_mysql_test_record_s數據量:148399619,67 個字段BcK28資訊網——每日最新資訊28at.com

ods_test_mysql_test_barrier_s數據量:1385,12個字段BcK28資訊網——每日最新資訊28at.com

執行以下 sql,耗時:0.277sBcK28資訊網——每日最新資訊28at.com

SELECT    i.a1 AS p_code,    IFNULL(IFNULL(i.a56, b.a2), '0') AS gateway_no,    1 AS inout_type,    DATE_FORMAT(i.a2, '%Y-%m-%d') AS report_date,    DATE_FORMAT(i.a2, '%Y') AS report_year,    DATE_FORMAT(i.a2, '%c') AS report_month,    1 AS total_num,    (CASE WHEN i.a6 = 1 THEN 1 ELSE 0 END) AS big_car_num,    (CASE WHEN i.a6 != 1 THEN 1 ELSE 0 END) AS small_car_num,    (CASE WHEN i.a44 REGEXP '[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}(([0-9]{5}[DABCEFGHJK])|([DABCEFGHJK][A-HJ-NP-Z0-9][0-9]{4}))$' THEN 1 ELSE 0 END) AS new_power_car_num,    (CASE WHEN i.a61 = 2 OR i.a61 = 3 THEN 1 ELSE 0 END) AS reserve_num,    (CASE WHEN i.a61 = 1 THEN 1 ELSE 0 END) AS white_list_num,    (CASE WHEN i.a6 = 1 AND (i.a61 = 2 OR i.a61 = 3) THEN 1 ELSE 0 END) AS big_car_reserve_num,    (CASE WHEN i.a6 = 1 AND i.a61 = 1 THEN 1 ELSE 0 END) AS big_car_white_list_num,    (CASE WHEN i.a6 != 1 AND (i.a61 = 2 OR i.a61 = 3) THEN 1 ELSE 0 END) AS small_car_reserve_num,    (CASE WHEN i.a6 != 1 AND i.a61 = 1 THEN 1 ELSE 0 END) AS small_car_white_list_num,    (CASE WHEN (i.a61 = 2 OR i.a61 = 3) AND i.a44 REGEXP '[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}(([0-9]{5}[DABCEFGHJK])|([DABCEFGHJK][A-HJ-NP-Z0-9][0-9]{4}))$' THEN 1 ELSE 0 END) AS new_power_reserve_num,    (CASE WHEN i.a61 = 1 AND i.a44 REGEXP '[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}(([0-9]{5}[DABCEFGHJK])|([DABCEFGHJK][A-HJ-NP-Z0-9][0-9]{4}))$' THEN 1 ELSE 0 END) AS new_power_white_list_num,    CURRENT_TIMESTAMP() AS update_timeFROM    ods_test_mysql_test_record_s i    LEFT JOIN ods_test_mysql_test_barrier_s b ON i.a22 = b.a1WHERE    i.a67 = 0    AND i.a1 = '100280023213'    AND i.a2 < '2021-11-20 00:00:00'    AND (        i.a2 BETWEEN DATE_FORMAT(i.a2, '%Y-%m-%d 00:00:00') AND FROM_UNIXTIME(UNIX_TIMESTAMP(DATE_FORMAT(i.a2, '%Y-%m-%d 00:00:00')) + 90000, '%Y-%m-%d %H:%i:%s')    )LIMIT 1000;

圖片圖片BcK28資訊網——每日最新資訊28at.com

測試3

只查詢小于2022-12-30 00:00:00數據,響應時間:0.241sBcK28資訊網——每日最新資訊28at.com

SELECT    i.a1 AS p_code,    IFNULL(IFNULL(i.a56, b.a2), '0') AS gateway_no,    1 AS inout_type,    DATE_FORMAT(i.a2, '%Y-%m-%d') AS report_date,    DATE_FORMAT(i.a2, '%Y') AS report_year,    DATE_FORMAT(i.a2, '%c') AS report_month,    1 AS total_num,    (CASE WHEN i.a6 = 1 THEN 1 ELSE 0 END) AS big_car_num,    (CASE WHEN i.a6 != 1 THEN 1 ELSE 0 END) AS small_car_num,    (CASE WHEN i.a44 REGEXP '[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}(([0-9]{5}[DABCEFGHJK])|([DABCEFGHJK][A-HJ-NP-Z0-9][0-9]{4}))$' THEN 1 ELSE 0 END) AS new_power_car_num,    (CASE WHEN i.a61 = 2 OR i.a61 = 3 THEN 1 ELSE 0 END) AS reserve_num,    (CASE WHEN i.a61 = 1 THEN 1 ELSE 0 END) AS white_list_num,    (CASE WHEN i.a6 = 1 AND (i.a61 = 2 OR i.a61 = 3) THEN 1 ELSE 0 END) AS big_car_reserve_num,    (CASE WHEN i.a6 = 1 AND i.a61 = 1 THEN 1 ELSE 0 END) AS big_car_white_list_num,    (CASE WHEN i.a6 != 1 AND (i.a61 = 2 OR i.a61 = 3) THEN 1 ELSE 0 END) AS small_car_reserve_num,    (CASE WHEN i.a6 != 1 AND i.a61 = 1 THEN 1 ELSE 0 END) AS small_car_white_list_num,    (CASE WHEN (i.a61 = 2 OR i.a61 = 3) AND i.a44 REGEXP '[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}(([0-9]{5}[DABCEFGHJK])|([DABCEFGHJK][A-HJ-NP-Z0-9][0-9]{4}))$' THEN 1 ELSE 0 END) AS new_power_reserve_num,    (CASE WHEN i.a61 = 1 AND i.a44 REGEXP '[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領A-Z]{1}[A-Z]{1}(([0-9]{5}[DABCEFGHJK])|([DABCEFGHJK][A-HJ-NP-Z0-9][0-9]{4}))$' THEN 1 ELSE 0 END) AS new_power_white_list_num,    CURRENT_TIMESTAMP() AS update_timeFROM    ods_test_mysql_test_record_s i    LEFT JOIN ods_test_mysql_test_barrier_s b ON i.a22 = b.a1WHERE i.a2 < '2022-12-30 00:00:00' LIMIT 10000;

圖片圖片BcK28資訊網——每日最新資訊28at.com

測試 4

最新官方性能測試報告:https://doris.apache.org/zh-CN/docs/benchmark/ssb/BcK28資訊網——每日最新資訊28at.com

高可用測試

如下圖FE3臺組建一個高可用集群,分別為:BcK28資訊網——每日最新資訊28at.com

  • 172.17.0.3   FOLLOWER
  • 172.17.0.4  FOLLOWER
  • 172.17.0.5  MASTER

圖片圖片BcK28資訊網——每日最新資訊28at.com

下面對會對常見一些異常場景進行測試驗證,以下部分測試案例BcK28資訊網——每日最新資訊28at.com

MASTER下線測試

測試結果

成功,所有操作符合預期BcK28資訊網——每日最新資訊28at.com

測試過程

登錄172.17.0.5 服務器殺掉FE節點BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

BcK28資訊網——每日最新資訊28at.com

查看FE節點狀態是否正常, 登錄172.17.0.3服務器查看狀態,執行以下命令BcK28資訊網——每日最新資訊28at.com

SHOW PROC '/frontends';

可以看到172.17.0.4成為了master,而172.17.0.5顯示已經不在線了 Alive=falseBcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

執行插入數據操作,可以看到執行成功。BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

啟動172.17.0.5,查看是否能加入集群BcK28資訊網——每日最新資訊28at.com

sh /root/fe/bin/start_fe.sh 172.17.0.3:9010 --daemon

通過日志可以看到啟動成功,并成為了FOLLOWER節點BcK28資訊網——每日最新資訊28at.com

圖片圖片BcK28資訊網——每日最新資訊28at.com

修復缺失或損壞副本

測試結果

成功,所有操作符合預期BcK28資訊網——每日最新資訊28at.com

測試過程

1.執行如下命令看到分區10099的副本損壞,需要對它進行恢復創建空白副本BcK28資訊網——每日最新資訊28at.com

ADMIN SHOW REPLICA STATUS FROM table2 PARTITION (p201706, p201707,p201708);

圖片圖片BcK28資訊網——每日最新資訊28at.com

2.登錄master feBcK28資訊網——每日最新資訊28at.com

ADMIN SET FRONTEND CONFIG ("recover_with_empty_tablet" = "true");

3.查看數據副本狀態BcK28資訊網——每日最新資訊28at.com

ADMIN SHOW REPLICA STATUS FROM table2 PARTITION (p201706, p201707,p201708);

圖片圖片BcK28資訊網——每日最新資訊28at.com

4.恢復設置BcK28資訊網——每日最新資訊28at.com

ADMIN SET FRONTEND CONFIG ("recover_with_empty_tablet" = "false");

系統Down機重啟副本測試

測試結果

成功,所有操作符合預期BcK28資訊網——每日最新資訊28at.com

測試過程

1.停止0.5服務BcK28資訊網——每日最新資訊28at.com

2.查詢副本狀態BcK28資訊網——每日最新資訊28at.com

ADMIN SHOW REPLICA STATUS FROM table4;

圖片BcK28資訊網——每日最新資訊28at.com

3.重啟服務,副本狀態恢復正常BcK28資訊網——每日最新資訊28at.com

圖片 圖片 BcK28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-65365-0.htmlDoris到底有多牛,為什么大廠都在使用它?

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 自動化測試再升級,大模型與軟件測試相結合

下一篇: 單體架構、微服務和無服務器架構

標簽:
  • 熱門焦點
  • 鴻蒙OS 4.0公測機型公布:甚至連nova6都支持

    華為全新的HarmonyOS 4.0操作系統將于今天下午正式登場,官方在發布會之前也已經正式給出了可升級的機型產品,這意味著這些機型會率先支持升級享用。這次的HarmonyOS 4.0支持
  • 6月安卓手機好評榜:魅族20 Pro蟬聯冠軍

    性能榜和性價比榜之后,我們來看最后的安卓手機好評榜,數據來源安兔兔評測,收集時間2023年6月1日至6月30日,僅限國內市場。第一名:魅族20 Pro好評率:95%5月份的時候魅族20 Pro就是
  • 容量越大越不壞?24萬塊硬盤故障率報告公布 這些產品零故障

    8月5日消息,云存儲服務商Backblaze發布了最新的硬盤故障率報告,年故障率有所上升。Backblaze發布的硬盤季度統計數據,其中包括故障率等重要方面。這些結
  • K8S | Service服務發現

    一、背景在微服務架構中,這里以開發環境「Dev」為基礎來描述,在K8S集群中通常會開放:路由網關、注冊中心、配置中心等相關服務,可以被集群外部訪問;圖片對于測試「Tes」環境或者
  • 十個簡單但很有用的Python裝飾器

    裝飾器(Decorators)是Python中一種強大而靈活的功能,用于修改或增強函數或類的行為。裝飾器本質上是一個函數,它接受另一個函數或類作為參數,并返回一個新的函數或類。它們通常用
  • 新電商三兄弟,“抖快紅”成團!

    來源:價值研究所作 者:Hernanderz 隨著內容電商的概念興起,抖音、快手、小紅書組成的&ldquo;新電商三兄弟&rdquo;成為業內一股不可忽視的勢力,給阿里、京東、拼多多帶去了巨大壓
  • 三星推出Galaxy Tab S9系列平板電腦以及Galaxy Watch6系列智能手表

    2023年7月26日,三星電子正式發布了Galaxy Z Flip5與Galaxy Z Fold5。除此之外,Galaxy Tab S9系列平板電腦以及三星Galaxy Watch6系列智能手表也同期
  • 2299元起!iQOO Pad明晚首銷:性能最強天璣平板

    5月23日,iQOO如期舉行了新品發布會,除了首發安卓最強旗艦處理器的iQOO Neo8系列新機外,還在發布會上推出了旗下首款平板電腦——iQOO Pad,其最大的賣點
  • OPPO K11搭載長壽版100W超級閃充:26分鐘充滿100%

    據此前官方宣布,OPPO將于7月25日也就是今天下午14:30舉辦新品發布會,屆時全新的OPPO K11將正式與大家見面,將主打旗艦影像,和同檔位競品相比,其最大的賣
Top 主站蜘蛛池模板: 南康市| 云浮市| 娱乐| 青海省| 桂阳县| 桐庐县| 东乡县| 龙胜| 西贡区| 镇赉县| 巩留县| 扶余县| 梁山县| 祥云县| 台东市| 开平市| 宽城| 平塘县| 苗栗县| 舟曲县| 凌海市| 满洲里市| 长泰县| 闽侯县| 长寿区| 罗平县| 南部县| 祁阳县| 大同县| 正宁县| 贵溪市| 天气| 咸阳市| 蓬安县| 盐山县| 黔西| 高邮市| 咸宁市| 凉城县| 道孚县| 武义县|