AI時代下的Redis
譯文【51CTO.com快譯】
關系數據庫仍然是世界上使用最廣泛的數據庫類別,但多年來其人氣趨勢線一直平平。同時,其他云原生數據庫系統類型卻日益崛起。這在各種版本的NoSQL數據庫系統中尤為明顯,比如文檔存儲數據庫(MongoDB)、鍵值數據庫(Redis)和寬列數據庫(Cassandra)。
來自DB-Engines的下圖清楚地表明了這個趨勢:
NoSQL數據庫系統如此迅猛增長的部分原因在于它們與人工智能(AI)和機器學習(ML)等所謂的“大數據”兼容。由于NoSQL數據庫的結構性不如關系數據庫,所以它們更靈活,可以更好地擴展——對于需要由AI和ML系統常常實時處理的大量數據而言這是兩個重要的屬性。
為了更好地了解為什么NoSQL現在如此流行、這些系統如何處理AI和ML,我與最流行的NoSQL數據庫公司之一Redis Labs的創始人進行了交談。Yiftach Shoolman自2011年以來一直擔任該公司的CTO,最近帶領手下發布了Redis Labs的新模塊RedisAI。
Shoolman告訴我:“我認為,今天人們以更開放的心態看待新的數據模型。”他說,企業關注關系數據庫的替代技術主要出于兩個動機。第一個是可擴展性,第二個是關系數據庫不直接支持應用程序所需的數據模型時。后者的一個例子是電子商務網站上的實時推薦,這需要能夠將大量不同數據快速連接在一起的數據庫(這方面的一個選擇是Graph DBMS產品,比如Neo4j)。
Redis是一種鍵值數據庫系統,這意味著它存儲鍵值對,但與Neo4j一樣,它也針對實時Web進行了優化。實際上,它是為實時Web發明的。Salvatore Sanfilippo早在2009年開始開發Redis時,那是由于他當時在開發一個實時分析引擎,但是借助關系數據庫很難擴展。于是,他做了任何聰明的開發人員都會做的事情:自行構建解決方案。這就變成了開源Redis,現在它是全球人氣指數排名第八的數據庫(鍵值數據庫中人氣最高)。
Redis有內存數據結構,這意味著它使用隨機存取存儲器(RAM)存儲數據。這使其比傳統數據庫快得多,還非常適合用作緩存系統。這就是Redis有別于關系數據庫及NoSQL競爭對手(比如MongoDB和Cassandra)的地方。據Shoolman聲稱,由于內存結構,Redis“對實時應用進行了非常優化的設計,延遲時間不到1毫秒。”
內存結構的缺點之一是,它根本沒有與其他數據庫系統同樣的容量,對于AI而言更是如此。鑒于AI可處理你饋送給它的大量數據,這可能是個大問題。查詢數據也不是一樣容易,查詢數據是Oracle和MySQL等關系數據庫以及CockroachDB等新興的云原生SQL數據庫的優勢。
雖然Shoolman承認Redis“在許多情況下仍被用作緩存系統”,但他說Redis Labs公司的目標是幫助企業“將其更多地用作緩存”。該公司主要通過Redis Enterprise來做到這一點,這是基于開源Redis數據庫而建的商業平臺。
Redis Labs通過模塊將Redis的核心功能擴展為一個完整的“數據庫平臺”,RedisAI是其中一種模塊。RedisAI是Redis Labs與AI軟件專家Tenserwerk共同開發的,讓您能夠跨Redis數據庫運行AI推理引擎。
Shoolman透露的一個關鍵點是,RedisAI模塊不會訓練您的數據——為此您需要TensorFlow或PyTorch之類的工具(這是兩個用于機器學習的開源平臺)。RedisAI出現在應用程序層,是時候將邏輯運用于數據(推理)、然后將數據提供給用戶了。
Shoolman解釋說:“我們認為您需要在云端某個地方訓練[AI]模型。一旦您要進行服務或推理,Redis是適合執行該操作的數據庫。”
Shoolman以信用卡交易的交易評分為例。最終,系統必須決定交易是成功還是失敗。 Shoolman說:“為了做到這一點,您需要添加用戶資料、商家資料、教育資料和有效的交易數據本身,然后對所有內容進行向量化處理,并發送給AI。”
RedisAI是AI軟件和數據之間的一種渠道。而速度最關鍵,至少對Redis而言是如此。 當然,準確性部分也很關鍵,但這大概是AI訓練平臺的責任。
據Shoolman聲稱,企業前進道路上的主要挑戰之一是它們是想堅持使用關系數據庫的傳統孤立方法,還是想采用依托一個后端支持多個數據模型的多模型方法。Redis Enterprise是后者的一個例子,它的每個模塊都支持不同的數據模型。
Shoolman說,這取決于您想要實現的目標。與多模型方法相比,有些事情是關系數據庫根本做不到的。
Shoolman說:“如果你考慮需要合并多個數據模型的事務,并仍從事毫秒級延遲的操作,根本無法用孤立方法來做到。”
原文標題:Redis in the Age of AI,作者:Richard MacManus
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】