成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Apache Doris-為數(shù)據(jù)分析而生

IT那活兒 / 853人閱讀
Apache Doris-為數(shù)據(jù)分析而生
點擊上方“IT那活兒”公眾號,關(guān)注后了解更多內(nèi)容,不管IT什么活兒,干就完了?。?!

Doris概述

1. Doris簡介

Apache Doris是一個現(xiàn)代化的基于MPP(大規(guī)模并行處理)技術(shù)的分析型數(shù)據(jù)庫產(chǎn)品。
簡單來說,MPP是將任務(wù)并行的分散到多個服務(wù)器和節(jié)點上,在每個節(jié)點上計算完成后,將各自部分的結(jié)果匯總在一起得到最終的結(jié)果(與Hadoop相似)。僅需亞秒級響應(yīng)時間即可獲得查詢結(jié)果,有效地支持實時數(shù)據(jù)分析。
Apache Doris可以滿足多種數(shù)據(jù)分析需求,例如固定歷史報表,實時數(shù)據(jù)分析,交互式數(shù)據(jù)分析和探索式數(shù)據(jù)分析等。令您的數(shù)據(jù)分析工作更加簡單高效!

2. Doris核心特點

  • 基于MPP(大規(guī)模并行處理)架構(gòu)的分析型數(shù)據(jù)庫
  • 性能卓越,PB級別數(shù)據(jù)毫秒/秒級響應(yīng)
  • 支持標(biāo)準(zhǔn)SQL語言,兼容MySQL協(xié)議
  • 向量化執(zhí)行器
  • 高效的聚合表技術(shù)
  • 新型預(yù)聚合技術(shù)Rollup
  • 高性能、高可用、高可靠
  • 極簡運維,彈性伸縮

3. Doris發(fā)展歷程

4. 對比其他的數(shù)據(jù)分析框架

  • OLTP 與 OLAP
    OLTP是 Online Transaction Processing 的簡稱;OLAP 是 OnLine Analytical Processing 的簡稱。
    OLTP的查詢一般只會訪問少量的記錄,且大多時候都會利用索引。比如最常見的基于主鍵的 CRUD 操作。

    OLAP 的查詢一般需要 Scan 大量數(shù)據(jù),大多時候只訪問部分列,聚合的需求(Sum,Count,Max,Min 等)會多于明細的需求(查詢原始的明細數(shù)據(jù))。

  • HTAP
    HTAP 是 Hybrid Transactional(混合事務(wù))/Analytical Processing(分析處理)的簡稱。
    基于創(chuàng)新的計算存儲框架,HTAP 數(shù)據(jù)庫能夠在一份數(shù)據(jù)上同時支撐業(yè)務(wù)系統(tǒng)運行和 OLAP 場景,避免在傳統(tǒng)架構(gòu)中,在線與離線數(shù)據(jù)庫之間大量的數(shù)據(jù)交互。此外,HTAP 基于分布式架構(gòu),支持彈性擴容,可按需擴展吞吐或存儲,輕松應(yīng)對高并發(fā)、海量數(shù)據(jù)場景。
    目前,實現(xiàn) HTAP 的數(shù)據(jù)庫不多,主要有 PingCAP 的 TiDB、阿里云的 HybridDB for MySQL、百度的 BaikalDB 等。其中,TiDB 是國內(nèi)首家開源的 HTAP 分布式數(shù)據(jù)庫。

OLAP分類:

  • MOLAP:通過預(yù)計算,提供穩(wěn)定的切片數(shù)據(jù),實現(xiàn)多次查詢一次計算,減輕了查詢時的計算壓力,保證了查詢的穩(wěn)定性,是“空間換時間”的最佳路徑。實現(xiàn)了基于Bitmap的去重算法,支持在不同維度下去重指標(biāo)的實時統(tǒng)計,效率較高。
  • ROLAP:基于實時的大規(guī)模并行計算,對集群的要求較高。MPP引擎的核心是通過將數(shù)據(jù)分散,以實現(xiàn)CPU、IO、內(nèi)存資源的分布,來提升并行計算能力。在當(dāng)前數(shù)據(jù)存儲以磁盤為主的情況下,數(shù)據(jù)Scan需要的較大的磁盤IO,以及并行導(dǎo)致的高CPU,仍然是資源的短板。
    因此,高頻的大規(guī)模匯總統(tǒng)計,并發(fā)能力將面臨較大挑戰(zhàn),這取決于集群硬件方面的并行計算能力。傳統(tǒng)去重算法需要大量計算資源,實時的大規(guī)模去重指標(biāo)對CPU、內(nèi)存都是一個巨大挑戰(zhàn)。目前Doris最新版本已經(jīng)支持Bitmap算法,配合預(yù)計算可以很好地解決去重應(yīng)用場景。

doris是一個ROLAP引擎, 可以滿足以下需求:

  • 靈活多維分析;
  • 明細+聚合;
  • 主鍵更新。
對比其他的OLAP系統(tǒng):

Doris 原理

1. 名稱解釋

2. 整體架構(gòu)

Doris主要整合了Google Mesa(數(shù)據(jù)模型),Apache Impala(MPP Query Engine)和Apache ORCFile (存儲格式,編碼和壓縮) 的技術(shù)。
Doris的系統(tǒng)架構(gòu)如下,Doris主要分為FE和BE兩個組件:

Doris的架構(gòu)很簡潔,使用MySQL協(xié)議,用戶可以使用任何MySQL ODBC/JDBC和MySQL客戶端直接訪問Doris,只設(shè)FE(Frontend)、BE(Backend)兩種角色、兩個進程,不依賴于外部組件,方便部署和運維。

  • FE:Frontend,即 Doris 的前端節(jié)點。主要負責(zé)接收和返回客戶端請求、元數(shù)據(jù)以及集群管理、查詢計劃生成等工作
  • BE:Backend,即 Doris 的后端節(jié)點。主要負責(zé)數(shù)據(jù)存儲與管理、查詢計劃執(zhí)行等工作。
FE,BE都可線性擴展。
FE主要有兩個角色,一個是follower,另一個是observer。多個follower組成選舉組,會選出一個master,master是follower的一個特例,Master跟follower,主要是用來達到元數(shù)據(jù)的高可用,保證單節(jié)點宕機的情況下,元數(shù)據(jù)能夠?qū)崟r地在線恢復(fù),而不影響整個服務(wù)。
Observer節(jié)點僅從 leader 節(jié)點進行元數(shù)據(jù)同步,不參與選舉。可以橫向擴展以提供元數(shù)據(jù)的讀服務(wù)的擴展性。

數(shù)據(jù)的可靠性由BE保證,BE會對整個數(shù)據(jù)存儲多副本或者是三副本。副本數(shù)可根據(jù)需求動態(tài)調(diào)整。 

Doris編譯

Apache Doris提供直接可以部署的版本壓縮包:https://cloud.baidu.com/doc/PALO/s/Ikivhcwb5;也可以自行編譯壓縮包后使用(推薦)。

使用 Docker 開發(fā)鏡像編譯推薦

step1 拉取Doris官方提供的Docker鏡像,目前可用版本有:build-env、build-env-1.1、build-env-1.2

docker pull apachedoris/doris-dev:build-env-1.2

step2 查看 Docker 鏡像

docker images

step3 運行鏡像

將容器中的 maven 下載的包保存到宿主機本地指定的文件中,避免重復(fù)下載,同時會將編譯的 Doris 文件保存到宿主機本地指定的文件,方便部署。

docker run -it 
-v /u01/.m2:/root/.m2
-v /u01/incubator-doris-DORIS-0.13-release/:/root/incubator-doris-DORIS-0.13-release/
apachedoris/doris-dev:build-env-1.2

開啟之后, 就在容器內(nèi)了。

step4 下載Doris的安裝包
cd /opt
wget https://dist.apache.org/repos/dist/dev/incubator/doris/0.13/0.13.0-rc3/ apache-doris-0.13.0.0-incubating-src.tar.gz
step5 解壓安裝
tar -zxvf  apache-doris-0.13.0.0-incubating-src.tar.gz
cd  apache-doris-0.13.0.0-incubating-src
step6 開始編譯(此過程需要等待很久,根據(jù)網(wǎng)速來定
sh build.sh

編譯完成。

Doris安裝部署

1. 軟硬件需求

  • Linux 操作系統(tǒng)版本需求:
Linux系統(tǒng)
版本
Centos
7.1及以上
Ubuntu
16.04及以上
  • 軟件需求:
軟件
版本
Java
1.8及以上
GCC
7.3及以上
  • 開發(fā)測試環(huán)境:
模塊
CPU
內(nèi)存
磁盤
網(wǎng)絡(luò)
實例數(shù)量
Frontend
8核+
8GB+
SSD 或 SATA,10GB+ *
千兆網(wǎng)卡
1
Backend
8核+
16GB+
SSD 或 SATA,50GB+ *
千兆網(wǎng)卡
1-3 *
  • 生產(chǎn)環(huán)境:
模塊
CPU
內(nèi)存
磁盤
網(wǎng)絡(luò)
實例數(shù)量
Frontend
16核+
64GB+
SSD 或 RAID,100GB+ *
萬兆網(wǎng)卡
1-5 *
Backend
16核+
64GB+
SSD 或 SATA,100GB+ *
萬兆網(wǎng)卡
10-100 *


注意點一:
  • FE 的磁盤空間主要用于存儲元數(shù)據(jù),包括日志和 image。通常從幾百 MB 到幾個 GB 不等。
  • BE 的磁盤空間主要用于存放用戶數(shù)據(jù),總磁盤空間按用戶總數(shù)據(jù)量 * 3(3副本)計算,然后再預(yù)留額外 40% 的空間用作后臺 compaction 以及一些中間數(shù)據(jù)的存放。
  • 一臺機器上可以部署多個 BE 實例,但是只能部署一個 FE。如果需要 3 副本數(shù)據(jù),那么至少需要 3 臺機器各部署一個 BE 實例(而不是1臺機器部署3個BE實例)。多個FE所在服務(wù)器的時鐘必須保持一致(允許最多5秒的時鐘偏差)
  • 測試環(huán)境也可以僅適用一個 BE 進行測試。實際生產(chǎn)環(huán)境,BE 實例數(shù)量直接決定了整體查詢延遲。
  • 所有部署節(jié)點關(guān)閉 Swap。

注意點二:FE 節(jié)點的數(shù)量

  • FE 角色分為 Follower 和 Observer,(Leader 為 Follower 組中選舉出來的一種角色,以下統(tǒng)稱 Follower,具體含義見 元數(shù)據(jù)設(shè)計文檔)。
  • FE 節(jié)點數(shù)據(jù)至少為1(1 個 Follower)。當(dāng)部署 1 個 Follower 和 1 個 Observer 時,可以實現(xiàn)讀高可用。當(dāng)部署 3 個 Follower 時,可以實現(xiàn)讀寫高可用(HA)。
  • Follower 的數(shù)量必須為奇數(shù),Observer 數(shù)量隨意。
  • 根據(jù)以往經(jīng)驗,當(dāng)集群可用性要求很高是(比如提供在線業(yè)務(wù)),可以部署 3 個 Follower 和 1-3 個 Observer。如果是離線業(yè)務(wù),建議部署 1 個 Follower 和 1-3 個 Observer。
通常我們建議 10 ~ 100 臺左右的機器,來充分發(fā)揮 Doris 的性能(其中 3 臺部署 FE(HA),剩余的部署 BE)。
當(dāng)然,Doris的性能與節(jié)點數(shù)量及配置正相關(guān)。在最少4臺機器(一臺 FE,三臺 BE,其中一臺 BE 混部一個 Observer FE 提供元數(shù)據(jù)備份),以及較低配置的情況下,依然可以平穩(wěn)的運行 Doris。
如果 FE 和 BE 混部,需注意資源競爭問題,并保證元數(shù)據(jù)目錄和數(shù)據(jù)目錄分屬不同磁盤。
Broker 部署:
Broker 是用于訪問外部數(shù)據(jù)源(如 hdfs)的進程。通常,在每臺機器上部署一個 broker 實例即可。

網(wǎng)絡(luò)需求:

Doris 各個實例直接通過網(wǎng)絡(luò)進行通訊。以下表格展示了所有需要的端口。

2. Doris端口說明

3. 資源規(guī)劃

node1
node2
node3
FE(Leader)
FE(Follower)
FE(Follower)
BE
BE
BE
BROKER
BROKER
BROKER

4. 啟動FE

4.1 配置環(huán)境變量
1)拷貝 FE 部署文件到指定節(jié)點(node1)
將源碼編譯生成的 output 下的 fe 文件夾拷貝到 FE 的節(jié)點/export/server/apache-doris-0.13.0路徑下:
2)配置環(huán)境變量
vim /etc/profile
#DORIS_HOME
export DORIS_HOME=/export/server/apache-doris-0.13.0
export PATH=:$DORIS_HOME/bin:$PATH

3)重新加載環(huán)境變量

source /etc/profile
4.2 創(chuàng)建doris-mate
配置文件為 fe/conf/fe.conf。其中注意:meta_dir:元數(shù)據(jù)存放位置。默認(rèn)在 fe/doris-meta/ 下。需手動創(chuàng)建該目錄:
mkdir -p /export/server/apache-doris-0.13.0/fe/doris-meta

配置fe/conf/fe.conf配置文件:
vim conf/fe.conf
meta_dir = /export/server/apache-doris-0.13.0/fe/doris-meta

4.3 修改fe.conf中的JAVA_OPTS
fe.conf 中 JAVA_OPTS 默認(rèn) java 最大堆內(nèi)存為 4GB,建議生產(chǎn)環(huán)境調(diào)整至 8G 以上。
4.4 修改ip綁定可選
如果機器有多個ip, 比如內(nèi)網(wǎng)外網(wǎng), 虛擬機docker等, 需要進行ip綁定, 以便在配置集群時可以正確識別。
修改fe服務(wù)的配置文件(ip地址根據(jù)環(huán)境實際ip進行修改):
vim /export/server/apache-doris-0.13.0/fe/conf/fe.conf
priority_networks = ip/24

4.5 將安裝目錄分發(fā)到另外兩臺節(jié)點
4.6 啟動FE
sh /export/server/apache-doris-0.13.0/fe/bin/start_fe.sh --daemon

5. 配置BE

將源碼編譯生成的 output 下的 be 文件夾拷貝到 BE 的節(jié)點/export/server/apache-doris-0.13.0路徑下:

配置文件為 be/conf/be.conf。主要是配置 storage_root_path:數(shù)據(jù)存放目錄。默認(rèn)在be/storage下,需要手動創(chuàng)建該目錄。多個路徑之間使用 ; 分隔(最后一個目錄后不要加 ;

mkdir -p /export/server/apache-doris-0.13.0/be/storage1 /export/server/apache-doris-0.13.0/be/storage2
vim conf/be.conf
storage_root_path = /export/server/apache-doris-0.13.0/be/storage1,10;/export/server/apache-doris-0.13.0/be/storage2

5.1 使用mysql連接

step1 刪除操作系統(tǒng)自帶的mysql庫文件(node1

rpm -qa | grep mariadb

rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

step安裝mysql-client

上傳”資料軟件mysql-client”目錄下的rpm到服務(wù)器節(jié)點/export/server/mysql-client.

step3 進行安裝

rpm -ivh *

step連接node1服務(wù)器上的mysql實例(默認(rèn)端口9030,默認(rèn)沒有密碼

mysql -uroot -h node1 -P 9030

step5 登陸后,可以通過以下命令修改 root 密碼

SET PASSWORD FOR root = PASSWORD(123456);

step6 使用Navicat客戶端登錄

5.2 添加BE

step1 BE 節(jié)點需要先在 FE 中添加,才可加入集群(node1)

mysql -uroot -h node1 -P 9030 -p

輸入密碼:123456

step2 登錄后添加BE節(jié)點port為be上的heartbeat_service_port端口,默認(rèn)9050

ALTER SYSTEM ADD BACKEND "node1:9050";
ALTER SYSTEM ADD BACKEND "node2:9050";
ALTER SYSTEM ADD BACKEND "node3:9050";

step查看BE狀態(tài),alive必須為true

SHOW PROC /backends;

查看 BE 運行情況。如一切正常,isAlive 列應(yīng)為 true。

5.3 修改可打開文件數(shù)
ulimit -n 65535
5.4 修改ip綁定
修改fe服務(wù)的配置文件(ip地址根據(jù)環(huán)境實際ip進行修改):
vim /export/server/apache-doris-0.13.0/be/conf/be.conf
priority_networks = ip/24
5.5 將安裝目錄分發(fā)到另外兩臺節(jié)點
5.6 啟動BE
sh /export/server/apache-doris-0.13.0/be/bin/start_be.sh --daemon
5.7 查看FE、BE
show proc /frontends;

show proc /backends;

查看 BE 運行情況。如一切正常,isAlive 列應(yīng)為 true。

通過前端界面訪問FE:

http://ip:8030/frontend
http://ip:8030/system?path=//frontends
通過前端界面訪問BE:
http://ip:8030/backend
http://ip:8030/system?path=//backends

本文作者:熊靜波(上海新炬王翦團隊)

本文來源:“IT那活兒”公眾號

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/129229.html

相關(guān)文章

  • Doris進駐頂級開源社區(qū)Apache 彰顯百度“開源速度”

    摘要:近日,全球著名開源社區(qū)基金會宣布百度開源的項目全票通過進入孵化器。這是百度繼后第二個進入基金會的項目,充分彰顯了百度開源速度。前身是百度,自年月在上開源以來,收獲多個,目前性能和易用性方面已達到業(yè)界領(lǐng)先水平。 近日,全球著名開源社區(qū)Apache基金會宣布百度開源的Doris項目全票通過進入Apache孵化器。這是百度繼ECharts后第二個進入Apache基金會的項目,充分彰顯了百度開...

    Pines_Cheng 評論0 收藏0
  • 產(chǎn)品購買與使用 數(shù)據(jù)倉庫 UDW Doris

    摘要:如何連接云數(shù)據(jù)倉庫如何連接云數(shù)據(jù)倉庫如何連接云數(shù)據(jù)倉庫為保證安全,云數(shù)據(jù)倉庫僅提供內(nèi)網(wǎng)網(wǎng)絡(luò),您連接集群時可以配合同一地域的云主機或者網(wǎng)絡(luò)產(chǎn)品使用。 產(chǎn)品購買與使用本篇目錄為什么只提供一種云盤類型?配置升降級對集群有什么影響?配置升級有什么建議?如何連接云數(shù)據(jù)倉庫UDoris?為什么只提供一種云盤類型?Doris的存儲特性對磁盤吞吐量要求很高,為保證Doris的性能優(yōu)勢, 因此僅提供RSSD云...

    ernest.wang 評論0 收藏1167
  • 重啟集群 數(shù)據(jù)倉庫 UDW Doris

    摘要:重啟集群重啟集群重啟集群當(dāng)您需要重啟集群時,登錄賬號進入到用戶控制臺,在全部產(chǎn)品下搜索或者數(shù)據(jù)倉庫下選擇數(shù)據(jù)倉庫,進入到數(shù)據(jù)倉庫控制臺下,選擇操作重啟注意重啟集群為高危操作,集群將處于重啟中持續(xù)數(shù)秒,建議無必要時不要隨意重啟實例,這將會 重啟集群當(dāng)您需要重啟集群時,登錄UCloud賬號進入到用戶控制臺,在全部產(chǎn)品下搜索或者數(shù)據(jù)倉庫下選擇數(shù)據(jù)倉庫 UDW Doris,進入到數(shù)據(jù)倉庫UDoris...

    ernest.wang 評論0 收藏2903
  • 建表(Create Table) 數(shù)據(jù)倉庫 UDW Doris

    摘要:數(shù)據(jù)排序使用的列數(shù),取最前面幾列,不能超過總的列數(shù)。示例創(chuàng)建一個動態(tài)分區(qū)表。創(chuàng)建外部表創(chuàng)建外部表在創(chuàng)建外部表的目的是可以通過訪問外部數(shù)據(jù)庫。創(chuàng)建表時,關(guān)于和的數(shù)量和數(shù)據(jù)量的建議。 建表(Create Table)創(chuàng)建表語法:CREATE TABLE [IF NOT EXISTS] [database.]table ( column_definition_list, [inde...

    ernest.wang 評論0 收藏1190
  • 概覽 數(shù)據(jù)倉庫 UDW Doris

    摘要:概覽概覽概覽產(chǎn)品動態(tài)產(chǎn)品介紹什么是云數(shù)據(jù)倉庫產(chǎn)品優(yōu)勢應(yīng)用場景基本概念使用限制快速上手操作指南管理集群配置升降級節(jié)點擴容重啟實例重置管理員密碼刪除集群連接集群數(shù)據(jù)導(dǎo)入本地數(shù)據(jù)導(dǎo)入數(shù)據(jù)導(dǎo)入通過導(dǎo)入開發(fā)指南數(shù)據(jù)類型語法創(chuàng)建庫創(chuàng)建表創(chuàng)建視圖插入數(shù) 概覽概覽產(chǎn)品動態(tài)產(chǎn)品介紹什么是云數(shù)據(jù)倉庫UDoris產(chǎn)品優(yōu)勢應(yīng)用場景基本概念使用限制快速上手操作指南管理集群Backend配置升降級Frontend節(jié)點擴...

    ernest.wang 評論0 收藏1705

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<