首頁>博客>周邊工具行業(yè)實踐>悅數(shù)圖數(shù)據(jù)庫 x 阿里云計算巢:打造云上超大規(guī)模圖數(shù)據(jù)庫
悅數(shù)圖數(shù)據(jù)庫 x 阿里云計算巢:打造云上超大規(guī)模圖數(shù)據(jù)庫
目前悅數(shù)圖數(shù)據(jù)庫已正式入駐阿里云計算巢,30 天免費試用活動限時開啟,,點擊鏈接 即可報名領取。
近年來,,圖數(shù)據(jù)庫的概念被越來越多的企業(yè)反復提及,。圖(Graph)是一種存儲實體,及實體之間關系的數(shù)據(jù)結(jié)構(gòu),,而圖數(shù)據(jù)庫(Graph Database)則是一個使用圖數(shù)據(jù)進行存儲,,同時使用圖結(jié)構(gòu)進行語義查詢的數(shù)據(jù)庫。
圖數(shù)據(jù)庫能夠高效地將關聯(lián)數(shù)據(jù)的實體作為頂點(vertex)存儲,,關系作為邊(edge)存儲,,并允許對這些點邊結(jié)構(gòu)進行高性能的檢索和查詢,也可以為這些點和邊添加屬性,。正因為具有這些特性,,才使得圖數(shù)據(jù)庫能夠以最接近直觀認知的形式存儲數(shù)據(jù),并且能夠?qū)⑦@些關系完美地呈現(xiàn)出來,。
圖數(shù)據(jù)庫的發(fā)展趨勢
為什么要使用圖數(shù)據(jù)庫,,而不是關系型數(shù)據(jù)庫?
關系型數(shù)據(jù)庫實現(xiàn)了快速的逐行訪問和數(shù)據(jù)一致性(ACID 事務),,但當數(shù)據(jù)規(guī)模變大且數(shù)據(jù)間關系變得復雜時,,使用關系模型檢索時需要多個表的屬性執(zhí)行連接操作,數(shù)據(jù)寫入時也需考慮外鍵約束,,從而導致較大的額外開銷,對性能有極高的要求。而圖數(shù)據(jù)庫則在處理復雜關系上有著天然優(yōu)勢,,尤其在海量數(shù)據(jù)多對多的復雜實體聯(lián)系場景中有著異常突出的表現(xiàn),主要體現(xiàn)在性能,、靈活性和敏捷性三個方面,。
- 關系數(shù)據(jù)庫 vs 圖數(shù)據(jù)庫(多跳查詢)
其次,圖數(shù)據(jù)庫是基于圖模型以一種直觀的方式存儲和展示這些關系,。因為是基于事物關系的模型表達,,圖因此也具有天然的可解釋性。
目前,,圖數(shù)據(jù)技術(shù)因其在處理海量關聯(lián)數(shù)據(jù)時的天然優(yōu)勢和符合人腦直觀印象的展示形式正被應用在多個行業(yè)的生產(chǎn)環(huán)境和業(yè)務實踐場景中,。例如,數(shù)據(jù)集成(知識圖譜),、個性化推薦,、欺詐與威脅檢測、風險分析與合規(guī),、身份(與控制權(quán))驗證,、IT 基礎 設施管理、供應鏈與物流,、社交網(wǎng)絡研究等,,甚至于 AI 機器學習、NLP(自然語言處理),、區(qū)塊鏈等新興技術(shù)領域,,你都可以看到圖數(shù)據(jù)技術(shù)的身影。
上云的趨勢在加速,,對于彈性能力提出更高要求
根據(jù) Gartner 的預計,,云服務一直保持較快的增速和滲透率。大量的商業(yè)軟件,,正在從 10 年前完全私有本地逐步轉(zhuǎn)向基于云服務的商業(yè)模式,。云服務的一大優(yōu)點是其提供了近乎無限的彈性能力,這也要求各種基于云基礎設施的軟件必須有更好的快速彈性擴縮容能力,。
在此背景下,,「悅數(shù)圖數(shù)據(jù)庫」作為國內(nèi)領先的企業(yè)級原生分布式圖數(shù)據(jù)庫近日已正式入駐阿里云計算巢,與阿里云一起幫助更多企業(yè)用戶更好地進行低成本,、高效率的云上圖數(shù)據(jù)庫部署,。
對于數(shù)據(jù)庫產(chǎn)品的用戶來說,底層基礎設施的穩(wěn)定性以及安全性至關重要,。阿里云是國內(nèi)領先的云計算提供商,擁有穩(wěn)定的基礎設施能力和安全性。此次「悅數(shù)圖數(shù)據(jù)庫」與阿里云計算巢的合作,,可以通過阿里云計算巢更高效地利用底層資源的彈性擴縮容以及便捷的服務編排等能力,,讓客戶可以更放心、更省心地使用基于云上的圖數(shù)據(jù)庫產(chǎn)品,。
什么是云原生圖數(shù)據(jù)庫,?
云原生,即云上內(nèi)生的云能力,,天然就“生于云,長于云”,,基于統(tǒng)一的架構(gòu)和云原生基礎設施,,實現(xiàn)多云/混合云解決方案,、邊云協(xié)同等能力,。云原生時代下,企業(yè)應用數(shù)據(jù)的方式發(fā)生了根本性變化,,即基于統(tǒng)一云基礎設施的云原生數(shù)據(jù)庫,、大數(shù)據(jù)解決方案,將成為企業(yè)數(shù)字化轉(zhuǎn)型的數(shù)據(jù)底座,。
傳統(tǒng)模式下,,企業(yè)采購硬件資源,數(shù)據(jù)庫部署在自建 IDC 并由企業(yè)監(jiān)管和運維,。企業(yè)的開發(fā)人員則采用 DevOps 模式或安排 IT 人員來管控數(shù)據(jù)庫,。接入業(yè)務后要時刻關注數(shù)據(jù)庫集群狀態(tài)來保障可用性,這對數(shù)據(jù)庫內(nèi)部實現(xiàn)不太了解的用戶來說是個巨大的挑戰(zhàn),。而云計算作為技術(shù)載體,,天然具備跨越時空的優(yōu)勢,云技術(shù)正在從單一的計算能力發(fā)展為體系化的創(chuàng)新,。對于企業(yè)來說,,“上云”是一個技術(shù)選擇、是企業(yè)數(shù)字化的起點,,而基于云構(gòu)建新的生產(chǎn)關系,,打造新的業(yè)務增長引擎則是一個戰(zhàn)略選擇。
「悅數(shù)圖數(shù)據(jù)庫」是一個可靠的分布式,、線性擴容,、性能高效的圖數(shù)據(jù)庫,其 Shared-Nothing 和存儲計算分離的底層架構(gòu)讓它具有了云原生的特征,,可以有效降低成本和彈性擴縮容,。而云端部署則屏蔽了數(shù)據(jù)庫部署,、性能調(diào)優(yōu)、運維等繁雜過程,,幾分鐘內(nèi)就可以在云上創(chuàng)建一個圖數(shù)據(jù)庫,,并快速擴展計算、存儲等資源,。
作為能夠容納海量關聯(lián)數(shù)據(jù)并進行毫秒級查詢延時的高性能圖數(shù)據(jù)庫產(chǎn)品,,悅數(shù)圖數(shù)據(jù)庫已經(jīng)被多家行業(yè)領先的科技和通信公司應用在反欺詐、風險控制,、社區(qū)發(fā)現(xiàn)等場景,其中某頭部互聯(lián)網(wǎng)公司的 NLP 團隊也基于悅數(shù)圖數(shù)據(jù)庫搭建了自己的圖數(shù)據(jù)庫平臺,,目前已經(jīng)有 60 多條業(yè)務線接入使用,,在智能助理、搜索召回等業(yè)務場景均已落地,。
- 「悅數(shù)圖數(shù)據(jù)庫」在阿里云上部署的架構(gòu)圖
在云上部署悅數(shù)圖數(shù)據(jù)庫有哪些好處?
開箱即用:快速部署更方便
由于云廠商提供了統(tǒng)一的基礎設施,,企業(yè)無需自行采購硬件,,還可以根據(jù)業(yè)務的靈活度和資源需求彈性調(diào)配云資源,實現(xiàn)快速上線,?;诎⒗镌朴嬎愠蔡峁┑?ROS(資源編排),悅數(shù)圖數(shù)據(jù)庫實現(xiàn)了云上自動化部署,,幾分鐘內(nèi)即可交付一個圖數(shù)據(jù)庫集群,,相比傳統(tǒng)以天、甚至以周為單位的交付周期,,有極大的提升,。
其次,悅數(shù)圖數(shù)據(jù)庫的計算巢版本支持包年包月與按量付費的靈活付費方式,,節(jié)省新購設備,、自建機房等一次性建設費用,當不再需要的時候可以及時銷毀,,顯著降低了研發(fā)成本,。為了進一步的優(yōu)化體驗,下一階段,,悅數(shù)圖數(shù)據(jù)庫還將結(jié)合自身在云上的優(yōu)化特性和測試結(jié)果,,陸續(xù)推出高性價比的云服務器規(guī)格套餐,讓用戶以更低的價格獲得更高的性能,,大家不妨也拭目以待一下,。
高可用性:數(shù)據(jù)備份更安心
架構(gòu)高可用
悅數(shù)圖數(shù)據(jù)庫的集群包含三類服務,,即 Query Service、Storage Service 和 Meta Service,。
1,、Meta Service 采用 Leader/Follower 架構(gòu)。Leader由集群中所有的 Meta Service節(jié)點選出,,然后對外提供服務,;Followers 處于待命狀態(tài),并從 Leader 復制更新的數(shù)據(jù),。一旦 Leader 節(jié)點 Down 掉,,會再選舉其中一個 Follower 成為新的 Leader。
2,、Query Service 對應的進程是 nebula-graphd ,,它由完全對等、無狀態(tài),、無關聯(lián)的計算節(jié)點組成,,計算節(jié)點之間相互無通信。
3,、Storage Service 采用 Shared-nothing 的分布式架構(gòu)設計,,共有三層,最底層是Store Engine,,它是一個單機版 Local Store Engine,,提供了對本地數(shù)據(jù)的get/put/scan/delete 操作,該層定義了數(shù)據(jù)操作接口,,用戶可以根據(jù)自己的需求定制開發(fā)相關 Local Store Plugin,。
在 Local Store Engine 之上是 Consensus 層,實現(xiàn)了 Multi Group Raft,,每一個 Partition 都對應了一組 Raft Group,。
數(shù)據(jù)可靠性
悅數(shù)圖數(shù)據(jù)庫的數(shù)據(jù)存儲使用阿里云的云盤產(chǎn)品。云盤是阿里云為云服務器 ECS 提供的數(shù)據(jù)塊級別的塊存儲產(chǎn)品,,具有低時延,、高性能、持久性,、高可靠等特點,。云盤采用分布式三副本機制,為 ECS 實例提供極高的數(shù)據(jù)可靠性保證,。
極致彈性:存算分離更可靠
悅數(shù)圖數(shù)據(jù)庫采用存儲與計算分離的架構(gòu),。存儲計算分離有諸多優(yōu)勢,最直接的優(yōu)勢就是,,計算層和存儲層可以根據(jù)各自的情況彈性擴容,、縮容,。存儲計算分離還帶來了另一個優(yōu)勢:使水平擴展成為可能,通過云上極致彈性能力,,保障自身擴縮容需要,。
悅數(shù)圖數(shù)據(jù)庫在集群部署時會創(chuàng)建兩個彈性伸縮組,一個對應Graph 服務,,另一個對應 Storage 服務,。為了更好的擴縮容體驗,我們做了以下考量:
- 將部分控制權(quán)交到用戶手里,。如果是 Graph 服務只需要將 ECS 資源按照目標數(shù)量彈性伸縮即可,,因為 Graph 本身是無狀態(tài)的;如果是 Storage 服務,,我們會在編排頁面提供一個控制開關,,用于彈性擴容后是否自動平衡數(shù)據(jù),因為在業(yè)務高峰期時數(shù)據(jù)搬遷會影響服務穩(wěn)定性,,所以何時去執(zhí)行 balance 操作可以由用戶自己來完成,部署的 Dashboard 工具也支持這個操作,。
- 安全保護策略,。大家都知道數(shù)據(jù)庫服務數(shù)據(jù)不丟失是第一要素,因此我們對 Storage 伸縮組啟用了刪除保護開關以防止用戶誤操作,,另外當用戶需要縮容時,,需要先在 Dashboard 界面找到對應伸縮組管理的 Storage 節(jié)點執(zhí)行數(shù)據(jù)分片移除操作,等到數(shù)據(jù)分片清空后才會接受彈性伸縮 lifecycle-hook 請求,。
除此之外,,阿里云的彈性擴縮容提供了豐富的伸縮規(guī)則與定時任務能力,用戶可以針對業(yè)務波動情況以及應用場景(OLTP 或者 OLAP)動態(tài)伸縮 Graph 節(jié)點,,針對CPU平均使用率彈性擴容 Storage 節(jié)點,。
安全可靠:角色身份可溯源
悅數(shù)圖數(shù)據(jù)庫支持嚴格的角色訪問控制和 LDAP(Lightweight Directory Access Protocol)等外部認證服務,,能夠有效提高數(shù)據(jù)安全性,。當客戶端連接到悅數(shù)圖數(shù)據(jù)庫(公有云)產(chǎn)品時,系統(tǒng)會創(chuàng)建一個會話,,會話中存儲連接的各種信息,,如果開啟了身份驗證,就會將會話映射到對應的用戶,。
同時,,悅數(shù)圖數(shù)據(jù)庫還內(nèi)置了角色權(quán)限,用戶可以把角色分配給創(chuàng)建的用戶,,從而實現(xiàn)訪問控制,。
如何在云上部署悅數(shù)圖數(shù)據(jù)庫 ?
目前,,悅數(shù)圖數(shù)據(jù)庫與阿里云計算巢正在開展限時免費試用活動,需要試用的用戶登錄到阿里云計算巢后,,先申請試用權(quán)限,,填寫信息審批通過后,就可以看到一個完全白屏化的服務創(chuàng)建頁面,。
在引導步驟里填寫必須的配置參數(shù),,一鍵提交后等待 5 分鐘左右即可體驗悅數(shù)圖數(shù)據(jù)庫的各種功能,大大降低了用戶部署數(shù)據(jù)庫的門檻,。
歡迎有興趣的小伙伴點擊此處跳轉(zhuǎn)阿里云計算巢官網(wǎng),,體驗云上超大規(guī)模的圖數(shù)據(jù)庫服務。