Redis 的締造者 Salvatore Sanfilippo 近日向 Redis 專案提交了一份拉取請求,引入了一種全新的資料型別——陣列。這一新型別伴隨著 18 個專用命令一同到來,包括 ARCOUNT、ARDEL、ARDELRANGE、ARGET、ARGETRANGE、ARGREP、ARINFO、ARINSERT、ARLASTITEMS、ARLEN、ARMGET、ARMSET、ARNEXT、AROP、ARRING、ARSCAN、ARSEEK 和 ARSET。目前該實現位於一個獨立分支中,尚未合併到主版本。
為了便於開發者提前體驗這些新命令,知名開發者 Simon Willison 藉助 Claude Code for web 構建了一個名為 Redis Array Playground 的互動式工具。這個工具將 Redis 的一個子集編譯為 WebAssembly(WASM),使其能夠在瀏覽器中直接執行,從而讓使用者無需搭建本地環境即可嘗試所有新的陣列操作。
在所有新增命令中,最吸引人的當屬 ARGREP。它允許使用者在陣列內對指定範圍的值執行伺服器端的 grep 搜尋,其正規表示式能力來自於新整合的 TRE 庫。TRE 是一個高效能、支援近似匹配的正規表示式庫,這一整合使得 Redis 的陣列查詢功能變得極為強大。
Sanfilippo 在個人部落格上發表了題為《Redis array type: short story of a long development》的文章,詳細披露了該陣列型別的開發歷程。值得注意的是,整個開發過程大量採用了 AI 輔助程式設計技術,這反映了現代開源專案中人工智慧角色的演變。
這一新資料型別預計將顯著擴充套件 Redis 的應用場景,特別是在需要複雜資料結構的快取、訊息佇列和即時分析等領域。隨著最終版本的釋出,Redis 使用者將能夠利用原生的陣列操作來簡化程式碼並提升效能。