產(chǎn)品介紹
Hologres 是阿里云自研一站式實(shí)時(shí)數(shù)倉(cāng),統(tǒng)一數(shù)據(jù)平臺(tái)架構(gòu),將OLAP查詢(xún)、即席分析、在線服務(wù)、向量計(jì)算多個(gè)數(shù)據(jù)應(yīng)用構(gòu)建在統(tǒng)一存儲(chǔ)之上,實(shí)現(xiàn)一份數(shù)據(jù),多種計(jì)算場(chǎng)景。
V2.1 版本簡(jiǎn)介
新增彈性計(jì)算組實(shí)例,解決實(shí)時(shí)數(shù)倉(cāng)場(chǎng)景下分析性能、資源隔離、高可用、彈性擴(kuò)縮容等核心問(wèn)題,同時(shí)新增多種用戶(hù)分析函數(shù)與實(shí)時(shí)湖倉(cāng)Paimon格式支持,COUNT DISTINCT優(yōu)化顯著提升查詢(xún)效率。
升級(jí)說(shuō)明:Hologres支持熱升級(jí),跨大版本升級(jí)建議停機(jī)升級(jí)。
彈性計(jì)算組(warehouse)構(gòu)建高可用實(shí)時(shí)數(shù)倉(cāng)
功能說(shuō)明:
Hologres彈性計(jì)算組(warehouse)采用Shared Data 架構(gòu),存儲(chǔ)共用一份,計(jì)算資源分解為不同的計(jì)算組(Warehouse),每個(gè)計(jì)算組可獨(dú)立彈性擴(kuò)展,計(jì)算組之間共享數(shù)據(jù)、元數(shù)據(jù)。
應(yīng)用場(chǎng)景:
彈性計(jì)算組有多種使用方式,用戶(hù)可以實(shí)現(xiàn)高可用、負(fù)載隔離與降本,并顯著提升故障恢復(fù)速度及使用易用性。
● 隔離與高可用:計(jì)算組之間物理隔離,不同部門(mén)業(yè)務(wù)之間實(shí)現(xiàn)讀讀隔離、寫(xiě)寫(xiě)隔離、讀寫(xiě)隔離,同時(shí)避免計(jì)算組之間的相互影響,減少業(yè)務(wù)抖動(dòng)。
● 成本與彈性:存算分離,存儲(chǔ)共享一份,計(jì)算組可動(dòng)態(tài)熱擴(kuò)縮容,顯著降低成本。
● 易用性:對(duì)應(yīng)用只暴露一個(gè)Endpoint,新增與銷(xiāo)毀、故障實(shí)例切換等操作通過(guò)簡(jiǎn)單SQL即可快速實(shí)現(xiàn),實(shí)現(xiàn)故障自動(dòng)路由。
其他核心能力
實(shí)時(shí)湖倉(cāng)新增Paimon格式
功能說(shuō)明:
Hologres實(shí)時(shí)湖倉(cāng)能力在之前版本支持ORC、Parquet、CSV、SequenceFile、HUDI、Delta、Parquet等多種格式,V2.1 版本新增Paimmon格式,Apache Paimon是流批統(tǒng)一的湖存儲(chǔ)格式,支持高吞吐的寫(xiě)入和低延遲的查詢(xún),促進(jìn)數(shù)據(jù)在數(shù)據(jù)湖上真正實(shí)時(shí)的流動(dòng),并為用戶(hù)提供基于湖存儲(chǔ)的實(shí)時(shí)離線一體化的開(kāi)發(fā)體驗(yàn)。
應(yīng)用場(chǎng)景:
Flink +Paimon+ Hologres 實(shí)時(shí)湖倉(cāng)?;贔link將數(shù)倉(cāng)以Paimon這種 Table Format 形式在湖上構(gòu)建,上層可以使用 Flink進(jìn)行流計(jì)算,使用 Hologres 對(duì)所有層次做統(tǒng)一的OLAP查詢(xún)或者是最上面的ADS層做在線分析。方案中Paimon可以實(shí)現(xiàn)高吞吐的入湖,F(xiàn)link 可以實(shí)現(xiàn)全鏈路的實(shí)時(shí)計(jì)算,Hologres 可以實(shí)現(xiàn)高性能的OLAP查詢(xún),所以整個(gè)鏈路從實(shí)時(shí)性、時(shí)效性、成本幾個(gè)方面都可以取的比較好的平衡。
向量計(jì)算新增計(jì)算巢方案,5分鐘拉起企業(yè)級(jí)知識(shí)庫(kù)
功能說(shuō)明:
基于計(jì)算巢能力,5分鐘一鍵拉起Hologres向量計(jì)算+PAI部署大模型所需資源,直接通過(guò)WebUI與示例數(shù)據(jù),進(jìn)行大模型+向量計(jì)算對(duì)話。
應(yīng)用場(chǎng)景:
企業(yè)級(jí)對(duì)話知識(shí)庫(kù)構(gòu)建。將專(zhuān)屬行業(yè)知識(shí)向量化處理后,存儲(chǔ)到向量引擎,通過(guò)向量計(jì)算結(jié)合大模型推理求解,輸出專(zhuān)屬領(lǐng)域準(zhǔn)確答案,減少大模型問(wèn)答幻覺(jué),完成實(shí)時(shí)知識(shí)更新并提高問(wèn)答速度。
自動(dòng)優(yōu)化CountDistinct,提升查詢(xún)效率
功能說(shuō)明:
Hologres從V2.1版本開(kāi)始,針對(duì)Count Distinct場(chǎng)景做了非常多的性能優(yōu)化(包括單個(gè)Count Distinct、多個(gè)Count Distinct、數(shù)據(jù)傾斜、SQL沒(méi)有Group By字段等場(chǎng)景),無(wú)需手動(dòng)改寫(xiě)成UNIQ,即可實(shí)現(xiàn)更好的性能。
應(yīng)用場(chǎng)景:
在PV、UV計(jì)算等場(chǎng)景提升精確去重查詢(xún)效率
對(duì)比V2.1與V2.0版本,V2.1在單條及多條Count Distinct的內(nèi)存消耗、CPU使用、耗時(shí)上都有顯著差異。
優(yōu)化Runtime Filter能力,顯著提升Join效率
功能說(shuō)明:
Hologres V2.0版本支持1個(gè)join字段的Runtime Filter,V2.1開(kāi)始支持多字段Join的Runtime Filter。在Join過(guò)程中,Hologres根據(jù)build端的數(shù)據(jù)特征和分布以及最終Join的數(shù)據(jù)量和原始掃描數(shù)據(jù)量,自動(dòng)對(duì)probe端的數(shù)據(jù)進(jìn)行裁剪,從而減少對(duì)probe端的數(shù)據(jù)掃描和Shuffler,以此來(lái)提升Join性能。
應(yīng)用場(chǎng)景:
多字段join時(shí),自動(dòng)優(yōu)化大小表join效率,如以下示例SQL,V2.1版本可以提升30%-100%查詢(xún)速度。
Runtime Filter是自動(dòng)觸發(fā)的能力,無(wú)需手動(dòng)開(kāi)啟。觸發(fā)條件如下:
.probe端的數(shù)據(jù)量在100000行及以上。
.掃描的數(shù)據(jù)量比例:build端 / probe端 <= 0.1(比例越小,越容易觸發(fā)Runtime Filter)。
.Join出的數(shù)據(jù)量比例:build端 / probe端 <= 0.1(比例越小,越容易觸發(fā)Runtime Filter)。
新增漏斗、留存、路徑等函數(shù),簡(jiǎn)化用戶(hù)行為分析
功能說(shuō)明:
用戶(hù)漏斗分析、留存分析、路徑分析是常見(jiàn)的用戶(hù)行為數(shù)據(jù)分析場(chǎng)景,Hologres新增漏斗、留存、路徑函數(shù),可以幫助用戶(hù)更加簡(jiǎn)單、高效地完成行為分析。
應(yīng)用場(chǎng)景:
用戶(hù)漏斗分析,計(jì)算每個(gè)階段行為轉(zhuǎn)化率。Hologres原生支持漏斗函數(shù),也支持區(qū)間漏斗函數(shù),這樣不僅可以看到每個(gè)階段的漏斗結(jié)果,也可以分組展示漏斗的結(jié)果,不需要寫(xiě)額外的各種擴(kuò)展語(yǔ)法。
用戶(hù)留存分析,計(jì)算近3天、7天用戶(hù)等留存。Hologres支持留存函數(shù)和留存擴(kuò)展函數(shù),方便業(yè)務(wù)可以高效的分析產(chǎn)品留存率,助力進(jìn)一步業(yè)務(wù)決策。
用戶(hù)路徑分析,計(jì)算用戶(hù)產(chǎn)品使用路徑分布情況。Hologres路徑函數(shù)可以基于事件,統(tǒng)計(jì)用戶(hù)訪問(wèn)行為的流入留出,快速搭建用戶(hù)路徑?;鶊D。
BSI+RB函數(shù)助力高效畫(huà)像分析
功能說(shuō)明:
Hologres原生支持Roaring Bitmap函數(shù),將用戶(hù)ID構(gòu)建成Bitmap實(shí)現(xiàn)屬性標(biāo)簽的快速分析;同時(shí)在2.1版本開(kāi)始支持BSI函數(shù),通過(guò)BSI的高效壓縮和切片索引,實(shí)現(xiàn)行為標(biāo)簽的高效分析,同時(shí)在查詢(xún)時(shí)可以通過(guò)二進(jìn)制原理和Roaring Bitmap交并差運(yùn)算進(jìn)行快速計(jì)算,支持對(duì)高基數(shù)行為標(biāo)簽的壓縮存儲(chǔ)和低延遲查詢(xún),從而實(shí)現(xiàn)“屬性標(biāo)簽”和“行為標(biāo)簽”的高效聯(lián)動(dòng)分析。
應(yīng)用場(chǎng)景:
通過(guò)BSI函數(shù)+RB函數(shù)實(shí)現(xiàn)高效的行為分析與畫(huà)像分析。例如在一張用戶(hù)屬性表,一張用戶(hù)收入表,表結(jié)構(gòu)如下:
若要計(jì)算出“廣東、男用戶(hù)的GMV總和”,傳統(tǒng)的Join語(yǔ)法,數(shù)據(jù)量大時(shí)容易OOM,通過(guò)高效bitmap壓縮,避免join即可聯(lián)合分析。
若要計(jì)算出“昨日廣東男用戶(hù)消費(fèi)金額Top K”,傳統(tǒng)語(yǔ)法對(duì)GMV排序要消耗大量資源,BSI+RB自帶TopK函數(shù),分析更高效。
支持單實(shí)例Shard多副本,提升吞吐量,實(shí)現(xiàn)查詢(xún)高可用
功能說(shuō)明:
單實(shí)例Shard多副本是Hologres一直Beta中的能力,在V2.1版本正式發(fā)布,可以實(shí)現(xiàn)單實(shí)例內(nèi)高可用及負(fù)載均衡擴(kuò)吞吐場(chǎng)景,可容忍部分機(jī)器故障及熱點(diǎn)不均衡問(wèn)題。
應(yīng)用場(chǎng)景:
多副本高吞吐場(chǎng)景
小部分Worker計(jì)算資源使用率很高,其他Worker很低,有可能是查詢(xún)不均導(dǎo)致的,此時(shí)增加Shard的副本數(shù)量,使更多的Worker上有Shard的副本,有效提高資源利用率和QPS。
多副本高可用場(chǎng)景
因?yàn)閱蜸hard Failover時(shí)導(dǎo)致查詢(xún)不可用情況,增加副本數(shù)量后,某個(gè)worker發(fā)生故障時(shí),由于仍存在完整的Shard副本,實(shí)例可以繼續(xù)。
結(jié)合DataWorks增強(qiáng)數(shù)據(jù)同步、血緣、地圖、傳輸加密等能力
功能說(shuō)明:
Hologres與DataWorks深度集成,在過(guò)去的MySQL、Oracle、PolarDB、SQLServer等數(shù)據(jù)源的基礎(chǔ)上,V2.1版本新增支持ClickHouse整庫(kù)全量、ADB整庫(kù)同步、Kafka實(shí)時(shí)同步到Hologres。同時(shí)在DataWorks中可以采集Hologres元數(shù)據(jù),查看Hologres表血緣和字段血緣信息。
更多完整功能列表請(qǐng)查看Hologres V2.1功能發(fā)布記錄