主权项 |
一种服务起源数据的融合存储方法,包括以下步骤:1)获得服务起源数据,所述服务起源数据规范为一个九元组: BasicProv(token,InvokingService,ServiceInvoked,location, elapsed time, timestamp, input, output, status);2)定义基于文档存储数据库的服务起源数据的存储模式,所述每个文档存储一个服务依赖关系对;服务依赖关系对(S1,S2)的文档存储了关于S1调用S2的所有记录;在每个文件中,有四个键‑值对,分别描述调用InvokingService、被调用ServiceInvoked、内容,调用发生的位置location;所述内容为一个子文档,用于描述(token,elapsed time, timestamp, input, output, status);3)定义基于图形数据库的服务起源数据的存储模式, 其中节点用于表示服务名,边表示连接的两个顶点之间的服务调用关系,节点属性描述服务名、地点和服务位置,用键‑值对存储;关系属性描述总共调用次数,最近一次的耗时,最近一次的调用时间和token,用键‑值对存储;4)读取服务起源日志,根据(InvokingService,ServiceInvoked)在文档存储数据库中查询相应的文档,如果存在该文档,则把详细信息写入到内容Content子文档;如果不存在,创建(InvokingService,ServiceInvoked)文档,然后把详细信息写入到key‑value对以及子文档中;5)按周期读取文档存储数据库中的文档(InvokingService,ServiceInvoked),插入到图形数据库中,建立起源图谱;6)根据文档存储数据库更新图形数据库的详细过程为,在内存中建立一个哈希表,每个元素存储服务名称,如果读取的(InvokingService,ServiceInvoked)不在哈希表中,新建元素,并且把该服务插入到图形数据库节点中;如果该服务已经存在哈希表中,则该服务依赖关系插入到图形数据库的关系中,读取该条记录的其他服务起源信息(服务起源9元组剩下的7元组信息),更新图形数据库的关系属性键‑值对。 |