天天看點

非結構化資料峰會:Zilliz Cloud首發,Milvus技術、生态全揭秘

作者:InfoQ
非結構化資料峰會:Zilliz Cloud首發,Milvus技術、生态全揭秘

2022 年 9 月 24-25 日,首屆非結構化資料峰會(2022 Unstructured Data Summit)線上上舉行。本次峰會由 Zilliz 主辦,主題為「矩陣革命,向量連接配接世界」,峰會設定了一系列 Keynote 和分論壇演講,圍繞人工智能在非結構化搜尋領域的頂尖技術、熱門話題、前沿觀察展開分享和探讨,共同探索行業發展的新風向。

對于主辦方 Zilliz,如果近期有關注科技圈投融資動态的話,應該對它不陌生。不久前,向量資料庫公司 Zilliz 宣布完成 6000 萬美元的新一筆融資,通過這輪融資 Zilliz 成功将其 B 輪融資規模進一步擴大至 1.03 億美元。

這家剛滿 5 歲的資料庫公司正在做什麼?這次的非結構化資料峰會又給行業帶來了哪些新風向?

1.Zilliz 全新産品釋出,非結構化資料 ETL 流水線詳解

Zilliz Cloud 首發并公布架構圖

網際網路快速發展至今天,全球仍然有 80% 的資料都以非結構化的形态存在,它們很難被有效利用,釋放資料原本的價值。在過去的幾十年中,雖然計算機已經能夠高效處理普通的數值和文本類結構化資料,但對于圖檔、音視訊、行為畫像、化合物三維結構,以及基因序列等這些廣泛存在的非結構化資料依舊不知所措,業界缺乏有效的非結構化資料處理手段。

在首屆「非結構化資料峰會」上,Zilliz 創始人兼 CEO 星爵表示,非結構化資料因其自身的特點,天然難以被洞悉和管理,如何做好非結構化資料的處理,将會是廣大企業面臨的巨大挑戰;作為較早研究非結構化資料的公司,Zilliz 已經取得了一定的成果,包括早前釋出的 Towhee、Milvus、Attu、Feder 等項目,能夠實作端到端的向量提取與轉化、向量存儲與分析、資料庫圖形化管理、算法處理過程可視化等。

此次峰會上,Zilliz 又有一款新産品釋出,即全托管 Milvus 服務 Zilliz Cloud,定位為一個非結構化資料處理的雲服務。

Zilliz Cloud 是 Milvus 開源社群原班人馬基于全球最流行的開源向量資料庫 Milvus 打造的全托管向量檢索服務,在具備高可用、高可拓展、安全合規的基礎上,提供了更加豐富的生态能力和開箱即用的高性能向量檢索方案。

Zilliz cloud 架構大圖

Zilliz 合夥人兼技術總監栾小凡向 InfoQ 表示:“Zilliz Cloud 最大的優勢在于背靠 Milvus 開源社群。首先 Zilliz Cloud 的開發團隊是 Milvus 的原班人馬,我們可能是最了解非結構化資料和向量檢索的那一撥人;另外這些年來通過在社群跟開源使用者不斷地交流、探讨,我們深知這個領域使用者的需求和應用場景;除此之外,我們團隊的工程師都非常有經驗,幾乎都建構過大規模、高可用的一些解決方案,同時也知道怎麼去最大化利用 Milvus 的能力,我們更清楚 Milvus 這個系統應該用什麼樣的參數去跑,出了問題以後怎麼樣去解決。”

Towhee:非結構化資料 ETL 流水線詳解

資料庫托管後,又該如何進行非結構化資料的處理,如何通過最低成本來建構 AI 應用,實作模型在業務落地呢?

Zilliz 合夥人和産品總監郭人通博士,在其主題分享《Towhee:非結構化資料 ETL 流水線》中指出,在非結構化資料中提取 / 嵌入向量、資料标簽和屬性等資訊,是建構 AI 應用,實作資料分析、檢索的關鍵。為此,Zilliz 技術團隊打造了 Towhee 這個專注于非結構化資料 ETL 的架構,它能幫助各行各業把各種不同的非結構化資料更加簡便地轉變成向量。

通過使用 Towhee,任何使用者都能夠基于 Python 代碼一鍵建構面向生産的高性能非結構化資料處理流水線。Towhee 提供了一套優雅的函數式 Python 程式設計接口,以及一組覆寫日常工作所需要的工具集,隻需要幾行代碼,就能夠自動解決以下問題:将推理流水線内出現的代碼(模型、算法、資料處理過程等)轉換成對應的高性能實作,組織端到端的推理服務代碼,一鍵生成 Docker 鏡像等。

對于 Towhee 的研發曆程,郭人通向 InfoQ 表示:“去年六七月份,我們受到一個社群訴求的啟發,産生了研發一款非結構化資料 ETL 流水線的想法,10 月份 Towhee 0.1 版本誕生,之後進入了持續的模型驗證階段,直到今年 6 月份,我們推出了一個基于 Python 的、易用的、流水線定義的程式設計接口,開始做大量的面向性能和場景執行效率相關的工作,這個月底我們還将釋出 Towhee 0.9 版本,新版本在一些大的視訊、音頻這類流式資料的處理效果上,會有比較大的提升。”

未來,Towhee 将在現有的 pipeline 定義接口上提供一個類似于 Spark、 Flink 的流水線定義接口;同時将更加深入地內建英偉達的技術生态,進一步提升整個流水線面向生産的一個執行效率;最後 Towhee 也會應社群很多使用者的需求,去解決關于中文模型缺口的問題等。

在 Zilliz 的定義裡,盡管 Towhee 是一個年輕的項目,但是它作為非結構性資料快速轉換為向量的架構,實際上是使用 Milvus 系統的前一站。

作為 Zilliz 的核心産品, Milvus 又是如何一步步成長為現在的樣子的呢?

2.從開源中來:Milvus 開源資料庫的演進之路

峰會上,Linux Foundation AI & Data 基金會執行董事 Ibrahim Haddad 帶來了《加速中的開源人工智能創新與合作》主題分享,他分享了開源項目 Milvus 是如何為 Linux 基金會書寫了一段成功的故事,以及基金會在 AI & Data 領域如何幫助初創項目進行孵化、互惠共赢。

LF AI & Data 是 Linux 基金會的一個傘形基金會,支援人工智能、機器學習、深度學習和資料的開源創新。建立 LF AI & Data 是為了支援開源 AI、ML、DL 和資料,并建立一個可持續的開源 AI 生态系統,讓使用開源技術建立 AI 和資料産品和服務變得容易。LF AI & Data 鼓勵在中立的環境下以開放的治理進行協作,以支援開放源碼技術項目的協調和加速。

星爵向 InfoQ 表示,2019 年 Zilliz 将 Milvus 項目正式開源,2020 年初便捐獻給了 Linux Foundation AI & Data 基金會,随後的幾年 Milvus 發展成全球最流行的向量資料庫系統之一;湊巧的是就在峰會前夕, Milvus 項目超越了 ONNX 以及 Horovod 項目,成為了基金會裡 star 數量最多的開源項目。

Ibrahim Haddad 指出,Milvus 項目于 2020 年 1 月加入 Linux Foundation AI & Data 基金會,隻用了一年半時間便成功畢業,目前已經有超過 1600 名貢獻者參與到這個項目,其中超過一半為持續活躍的貢獻者;最令他感到驚訝的是,過去兩年項目的送出增長了 270%,而項目的拉取請求周期隻有 2.23 天,這意味着 Zilliz 團隊花了非常多的時間在社群維護上。

從最初的想法萌生到 Milvus 開源,隻用了一年的時間,随後便釋出了 Milvus 1.0 版本;但是伴随非結構化資料的爆發式增長,1.0 版本下的資料孤島、架構耦合、缺乏彈性、疊代慢等問題開始變得嚴重,如何讓 Milvus 支撐千億級向量動态擴充以及雲原生等能力成為了橫亘在眼前不得不解決的問題。為了解決以上問題,Milvus 團隊下定決心去開發一個新的版本——Milvus 2.0。

在經過了一系列的測試之後,Milvus 2.0 于今年 2 月份正式釋出,Milvus 2.0 是完全基于雲原生架構進行開發的一個全新版本。随後經曆了持續半年多的使用者回報、生産環境的經驗積累,Milvus 2.0 更進一步疊代,性能更優、生态更完善、适配場景更豐富的 Milvus 2.1 于 7 月份釋出。

相比于 2.0 版本, Milvus 2.1 支援記憶體多副本、查詢高可用,能夠解決讀寫分離及高并發等問題,另外還支援了 String 類型,系統性能也得到了大幅提升,比如支援了 ANN 索引,加入了全新的智能排程引擎,實作了 3.2 倍的性能提升,延遲低至 5ms 等。

值得一提的是,Zilliz 團隊計劃在九月底 / 十月初推出更新的 Milvus 2.2 版本,新版本将重點改進運維友好性、可觀測性和穩定性。

Zilliz 首席工程師焦恩偉表示,在 Milvus 2.2 版本中最重磅的功能便是增加了磁盤索引(DiskANN)這一選項,相比于傳統的純記憶體索引方案,DiskANN 可以把使用者的本地磁盤作為存儲索引,犧牲少量的查詢性能,但能換來大幅成本降低,使用者可以使用更低成本的具備 SSD 且記憶體更小的機器進行資料庫部署。同時新版本還将增加資料批量導入、RBAC 權限控制、查詢 Pagination、限流與反壓等功能。

Zilliz 向 InfoQ 表示,下一代的 Milvus 将重點圍繞 AI 中台 / AI 業務兩大使用者群、高性能向量庫 / 海量向量分析兩大場景的需求繼續進行疊代更新。

3.到實踐中去:Milvus 向量資料庫的技術挑戰與場景實踐

随着 AI 技術的快速發展和非結構化資料的爆炸式增長,基于向量的資料分析技術開始被普遍應用。然而,由于向量資料天然的高維特性,對其分析時的算力和存儲需求遠高于傳統标量資料。如何快速高效地對分析向量資料,是近年來在學術界和工業界都備受關注的一個問題。

Zilliz 研究團隊負責人和進階研究員易小萌博士将 Milvus 向量資料庫面臨的挑戰總結為三點:向量資料處理的次元災難、多路折衷的問題、複雜的查詢語義挑戰,并從數學的角度對這三個挑戰進行了闡釋。

針對 Milvus 向量檢索的實際應用,易小萌舉了一個商品搜尋的例子:使用者給出一個商品圖檔,除了想要搜尋出跟這個圖檔上的商品一樣或近似的商品外,很可能還希望看到它的價格。這種情況下,向量檢索不僅僅要找到相似的向量,還需要找到該向量所攜帶的一些屬性、條件等。從數學上的定義就是每一個 item 具備一個向量和一個屬性的标簽。Milvus 需要在給定一個向量查詢需求的同時也給到一個屬性的過濾條件,最後在符合屬性過濾條件的向量裡找到 K 個最相似的向量,然後進行合并分析,進而得出最接近使用者需求的答案。

事實上,Milvus 向量資料庫系統及相關技術早已在很多行業進行了場景驗證。比如金融支付場景下,翼支付利用 Milvus 建構了更加智能的金融風控體系;視訊直播場景,Milvus 幫助虎牙團隊快速進行敏感區域特征識别與檢索,提高視訊内容安全審查效率;社交場景,Milvus 助力陌陌進行垃圾資訊甄别、假照識别等;深度學習場景,Milvus 語義索引庫幫助百度飛槳 PaddleNLP 提高語義檢索的精準性等。

當然,目前非結構化資料和向量搜尋依然是一個非常新的領域,除了需要更多的場景落地驗證外,還需要更多的開發者與企業加入進來,共同構築行業新生态。

4.向量連接配接世界:非結構化資料搜尋的技術生态與未來

目前圍繞非結構化資料檢索的開源技術生态處于快速發展和變革期,領域内的開源技術生态成熟度将直接影響上層應用的規模與成本,做出正确的技術決策,選擇開放、活躍的生态社群,将是企業實作降本增效的最核心的手段之一。

Zilliz 合夥人和産品總監郭人通博士在其主題分享《非結構化資料搜尋的工具鍊與技術生态》中提到,在應用生态層面,非結構化資料搜尋在圖搜、視訊搜尋、文本語義搜尋、跨通道搜尋、推薦 / 問答系統、版權保護、欺詐檢測、資料查重、網絡安全、藥物發掘、異常檢測等場景有着良好的應用前景;在行業生态層面,目前非結構化資料生态的基礎軟體和工具遠遠少于結構化資料生态,未來有着非常廣闊的增長空間。

但是,不得不承認的是目前非結構化資料檢索在可用性、安全性、性能、可靠性、可擴充性等方面依然面臨較多的使用者痛點。由于缺乏基礎元件工具,各個關鍵技術點很難被串聯起來,最終可能陷入“重複造輪子”的窘境,無法向客戶輸出系統性解決方案。

面對這些問題,Zilliz 開發了一系列的工具去解決一些關鍵應用環節的問題。在部署階段,Zilliz 提供了 Milvus Sizing Tool 工具,能夠自動生成部署腳本,幫助使用者快速布置一個分布式的、大規模的向量資料庫軟體;在運維階段,Zilliz 提供了開源工具 Attu,能夠幫助使用者管理硬體資源、負載狀态等等;在業務提效方面,Zilliz 提供了一個向量召回工具 Feder,面向不同索引、不同層面,可視化地告訴使用者召回過程中發生了什麼,以及資料之間的關系是怎樣。另外,Zilliz 還将上述工具進行整合,開發出了一個全托管的向量資料庫 SaaS 雲平台,也就是剛剛釋出的 Zilliz Cloud。

除了内部三件套工具的內建外,在外部生态方面,Milvus 攜手百度飛槳社群共建 AI 基礎設施開源生态;Towhee 與上海人工智能實驗室 OpenDataLab 社群開展了開放資料集領域的生态合作,打通 AI 落地的最後一公裡;模型層面,Milvus 已經完成了與 Huggingface、TIMM、TorchVision 等軟體的生态對接;資料處理層面,內建了 Numpy、OpenCV、FFmpeg 等開源軟體;服務層面,也已經與 Docker、Triton、ONNX、TensorRT 等進行了連通等。目前 Milvus 和 Towhee 也在積極尋求生态合作,希望與合作夥伴們共同完善非結構化資料搜尋的技術生态。

最後,借用 Zilliz 創始人兼 CEO 星爵的話來說,“十年後回頭看現在,非結構化資料的價值幾乎是完完全全沒被挖掘出來的。”非結構化資料領域是一個全新的賽道,未來十年,一定會有更多的創新應用、場景湧現,而在生态建設的過程中,需要更多的開發者、産業鍊夥伴、創業公司加入進來,一起去探索、去共建非結構化資料的未來。

繼續閱讀