网络依赖关系图
ACME 的网络清单
以下查询生成一个数据表,该表提供 ACME 网络基础设施的快速概述。
MATCH (n)
RETURN labels(n)[0] as type,
count(*) as count,
collect(n.host) as names
查找所有公共网站的直接依赖项
以下查询查询数据模型以查找 ACME 面向公众互联网的所有业务 Web 应用程序。
MATCH (website)-[:DEPENDS_ON]->(downstream)
WHERE website.system = "INTERNET"
RETURN website.host as Host,
collect(downstream.host) as Dependencies
ORDER BY Host
查找所有内部网站的直接依赖项
以下查询查询数据模型以查找 ACME 私有内联网上的所有业务网站。
MATCH (website)-[:DEPENDS_ON]->(downstream)
WHERE website.system = "INTRANET"
RETURN website.host as Host,
collect(downstream.host) as Dependencies
ORDER BY Host
查找依赖性最强的组件
以下查询查找 ACME 网络基础设施中依赖性最强的组件。正如预期的那样,依赖性最强的组件是 SAN(存储区域网络)。
MATCH (n)<-[:DEPENDS_ON*]-(dependent)
RETURN n.host as Host,
count(DISTINCT dependent) AS Dependents
ORDER BY Dependents DESC
LIMIT 1
查找业务关键组件的依赖链:CRM
以下查询查找 ACME CRM 应用程序从左到右的依赖组件路径。如果 ACME 的 CRM(客户关系管理)应用程序出现故障,将对其业务造成重大影响。如果 CRM 主机名右侧的任何一个组件出现故障,CRM 应用程序将失败。
MATCH (dependency)<-[:DEPENDS_ON*]-(dependent)
WITH dependency, count(DISTINCT dependent) AS Dependents
ORDER BY Dependents DESC
LIMIT 1
WITH dependency
MATCH p=(resource)-[:DEPENDS_ON*]->(dependency)
WHERE resource.system = "CRM"
RETURN "[" + head(nodes(p)).host + "]" +
reduce(s = "", n in tail(nodes(p)) | s + " -> " + "[" + n.host + "]") as Chain
查找业务关键组件的依赖链:ERP
以下查询查找 ACME 的 ERP(企业资源规划)应用程序从左到右的依赖组件路径。ERP 应用程序代表一系列业务资源,专门用于支持 ACME 的持续业务活动,包括财务和供应链管理。如果 ACME 的 ERP 应用程序出现故障,将对其业务造成重大影响。如果 ERP 主机名右侧的任何一个组件出现故障,则 ERP 应用程序将失败。此故障将导致收入损失,因为 ACME 的业务依赖此系统开展业务。
MATCH (dependency)<-[:DEPENDS_ON*]-(dependent)
WITH dependency, count(DISTINCT dependent) AS Dependents
ORDER BY Dependents DESC
LIMIT 1
WITH dependency
MATCH p=(resource)-[:DEPENDS_ON*]->(dependency)
WHERE resource.system = "ERP"
RETURN "[" + head(nodes(p)).host + "]" +
reduce(s = "", n in tail(nodes(p)) | s + " -> " + "[" + n.host + "]") as Chain
查找业务关键组件的依赖链:数据仓库
以下查询查找 ACME 的 DW(数据仓库)应用程序从左到右的依赖组件路径。DW 应用程序代表一系列业务智能资源,专门用于支持 ACME 的时间敏感分析流程。如果 ACME 的 DW 应用程序出现故障,将对 ACME 的技术方面业务运营造成重大影响。如果 DW 主机名右侧的任何一个组件出现故障,则 DW 应用程序将失败。此故障将导致像电子商务应用程序这样的面向公众的网站无法反映 ACME ERP 应用程序的最新可用数据。
MATCH (dependency)<-[:DEPENDS_ON*]-(dependent)
WITH dependency, count(DISTINCT dependent) AS Dependents
ORDER BY Dependents DESC
LIMIT 1
WITH dependency
MATCH p=(resource)-[:DEPENDS_ON*]->(dependency)
WHERE resource.system = "DW"
RETURN "[" + head(nodes(p)).host + "]" +
reduce(s = "", n in tail(nodes(p)) | s + " -> " + "[" + n.host + "]") as Chain
查找移除网络组件的影响:硬件服务器
以下查询查找依赖于 ACME 的 HARDWARE-SERVER-3 的应用程序。如果网络管理员想要计划对服务器进行干预,他必须知道哪些应用程序会受到影响。这样他就可以警告应用程序用户。
MATCH (application:Application)-[:DEPENDS_ON*]->(server)
WHERE server.host = "HARDWARE-SERVER-3"
RETURN application.type as Type,
application.host as Host
此页面是否有帮助?