Neo4j宣布推出企业级图资料库(Graph Database)云端服务Neo4j Aura Enterprise,近一步推进图无所不在(Graphs Are Everywhere)的目标。Neo4j Aura建构于云端架构之上,提供自动化操作和管理功能,目前已经在Google云端正式推出,而且也开始在AWS上的早期存取计画,供AWS用户嚐鲜。
Neo4j Aura让用户不需要自己运作DBMS,就可以使用图资料库,Neo4j提到,Neo4j Aura所提供的自我监控以及自我修复架构,是建立于Kubernetes以及Neo4j的因果丛集技术之上。Kubernetes是标準容器调度系统,能够可靠且高效率地执行应用程式,跨伺服器分配程序,确保所有程序都获得需要的资源,并且在需要的时候还能重新启动程序,以自动修复故障。
Kubernetes内建各种演算法来更新正在执行的应用程式,但Neo4j提到,由于他们对安全更新有複杂的需求,因此无法使用内建演算法,而是利用Kubernetes可插拔设计,建置了一个Operator,使用自己的更新逻辑,但同时仍可以应用Kubernetes提供的所有功能。
Neo4j Aura使用的另外一个重要技术则是因果丛集(Causal Clustering),因果丛集是Neo4j的Raft共识演算法实作,可以让伺服器丛集互相协作,在出现错误时仍可以一致地储存资料。每个Neo4j Aura资料库均分散在三台位于不同资料中心的伺服器上,即便任何一台伺服器,甚至是整个资料中心故障,仍可以保证资料安全性以及服务可用性,因果丛集和Neo4j储存紧密结合在一起,让资料库之上的应用程式,感觉不到底层的故障。
因果丛集技术还被应用在资料库升级、安全修补和按需扩展资料库上,让这些操作都不需要停机,Neo4j设计的Kubernetes Operator,会谨慎地调度资源来更新资料库丛集,官方提到,用户甚至不需要考虑这些问题,而且当系统遇到超过可负载的流量时,资料库也会重新调整大小,避免服务中断。
Neo4j Aura仰赖公有云供应商的基础设施,所提供的安全性和弹性,官方提到,Neo4j Aura用户的资料都是端到端加密,除了传输使用加密协定,在后台也使用云端供应商内建的机制,对所有资料进行静态加密,并且隔离在专用虚拟网路中。