為什么要從Redis社區(qū)版轉(zhuǎn)向Redis企業(yè)版?

Redis企業(yè)版(Redis Enterprise)是一個(gè)強(qiáng)大的基于內(nèi)存的NoSQL數(shù)據(jù)庫平臺(tái),它由開發(fā)開源Redis的原始團(tuán)隊(duì)建立。它保持了Redis的簡單性和高性能,同時(shí)增加了許多企業(yè)級(jí)的功能。為什么要從Redis開源版轉(zhuǎn)向Redis企業(yè)版?一起來看看吧!


1.?一流的大規(guī)模性能
充分利用基礎(chǔ)設(shè)施在任何架構(gòu)中都是一個(gè)持續(xù)的挑戰(zhàn),特別是隨著核心密度的增加時(shí)更是如此。
Redis企業(yè)版可以幫助企業(yè)從現(xiàn)在的多核基礎(chǔ)設(shè)施中獲得最大收益。
Redis企業(yè)版在獨(dú)特的無共享集群架構(gòu)的支持下,擁有無限的線性擴(kuò)展性,而不會(huì)在橫向擴(kuò)展架構(gòu)的過程中增加非線性開銷。
Redis企業(yè)版通過在每個(gè)計(jì)算節(jié)點(diǎn)上的多個(gè)內(nèi)核之間分配負(fù)載來充分利用現(xiàn)有的基礎(chǔ)設(shè)施,且在許多層面上的性能都得到了優(yōu)化,包括增強(qiáng)的連接管理、請求調(diào)度和高性能的Pipeline執(zhí)行,從而在所有數(shù)據(jù)類型和模型上提供亞毫秒級(jí)的性能。
Redis企業(yè)版的re-sharding和rebalancing能夠確保在最佳情況下使用基礎(chǔ)設(shè)施資源,同時(shí)提供卓越的應(yīng)用性能和大規(guī)模性。
2.?具有五個(gè)九(99.999%)的高可用性
如果不能及時(shí)從數(shù)據(jù)庫故障中恢復(fù),可能會(huì)導(dǎo)致數(shù)據(jù)丟失和數(shù)百萬次操作的失敗。Redis企業(yè)版提供不間斷的高可用性,對用戶完全透明,具有無盤復(fù)制、即時(shí)故障檢測和跨機(jī)架、跨區(qū)域和地域的秒級(jí)故障轉(zhuǎn)移。即使在集群更改操作期間(例如向集群添加新節(jié)點(diǎn)、升級(jí)軟件、重平衡和重分片數(shù)據(jù)),它也能提供高吞吐量和低延時(shí)。這種獨(dú)特的高可用性技術(shù)組合保證了四個(gè)九(99.99%)的正常運(yùn)行時(shí)間,在Active-Active部署中保證了五個(gè)九的高可用性(99.999%)。
3.?Active-Active地理分布
目前分布式部署越來越流行,然而同時(shí)在所有地理位置維護(hù)相同的數(shù)據(jù)集是非常具有挑戰(zhàn)性的,尤其是像Redis這樣的快速數(shù)據(jù)庫更是如此。Redis企業(yè)版為全球分布式數(shù)據(jù)庫提供Active-Active部署,實(shí)現(xiàn)了在多個(gè)地理位置上對同一數(shù)據(jù)集的同步讀寫操作。Redis企業(yè)版使用無沖突復(fù)制數(shù)據(jù)類型(CRDTs)技術(shù),可自動(dòng)解決寫入的沖突,而不改變應(yīng)用程序使用Redis的方式。它提供本地延遲,并為地理分布式應(yīng)用啟用防災(zāi)架構(gòu)。
4.?內(nèi)置的持久性
許多用戶認(rèn)為Redis是一種非持久性的數(shù)據(jù)存儲(chǔ),還有一些用戶在保持Redis性能的同時(shí),也在努力實(shí)現(xiàn)有效的持久性。其實(shí)Redis企業(yè)版是一個(gè)完全持久的數(shù)據(jù)庫,它在主分片和副本分片上提供多個(gè)持久性選項(xiàng),其增強(qiáng)型存儲(chǔ)引擎確保了高速的磁盤IOPS,從而不會(huì)影響Redis的性能,即使在寫入負(fù)載很重的情況下也是如此。在云環(huán)境中,Redis企業(yè)版將數(shù)據(jù)持久化到網(wǎng)絡(luò)附加存儲(chǔ) (NAS),可以改變本地實(shí)例存儲(chǔ)的臨時(shí)性,這使其成為云原生架構(gòu)的理想選擇。
5.?對內(nèi)存(DRAM、SSD、持久性內(nèi)存)的智能分層訪問
通常,因?yàn)?/span>DRAM昂貴的價(jià)格,大多數(shù)用戶只在Redis上部署小型工作負(fù)載,而將大型數(shù)據(jù)集保留在速度較慢但成本較低的存儲(chǔ)上。實(shí)際上,這大大限制了應(yīng)用程序的整體性能。Redis企業(yè)版通過結(jié)合DRAM、SSD(閃存)和持久性內(nèi)存(如英特爾??OptaneTM?DC),為托管大型數(shù)據(jù)集提供了經(jīng)濟(jì)高效的解決方案。Redis企業(yè)版使用一種創(chuàng)新的分層方法,將頻繁訪問的熱數(shù)據(jù)放在內(nèi)存中,將較冷的數(shù)據(jù)放在閃存或持久性內(nèi)存中,閃存上的Redis提供類似于DRAM上的高性能,同時(shí)可以節(jié)省高達(dá)70%的基礎(chǔ)設(shè)施成本。
6.?備份、集群恢復(fù)和災(zāi)難恢復(fù)
在云原生環(huán)境中發(fā)生重大故障的概率越來越大,這就需要強(qiáng)大的備份、集群恢復(fù)和災(zāi)難恢復(fù)機(jī)制。Redis企業(yè)版提供了以上全套功能,從而防止數(shù)據(jù)丟失,并能夠在災(zāi)難發(fā)生時(shí)快速恢復(fù)。Redis企業(yè)版可以在所有的數(shù)據(jù)庫分片上及時(shí)并一致的創(chuàng)建備份。它通過從配置文件中從頭開始重建集群,保持相同的端點(diǎn)和數(shù)據(jù)庫配置,實(shí)現(xiàn)快速的自動(dòng)集群恢復(fù)。然后,備份文件被直接傳輸?shù)椒制诘募汗?jié)點(diǎn),隨后以最優(yōu)的方式并行加載數(shù)據(jù)。即時(shí)災(zāi)難恢復(fù)通過雙活部署實(shí)現(xiàn),允許在任何時(shí)候?qū)γ總€(gè)副本進(jìn)行讀寫,并由沖突解決機(jī)制(無沖突復(fù)制數(shù)據(jù)類型,或CRDTs)提供支持。
7.?多層安全性和合規(guī)性
企業(yè)需要強(qiáng)大的安全性和合規(guī)性保障。Redis企業(yè)版確保生產(chǎn)數(shù)據(jù)與管理訪問隔離,并為基于角色的訪問控制、認(rèn)證、授權(quán)和加密(傳輸中的數(shù)據(jù)和靜態(tài)數(shù)據(jù))提供多層安全性。它保護(hù)部署免受Redis緩沖區(qū)溢出的影響,實(shí)施CPU節(jié)流,阻止Lua腳本訪問主機(jī),并防止其他漏洞以提高可靠性。Redis企業(yè)版符合SOC2和HIPAA標(biāo)準(zhǔn)。Redis企業(yè)版通過實(shí)施基于角色的訪問控制(RBAC)層擴(kuò)展了Redis 6.X的本機(jī)訪問控制列表(ACL),從而能夠通過一組集中管理的用戶角色來控制對數(shù)據(jù)和命令的訪問。RBAC降低了安全審計(jì)中的復(fù)雜性,并從整體上簡化了用戶管理。
8.?靈活的部署方式(云、本地、混合)
Redis企業(yè)版可以部署在任何云平臺(tái)、本地,以及多云或混合架構(gòu)中。它也可以在Kubernetes上使用,并作為Tanzu Kubernetes Grid Integrated Edition (PKS)、Google Kubernetes Engine (GKE)和RedHat OpenShift等平臺(tái)上的原生服務(wù)。通過利用Active-Active技術(shù),Redis企業(yè)版可以順利地將應(yīng)用遷移到云中,或在云之間遷移,同時(shí)避免痛苦的中斷過程。
9.?帶有專用引擎的多種數(shù)據(jù)模型
現(xiàn)代數(shù)據(jù)庫被期望提供多種數(shù)據(jù)建模選項(xiàng)。但是,它們中的大多數(shù)都是通過API適配來實(shí)現(xiàn),并改變底層引擎,這可能會(huì)影響到處理跨多個(gè)數(shù)據(jù)模型請求時(shí)的性能和延遲。Redis企業(yè)版擴(kuò)展了Redis的功能,在單一數(shù)據(jù)庫平臺(tái)中支持多種數(shù)據(jù)類型和模型,其包括RediSearch、RedisJSON、RedisGraph、RedisTimeSeries、RedisBloom和RedisAI等模塊。每個(gè)模塊都是從頭開始設(shè)計(jì)的,具有優(yōu)化的引擎和專門構(gòu)建的數(shù)據(jù)結(jié)構(gòu),以提供一流的性能。Redis企業(yè)版為多模型操作引入了一個(gè)獨(dú)特的架構(gòu),包括:(1)直接的模塊間集成,能夠在圖上執(zhí)行搜索等操作;(2)跨模塊和Redis核心的單一數(shù)據(jù)集副本,從而消除了存儲(chǔ)多個(gè)數(shù)據(jù)副本的需要以及與memcpy操作相關(guān)的開銷;(3)RedisGears,一個(gè)無服務(wù)器的數(shù)據(jù)庫內(nèi)置引擎,支持跨模塊和Redis核心的同步(基于事務(wù))和異步(基于觸發(fā))操作,具有亞毫秒級(jí)延遲。
10.?RedisGears:Redis的無服務(wù)器引擎
RedisGears是Redis的無服務(wù)器引擎,它在Redis內(nèi)部運(yùn)行,更靠近數(shù)據(jù)所在的位置,允許以完全可編程的方式在分片、節(jié)點(diǎn)、數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)模型之間進(jìn)行任何集群范圍的操作,速度達(dá)到亞毫秒級(jí)。通過使用Python以及即將推出的Java、Scala和其他JVM語言,可以對Gears進(jìn)行編程,從而達(dá)到:?(1) 支持高級(jí)緩存用例,例如后寫/直寫;(2) 以可靠的方式控制事件驅(qū)動(dòng)處理;(3) 集群范圍的實(shí)時(shí)數(shù)據(jù)分析;(4) 編排AI服務(wù)。
11.?自動(dòng)化以及專業(yè)支持
使用定義明確的SLA保持Redis正常運(yùn)行是十分重要的,尤其在大批量生產(chǎn)環(huán)境中更是如此。Redis企業(yè)版提供了日常Redis數(shù)據(jù)庫操作的完全自動(dòng)化,包括重新分片、分片遷移和設(shè)置自動(dòng)平衡觸發(fā)器等,而不會(huì)影響應(yīng)用程序的正常運(yùn)行。此外,它還提供了對重要Redis指標(biāo)(如吞吐量、性能和利用率)的深入可見性。同時(shí),開發(fā)Redis企業(yè)版和社區(qū)版的同一個(gè)團(tuán)隊(duì)將會(huì)為您的所有問題提供全天候的專業(yè)支持。
虹科云科技,主要分享云計(jì)算、數(shù)據(jù)庫、商業(yè)智能、數(shù)據(jù)可視化、高性能計(jì)算等相關(guān)知識(shí)、產(chǎn)品信息、應(yīng)用案例及行業(yè)信息,為學(xué)習(xí)者傳輸前沿知識(shí)、為技術(shù)工程師解答專業(yè)問題、為企業(yè)找到最適合的云解決方案!