Milvus Lite 已交卷!輕量版 Milvus,主打就是一個輕便、無負擔

想要體驗世界上最快的向量數據庫?缺少專業的工程師團隊作爲支撐?Milvus 安裝環境受限?

別擔心,輕量版 Milvus 來啦!

在正式介紹 Milvus Lite 之前,先簡單回顧一下 Milvus。Milvus 是一款開源的向量數據庫,專門用於索引、存儲以及查詢那些由深度神經網絡和其他機器學習(ML)模型生成的向量,支持十億級別的數據規模,已成爲許多公司、研究人員和開發者處理大規模數據集相似性搜索的首選工具。

不過,也有用戶反饋剛開始接觸 Milvus 或者想要在 Notebook 中進行快速實驗時,安裝或部署 Milvus 有些力不從心 。爲此,Milvus 社區的 Committer 嵇斌開發出 Milvus Lite,即 Milvus 的輕量級版本,方便有相關需求的用戶進行體驗。可以這樣理解,Milvus Lite 爲沒有專業運維團隊支撐、安裝部署環境受限的羣體提供了新的可能。

Milvus Lite 的優勢

作爲 Milvus 的輕量級版本,Milvus Lite 有不少優勢,例如:

  • 可以輕鬆將 Milvus Lite 集成到 Python 應用程序中,不需要任何其他依賴項;

  • 可以作爲 library 導入到其他 Python 程序中,並使用命令行接口(CLI);

  • 與 Google Colab 和 Jupyter Notebook 的集成變得更容易;

  • 安全遷移,應用程序代碼和數據都可以絲滑地遷移到 Milvus集羣或 Zilliz Cloud中。

Milvus Lite 的適配場景

Milvus Lite 的典型使用場景:

  • 用戶在使用 Milvus 的過程中不方便使用 K8s、容器等技術工具(例如 Milvus Operator,Helm 或 Docker Compose)時;

  • 想要將 Milvus 的功能集成到 Python 應用程序中;

  • 想在 Colab 或 Notebook 中進行快速實驗時迅速啓動 Milvus 實例。

需要注意的是,我們不推薦在任何生產環境中使用 Milvus Lite,也不推薦在需要高性能、高可用性或高可擴展性時的場景下使用 Milvus Lite。相反,當大家有類似需求時,我們更推薦 Milvus 集羣或Zilliz Cloud(提供開箱即用的向量數據庫服務,6 月底即將登陸阿里雲)進行部署。

如何安裝、部署和使用 Milvus Lite?

準備工作

在正式安裝 Milvus Lite 以前,需要做足以下準備:

  • 安裝 Python 3.7 或更高版本。

  • 使用下述任何一個經過驗證的操作系統:Ubuntu >= 20.04 (x86_64);CentOS >= 7.0 (x86_64);MacOS >= 11.0 (Apple Silicon)

值得注意的是,Milvus Lite 用 manylinux2014作爲基礎鏡像,以便與 Linux 用戶的大多數發行版兼容。

安裝 Milvus Lite

  • Milvus Lite 可以在 PyPI 中下載安裝,我們可以通過 pip進行安裝。
$ python3 -m pip install milvus
  • 或者大家也可以通過 PyMilvus 進行安裝,具體操作如下:
$ python3 -m pip install milvus[client]

使用並啓動 Milvus Lite

從我們的項目庫的示例文件夾中下載示例代碼(https://github.com/milvus-io/milvus-lite/tree/main/examples)。有兩種方式可以使用 Milvus Lite:將其作爲 Python 庫導入或用 CLI 在機器上將它作爲獨立服務器運行。

  • 將 Milvus Lite 作爲 Python 模塊啓動,執行以下命令:
from milvus import default_serverfrom pymilvus import connections, utility# Start your milvus serverdefault_server.start()# Now you can connect with localhost and the given port# Port is defined by default_server.listen_portconnections.connect(host='127.0.0.1', port=default_server.listen_port)# Check if the server is ready.print(utility.get_server_version())# Stop your milvus serverdefault_server.stop()

大家也可以將 server 實例,放在 with語句的上下文中,以實現自動啓停:

from milvus import default_serverwith default_server:  # Milvus Lite has already started, use default_server here.  connections.connect(host='127.0.0.1', port=default_server.listen_port)
  • 通過 CLI 來啓動 Milvus Lite,執行以下命令:
milvus-server

啓動 Milvus Lite 後,大家就可以使用 PyMilvus 或自己順手的工具來連接獨立服務器了。

用調試模式啓動 Milvus Lite

  • 將 Milvus Lite 作爲 Python 模塊以調試模式運行,執行以下命令:
from milvus import debug_server, MilvusServerdebug_server.run()# Or you can create a MilvusServer by yourself# server = MilvusServer(debug=True)
  • 在調試模式下運行 Milvus Lite,請執行以下命令:
milvus-server --debug

持久化數據和日誌

  • 執行以下命令創建一個本地目錄,用於存儲所有相關的 Milvus Lite 數據和日誌:
 from milvus import default_serverwith default_server:  default_server.set_base_dir('milvus_data')
  • 爲了將 Milvus Lite 生成的所有數據和日誌保存在本地磁盤上,執行以下命令:
 $ milvus-server --data milvus_data

配置 Milvus Lite

配置 Milvus Lite 與使用 Python API 或 CLI 設置 Milvus 的實例相似。

  • 用 Python API 配置  Milvus Lite ,可以使用 MilvusServer實例的 config.set來設置基本和額外的設置:
from milvus import default_serverwith default_server:  default_server.config.set('system_Log_level', 'info')  default_server.config.set('proxy_port', 19531)  default_server.config.set('dataCoord.segment.maxSize', 1024)
  • 用 CLI 配置 Milvus Lite,運行以下命令進行基本設置:
$ milvus-server --system-log-level info$ milvus-server --proxy-port 19531
  • 或者,運行以下命令以進行額外配置:
$ milvus-server --extra-config dataCoord.segment.maxSize=1024

所有配置參數都在 Milvus 工具包中附帶的 config.yaml模板中。想了解更多關於安裝和配置 Milvus Lite 的技術細節,可以點擊查看**https://milvus.io/docs/milvus_lite.md#Prerequisites**。

總結

總體而言,無論用戶是何種身份(研究人員、開發者或者數據科學家),Milvus Lite 都是一個不錯的選擇,尤其對於那些想要在受限的環境中使用 Milvus 功能的用戶而言,更是如此。

Milvus Lite 是開源社區或者說開源文化下的產物,背後折射出的是開發者們對於開源的熱愛。在此,我們尤其要感謝 Milvus 社區 Committer 嵇斌,沒有他就沒有 Milvus Lite!我們也期待有更多開發者參與進來,和我們一起探討 Milvus 的未來,在這個極具創新性與發展性的集市模式的加持下,Milvus 一定會變得越來越好,從而更好地滿足用戶的需求。

最後,如果大家在安裝或使用 Milvus Lite 時遇到問題,可以點擊鏈接提交問題,https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmilvus-io%2Fmilvus-lite%2Fissues%2Fnew,當然也可以掃碼加入 Zilliz 技術交流羣,我們的專業工程師將全程在線,爲大家答疑解惑。

🌟注意!全託管 Milvus SaaS/PaaS 即將上線,由 Zilliz 原廠打造!覆蓋阿里雲、百度智能雲、騰訊雲、金山雲。目前已支持申請試用,企業用戶 PoC 申請或其他商務合作請聯繫 [email protected]


  • 如果在使用 Milvus 或 Zilliz 產品有任何問題,可添加小助手微信 “zilliz-tech” 加入交流羣。 ​
  • 歡迎關注微信公衆號“Zilliz”,瞭解最新資訊。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章