国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

資深開發者眼中的開源云原生數倉 ByConity

話說科技 ? 來源:話說科技 ? 作者:話說科技 ? 2023-06-06 16:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

5月22日,字節跳動宣布開源 ByConity 云原生數據倉庫,項目地址:https://github.com/ByConity/ByConity。

ByConity 基于 ClickHouse 內核開發,采用計算存儲分離的架構、主流的 OLAP 引擎和自研的表引擎,提供便捷的彈性擴縮容和極速的分析性能,覆蓋實時分析和海量數據的離線分析,幫助企業更好地挖掘數據價值。

ByConity 于 2022 年計劃開源,2023 年 1 月發布 beta 0.1.0 版本,一些關注字節 ClickHouse 使用情況的的開發者在 ByConity 開源初期便進行了一些測試,如華為終端云、唯品會、展心展力、中電云、傳音控股等團隊。部分團隊使用 ByConity 進行了 TPC-DS 測試,也有一些深度試用的團隊采用生產數據和具體場景進行了測試。

在此期間,社區收到了很多團隊對于 ByConity 性能的積極反饋,當然也有團隊遇到了一些部署中的難題和阻礙,并為社區提供了許多非常不錯的改進建議。在和社區用戶交流的過程中我們發現,不同的團隊可能會遇到一些相似的問題,也會基于各自的業務需求設計對應的解決方案。

今年5月 ByConity 正式開源發布 GA 0.1.0 版本,為了幫助更多關注者在早期更好地使用 ByConity,社區邀請了幾位參與 ByConity 測試和試用的團隊成員與 ByConity 資深研發工程師進行了一次交流,希望將社區的經驗分享給遇到同樣問題和正在考慮解決方法的團隊。

參與此次交流的幾位嘉賓為:

Kevin Fang,字節跳動 ByConity 資深研發工程師

趙金濤,華為大數據研發工程師

徐慶岳,中電云數據庫內核技術專家

程偉,MetaApp 大數據研發工程師

本文根據此次交流中的部分要點整理而成。

Q1:各位在平時工作中會使用大數據的哪些技術和產品?是什么契機讓你們接觸到 ByConity?

程偉:我們主要是做了一個 OLAP 日志分析平臺,開始選的是 ClickHouse,中間存在一些問題。后來通過字節跳動 ClickHouse 技術沙龍了解到字節對 ClickHouse 進行了優化,輸出到 ByConity 中,做了開源 ,我們就開始嘗試。

徐:我們是在做定制云計算,自己也有一些數據庫產品。在私有云的部分項目中遇到了一些問題,比如說有些產品數據量特別大,每天會有 2 個 PB 的數據進來,查詢一般需要是秒級,響應要求也比較高。在產品中,除了查詢需求,也有匯入的需求,比如單節點匯入需求要達到差不多 400 兆每秒,查詢也要比較快。

按照我們自己目前的方法,匯入需求能達到,但查詢的時候,甲方會希望“能不能再快一點?” 。當時我們基于自己開發團隊的一些產品感覺有點吃力,就對其他產品做了一些了解,比如 ClickHouse、騰訊云和字節的產品,當然也有一些創業型公司的項目。當時得知 ByConity 開源了,我們想有更多了解,就邀請 ByConity 負責人進行了交流。溝通后發現有些技術方面確實值得借鑒,于是我們做了一些針對性測試,看看某些功能點上是不是可以使用。

趙:我們內部也在廣泛使用 ClickHouse,在使用過程中發現它存在一些架構上的短板,比如說擴縮容的成本很高,擴縮容的時候需要刷元數據、停 merge、停 mutate、搬遷數據等代價非常大,集群的資源難以根據負載靈活調整,存在浪費。這個時候看到包括 ClickHouse 公司在內,大數據領域有非常多的產品都在構建云原生能力。

我們認為云原生是大數據的必然趨勢。也是這個時候,我們從網上得知字節把在 ClickHouse 領域多年的技術積累貢獻出來,開源給社區了。基于這個契機,我們投入到社區里面來,希望借鑒 ByConity 的一些思想,把 ClickHouse 打造成一個高性能的云原生數據庫。

Q2:其實咱們碰到的很多的問題都是有共性的,例如在應用 ClickHouse 解決業務問題的時候,遇到擴縮容、性能方面的一些問題。那想問各位老師,大家覺得在解決這些問題的過程中有哪些難點,我們最需要攻克的關鍵技術點是什么?

程偉:一是在計算方面,希望能夠計算得快一些;再就是能夠支持更多的數據源;另外是能夠支持更龐大的數據量。

徐:通過對 ByConity 技術的了解,它應該是按 Snowflake 論文來走的,包括元數據、數據的存算分離以及分布式的 MPP。在擴縮容這一塊,S3 或者 HDFS 確實是一個很高的提高。但是在計算方面,未來怎么能夠感知每個查詢所需的計算資源多少?比如一個查詢需要一臺機器,下一個查詢可能需要 100 臺機器,從計算方面如何彈性?這可能也是云計算本身存在的最大的一個理由,就是能夠感知什么時候把計算資源根據租戶來分配,或者根據不同的查詢來分配。如果是根據租戶,比如根據每個租戶的節點拓撲走不同的查詢,ByConity 應該是這種路線實現的。但是如果能夠更智能地感知當前的查詢需要多少個計算資源,那就更好了。

趙:我認為在大數據多維分析領域有兩點是需要平衡的,第一是性能,第二是靈活性,極高的性能必然會損失靈活性。比如像 ClickHouse,它的各節點是完全對等的,元數據和數據都分片保存在節點上,這種 ShareNothing 的架構結合 ClickHouse 強大的 MPP 計算能力和極致的細節優化使得 ClickHouse 性能非常快。如果我們想在保證 ClickHouse 性能的基礎上,具備更高的靈活性,讓它靈活擴縮容,這種訴求和 ClickHouse 原生架構存在沖突。所以基于 ClickHouse 的原生架構去發展很難實現類似彈性伸縮這樣的靈活性。

那我們就需要對 ClickHouse 架構改造升級,需要在比較高的靈活性下,仍然能保證性能。在這個過程中,就存在技術挑戰,比如需要將數據和節點的綁定解耦,需要實現節點的徹底無狀態,元數據要從本地磁盤抽到統一的元數據中心,數據要從本地磁盤推到 HDFS 或者是 S3 等的這些對象存儲上。對于大數據分析引擎來講,這種架構升級涉及的細節非常多,牽一發而動全身,技術挑戰也很大。而這種改造必然會帶來性能的降低。這時我們要采取其他的一些技術手段,比如緩存等,來提升性能。

Q3:在了解項目之后是如何上手的?是否遇到了一些障礙?體驗如何?

程偉:我們最初使用 ByConity,是基于社區提供的 TPC-DS 測試項目來上手的。社區有一個比較詳細的教程介紹如何通過 Docker 來部署 ByConity。把 ByConity 部署以后,跑了 TPC-DS 數據。在教程中會涉及到一些不清楚的點,加上我們想修改一些配置,由于對這些配置的了解情況并不是很多,所以就沒有達到需要的效果。目前經過跟社區進行溝通,已經解決了這些問題。我們現在已經將 ByConity 部署在 K8s 上,并且基于 ByConity 提供了日志分析服務。

我們團隊對 ByConity 社區一個最大印象就是溝通的成本非常低,非常有效果,我們遇到一個問題的時候,在社區提出,很快就有社區的相關同學,以及社區中的一些其他愛好者來協助我們解決這些問題。

徐:我們團隊也在 Docker 上對 ByConity 進行了部署和測試,主要是看對 SQL 兼容性。但由于項目原因我們更關注 ByConity 寫入和讀取的速度,更多關注技術細節,比如說跟 HDFS 打交道的時候做的一些優化細節,我們會從源碼級角度去看。和社區接觸的過程中,團隊的響應很快。在測試中我們也給社區找出了一個 bug。

在使用中感覺 ByConity 的性能提升很多,比如查詢性能。如果說把單個 libHDFS 上拿出來做對比的話,跟 ClickHouse 社區比可以達到百分之四五十的性能提升。后續我們還會再測一測優化函數性能提升如何。

趙:ByConity 開源以后,我們首先跑了雛形,然后分析了 ByConity 的源碼和基于 ClickHouse 的一些改進點。在此過程中,發現 ByConity 是想構建一個比較完善的云原生的數據庫,對 ClickHouse 的各種功能角色解耦非常徹底。

我們也和社區一起共建,比如 MergeTree 支持對象存儲,Hive 外表支持對象存儲,Hive 外表的功能完善等等。在過程此中我們多次和社區一起討論,一起把能力打磨成熟。近期我們在使用的時候發現某些場景下相比 ClickHouse 性能大幅劣化,也正在和社區一起去分析瓶頸,提升性能。

Q4:后續團隊希望將 ByConity 用于什么業務場景,有什么短期和長期的規劃?

程偉:現階段我們主要將 ByConity 用在日志分析平臺的搭建。我們使用了 ByConity 的一個 Map 類型來將日志保存起來。一般來說大家都會采用固定的一些字段來做。但我們用了 Map,是因為我們日志中不確定的字段太多,所以我們根據名字和類型,通過創建 3 個 Map 來將我們的日志保存起來。這樣日志查詢的時候只需要拿到日志的 schema,就可以根據 schema 對應的類型來拿到對應的日志。現在我們每天會打入幾百萬條數日志數據,目前表現還是非常不錯的。

另外我們有一個 OLAP 的數據分析平臺,會有 A/B 測試,數據指標分析等功能,現階段是基于 ClickHouse 來做的,未來我們可能會用 ByConity 來進行嘗試,替代 ClickHouse 來把這一部分的業務給推起來。

徐:云計算公司,像大家都知道的比如火山引擎、華為云都有自研的產品,但不可能每個產品都自研,也會使用開源項目。 ByConity 跟社區版的 ClickHouse 架構差異比較大,也會在某些場景下符合我們的一些需求,在選型的時候就會考慮使用 ByConity。同時我們也會考慮 ByConity 的團隊怎么樣,以及社區的活躍度。 社區如果不能繼續推進的話,對于后續一些功能的使用就會有影響。

未來我們也會和社區和團隊做交流,看我們有哪些合適的使用場景,有哪些技術點是雙方可以一起來提升的,以及哪些是可以回饋社區的。因為大家都是技術愛好者,希望能夠相互成就。

趙:我們的首版本還在構建中,會用于多維分析場景。首先會借鑒 ByConity 構建一個比較完善的云原生的數據庫,實現資源彈性伸縮。我們還會借鑒 ByConity 的架構,構建湖倉一體的能力,不僅僅能夠用于分析場景,還能用于數倉的場景,比如說可以分析 Hive 外表、Iceberg、Hudi 等等。

首先我們會聚焦第一個場景,會和社區一起解決一些迫在眉睫的問題。比如查詢性能,ByConity 熱讀的性能比較理想,但冷讀的查詢性能還有比較大的提升空間。所以這段時間我們會把精力放在提升 ByConity 的冷讀性能上,我們正在分析冷讀的情景,想方法讓 ByConity 能夠持平或者至少接近 ClickHouse 的原生版本。

我們還發現某些異常場景下偶現數據丟失等現象,我們會著重提升可靠性,確保運行穩定可靠。

性能和可靠性提升后我們會借鑒 ByConity 資源隔離以及云原生的能力,來構建一個比較完善的云原生數據庫,能夠實現集群的彈性伸縮,集群能夠根據查詢量的大小動態的去分配資源等等,這些是我們未來的目標。

Q5:對 ByConity 技術路線的看法和訴求

程偉:我們對 ByConity 目前的功能,包括未來想要做的云原生數倉的愿景,都非常看好。之后是否能夠支持 ClickHouse 相關的一些數據遷移工作,或者說能夠給出一些遷移 ClickHouse 的幫助?這樣的話能夠讓 ByConity 可以更好地去應用起來。

再就是 ByConity 未來是否可以變成一個更通用的分布式計算引擎,可以對更多的數據源進行一些計算。

徐:這個問題還是比較大的,我覺得每個產品都有自己的場景,對于使用方來說可能主要是看產品的成熟度,如果做得好,甚至可以培養用戶的習慣。不同的數據庫產品大多使用方法不同,可能使用的 SQL 語句都不同,如果對產品不熟悉,更換產品的對于大多數人來說上手都比較困難。如果 ByConity 成熟之后,在很多場景下,性能和靈活性都兼具了,用戶多了,也就慢慢培養了用戶的習慣。

數據庫的技術路線,我想做數據庫的應該都知道,比如存算分離、讀寫分離等,但是如何把一個產品做成功,可能跟產品未來的發展、社區的發展相關。比如多云部署是否支持等。

趙:ByConity 的 GA 版本已發布,我認為接下來首先要把 ByConity 的能力繼續完善,補齊功能,增強冷讀性能,提升可靠性,構建一個比較完善的云原生數據庫。第二點是把 ByConity 強大的性能拓寬到其他領域,比如說能夠把它用到數倉領域,在一定程度上或者在某些場景下能夠替代 Spark,能夠加速模型層的計算。

Q6:在社區建設方面大家有什么看法

程偉:作為資深用戶,對社區的最大的訴求,一是能夠有更詳細的文檔幫助用戶快速上手,以及一些比較詳細的配置文檔,能夠讓我們對 ByConity 的一些參數進行調整,達到一個更好的狀態。再就是與社區溝通中快速反饋的方式。另外就是社區進度的同步,是否有定期的活動。

Kevin:文檔化建設是社區非常重要的一部分,后面會有兩種類型的文檔,一種是給用戶看的,比如用戶手冊,另外一個是面向開發者,會有更多的技術細節。大家在看文檔中遇到一些問題也歡迎隨時提出。

關于問題反饋,我們最推薦的還是 GitHub 的 issue,大家都能看到,也能幫助遇到相同問題的人。

定期活動我們肯定是有的,比如我們每月都會舉辦的 webinar,就會有一個專題去講這些內容。前面講了 ByConity 的一些技術架構的點,后面會分享一些計劃要做的內容。

徐:之后希望看到 ByConity 技術點和功能迭代更加完善,也希望看到一些好的實現方法。社區共建這塊,我覺得可以針對運維同學做一些事情,比如做開設一些課程培訓,并進行認證,可以加深對于產品的熟悉程度,也培養了更多的用戶。

Kevin:這個角度特別好,目前我們面向的更多是開發人員,隨著被用了更多之后,第一手接觸的大部分是運維人員。對于這批人我們如何提供更友好的支持,比如教程、上手以及解決問題的通道。后續我們也可以一起商量,通過社區一起來做。

趙:后續可以定期組織一些 meetup,邀請不同企業的開發人員來分享各自的實踐。另外還可以組織一些代碼解讀的活動,解讀 ByConity 的架構和關鍵技術,比如它的查詢優化器、導入、集群管理等等,尤其一些關鍵流程是如何實現的,這樣也能讓更多的開發者參與進來繁榮社區。

總結

Kevin:非常歡迎大家參與社區共建,一起形成技術的輸出。比如每個團隊側重做的模塊不一樣,可能對某個模塊會有非常深的理解,這些我們是不是可以用文章的形式發布出來,匯總起來,放到社區中,讓其他的開發者都能夠從中受益。

最后希望大家在平時業務當中總結出來的,包括在自己業務上得到驗證的一些經驗方法,一方面能夠回饋給社區,讓有共性的這些業務場景能夠去使用;另外一方面也希望業界的各位專家們一起加入 ByConity,把 ByConity 打造得更好。

彩蛋

此次訪談中還有一些精彩的技術溝通未在本文章展開,如:

在 Map 使用過程中的一些建議和處理方式

ByConity 冷讀和熱度的查詢性能差異

數據湖在 ByConity 未來發展中的考慮與應用場景

數據遷移工具的相關討論

如何使用云原生進行降本增效

Keeper 高可用的探討

本次訪談完整視頻已上傳 ByConity B站:開源云原生數倉 ByConity,社區共建讓技術走得更遠_嗶哩嗶哩_bilibili

ByConity 是一個開放的社區,歡迎更多對云原生數據倉庫感興趣的小伙伴加入社區,一起交流,一起共建。

審核編輯黃宇


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開源
    +關注

    關注

    3

    文章

    4207

    瀏覽量

    46140
  • 數據倉庫
    +關注

    關注

    0

    文章

    65

    瀏覽量

    10972
  • 開發者
    +關注

    關注

    1

    文章

    772

    瀏覽量

    18009
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    開源鴻蒙開發者的跨界成長之路

    開源鴻蒙的開發者里,有一群“跨界先鋒”,他們帶著不同行業的積淀,在這片創新土壤上書寫著獨特的技術故事。張宇昕,浙江眾合科技的鴻蒙系統服務開發工程師,就是其中之一。從守護資金安全的銀行核心系統,到扎根環境復雜的礦山物聯網,兩年
    的頭像 發表于 01-23 09:13 ?933次閱讀

    2025華為開發者大賽暨開發者年度會議成功舉辦

    12月27日-12月28日,以“成就AI原生時代先鋒開發者”為主題的2025華為開發者大賽暨開發者年度會議在上海華為練秋湖研發中心舉辦。本次會議旨在匯聚先鋒
    的頭像 發表于 12-31 13:32 ?668次閱讀

    開發者為核心驅動開源項目邁向成熟

    11月21-22日,以“一切為了開發者——AI共智·開源共享”為主題的2025開放原子開源開發者大會在北京成功舉辦。大會聚焦人工智能、基礎軟件等重點方向,來自產業界、高校、科研機構和
    的頭像 發表于 12-04 10:09 ?680次閱讀

    2025開源鴻蒙開發者激勵計劃正式啟動

    11月21日,2025開放原子開發者大會盛大啟幕,聚焦“AI共智,開源共享”主題,吸引了來自全球的開發者、企業技術領袖、社區維護及高校科研力量參會。作為大會的重要組成部分,
    的頭像 發表于 11-27 14:44 ?673次閱讀

    2025開放原子開發者大會AtomGit開源實踐交流分論壇即將開啟

    當前,全球開源生態正持續蓬勃發展,開發者協作模式與開源創新范式也隨之經歷深刻變革。在此趨勢下,以開發者為中心的AtomGit,創新融合“開源
    的頭像 發表于 11-17 16:32 ?955次閱讀

    2025開放原子開發者大會開源歐拉AI創新分論壇即將啟幕

    智算浪潮席卷全球,操作系統正從“適配AI”向“原生AI”跨越,開源模式已成為技術突破與全球協作的核心引擎。聚焦AGI時代的算力需求與業務創新,11月21日,2025開放原子開發者大會——開源
    的頭像 發表于 11-13 09:59 ?670次閱讀

    2025開放原子開發者大會11月啟幕

    開發者年度盛會即將登場!2025開放原子開發者大會將于11月21-22日,在北京北人亦創國際會展中心盛大召開。大會以“一切為了開發者”為主題,匯聚全球開源智慧——國內外優秀
    的頭像 發表于 10-24 14:05 ?959次閱讀

    開源鴻蒙亮相華為開發者大會2025

    此前,6月20-22日,華為開發者大會(HDC2025)在松山湖盛大召開。在大會的互動展區中,開源鴻蒙重磅亮相,系統性地展示了其開源四年多來,在行業應用、消費終端及AI等領域的豐碩成果。
    的頭像 發表于 06-26 17:21 ?1174次閱讀

    開發者眼中開源魅力

    、openKylin、OpenTenBase開源項目社區的開發者,聆聽他們與開源相遇、相伴、相成長的故事,感受那份超越代碼本身的價值與魅力。
    的頭像 發表于 06-24 11:38 ?933次閱讀

    從“開發者孤島”到“生態星河”:開鴻Bot如何重構開源鴻蒙開發體驗

    在中國操作系統發展史上,“開發者”似乎從來都是一個邊緣角色。他們是開源社區中最活躍的群體,卻也是最常被忽視的那群人。具體到開源鴻蒙社區,其生態構建初期,諸多開發者曾坦言,“鴻蒙很好,但
    的頭像 發表于 06-10 17:12 ?1692次閱讀
    從“<b class='flag-5'>開發者</b>孤島”到“生態星河”:開鴻Bot如何重構<b class='flag-5'>開源</b>鴻蒙<b class='flag-5'>開發</b>體驗

    潤和軟件旗下潤開鴻亮相開源鴻蒙開發者大會2025

    近日,開源鴻蒙開發者大會2025(OHDC.2025)于深圳再啟新篇,會上正式發布了開源鴻蒙5.1 Release版本,并進行開源鴻蒙應用技術組件共建啟動等重要儀式,面向
    的頭像 發表于 06-03 16:22 ?1633次閱讀

    2025開源鴻蒙開發者大會圓滿落幕

    近日,開源鴻蒙開發者大會2025(OHDC.2025,簡稱“大會”)在深圳隆重開幕。大會正式發布了開源鴻蒙5.1 Release版本,舉行了開源鴻蒙應用技術組件共建啟動、
    的頭像 發表于 05-26 17:03 ?1371次閱讀

    深開鴻CEO王成錄:開發者開源鴻蒙生態的原點

    5月24日,深開鴻正式發布全國首款面向開發者開源鴻蒙學習平臺——開鴻Bot系列產品。這是開源鴻蒙在開發者終端領域的關鍵落地,更是深開鴻貫徹“以開發
    的頭像 發表于 05-26 12:06 ?883次閱讀
    深開鴻CEO王成錄:<b class='flag-5'>開發者</b>是<b class='flag-5'>開源</b>鴻蒙生態的原點

    深開鴻CEO王成錄:開發者開源鴻蒙生態的原點

    5月24日,深圳開鴻數字產業發展有限公司(以下簡稱“深開鴻”)正式發布全國首款面向開發者開源鴻蒙學習平臺——開鴻Bot系列產品。這是開源鴻蒙在開發者終端領域的關鍵落地,更是深開鴻貫徹
    的頭像 發表于 05-24 20:16 ?752次閱讀
    深開鴻CEO王成錄:<b class='flag-5'>開發者</b>是<b class='flag-5'>開源</b>鴻蒙生態的原點

    Snap Store開發者工具圖譜:從全棧到云原生,一張圖解鎖Linux開發新姿勢!

    導語“繼上期揭秘Snap如何讓樹莓派‘越級打怪’后,這次我們為你繪制一份跨維度開發地圖!”當Snap的容器化魔法遇上Linux生態的萬花筒,開發者該如何選擇趁手兵器?無論是全棧老手想用
    的頭像 發表于 03-25 09:22 ?866次閱讀
    Snap Store<b class='flag-5'>開發者</b>工具圖譜:從全棧到<b class='flag-5'>云原生</b>,一張圖解鎖Linux<b class='flag-5'>開發</b>新姿勢!