CN104598223A - 一种网络建模语言解析方法及装置 - Google Patents
一种网络建模语言解析方法及装置 Download PDFInfo
- Publication number
- CN104598223A CN104598223A CN201410842362.5A CN201410842362A CN104598223A CN 104598223 A CN104598223 A CN 104598223A CN 201410842362 A CN201410842362 A CN 201410842362A CN 104598223 A CN104598223 A CN 104598223A
- Authority
- CN
- China
- Prior art keywords
- statement
- mapping
- network modelling
- data base
- analytics engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
本发明实施例提供一种网络建模语言解析方法及装置,所述方法包括:解析引擎获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;所述解析引擎确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;如果预置数据库中保存有第一映射,所述解析引擎从所述第一映射中获取所述解析实例。与传统解析方案相比,有助于提高解析网络建模语句的效率,进而缩短网络对用户的响应时间,提高网络响应操作的速度。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种网络建模语言解析方法及装置。
背景技术
随着信息技术的不断发展,网络已成为越来越多应用系统的基本组成部分,支持服务端和客户端之间的各种应用需求。面对复杂的网络技术,为了降低应用开发者描述网络需求、应用需求、运维网络等方面的难度,目前对网络建模语言的研究越来越深入。
网络建模语言以一种更接近自然语言的网络元语,定义网络资源需求、控制网络行为、获取网络信息等操作动作,方便应用开发者使用。通常,在网络建模语言的使用过程中,需要解析并识别应用开发者输入的网络建模语句。举例来说,应用开发者需要配置软件定义网络(英文:Software DefinedNetwork,简称:SDN)中的转发设备A的转发行为,可通过网络建模语句来描述该操作动作。对应于此,网络建模语言解析引擎获得应用开发者输入的网络建模语句,可解析其表示的含义,获得针对转发设备A的解析实例,并对解析实例进行处理后,通过SDN中的控制器实现对转发设备A转发行为的配置。
由上述过程可知,解析引擎的解析效率直接制约着网络响应应用开发者操作的速度,如果解析效率高,则网络响应操作速度快,反之网络响应操作的速度就慢。
发明内容
本发明实施例的网络建模语言解析方法及装置,有助于提高网络建模语言解析引擎的解析效率。
为此,本发明实施例提供如下技术方案:
第一方面,提供了一种网络建模语言解析方法,所述方法包括:
解析引擎获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;
所述解析引擎确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;
如果预置数据库中保存有第一映射,所述解析引擎从所述第一映射中获取所述解析实例。
结合第一方面,在第一方面的第一种可能的实现方式中,所述解析引擎确定预置数据库中是否保存有第一映射,包括:
所述解析引擎利用所述网络建模语句,计算当前索引值;
所述解析引擎确定所述预置数据库中是否保存有所述当前索引值;
如果所述预置数据库中保存有所述当前索引值,所述解析引擎获得所述当前索引值对应的至少一条映射;
所述解析引擎利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述计算当前索引值之前,所述方法还包括:所述解析引擎对所述网络建模语句进行预处理,
所述预处理包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。
结合第一方面或第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述解析引擎从所述第一映射中获取所述解析实例之前,所述方法还包括:
所述解析引擎确定所述用户是否具有获得所述解析实例的权限;
如果所述用户具有获得所述解析实例的权限,所述解析引擎再执行所述获取解析实例。
结合第一方面或第一方面的第一种至第三种中的任一种可能的实现方式,在第一方面的第四种可能的实现方式中,如果预置数据库中未保存第一映射,所述方法还包括:
所述解析引擎解析所述网络建模语句,获得所述解析实例;
所述解析引擎利用所述网络建模语句和所述解析实例,获得所述第一映射;
所述解析引擎将所述第一映射保存至所述预置数据库。
第二方面,提供了一种网络建模语言解析装置,所述装置包括:
获得单元,用于获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;
第一确定单元,用于确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;
获取单元,用于在所述第一确定单元确定预置数据库中保存有第一映射时,从所述第一映射中获取所述解析实例。
结合第二方面,在第二方面的第一种可能的实现方式中,所述第一确定单元包括:
计算单元,用于利用所述网络建模语句,计算当前索引值;
第一确定子单元,用于确定所述预置数据库中是否保存有所述当前索引值;
映射获得单元,用于在所述预置数据库中保存有所述当前索引值时,获得所述当前索引值对应的至少一条映射;
第二确定子单元,用于利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述装置还包括:
预处理单元,用于在所述计算单元计算所述当前索引值之前,对所述网络建模语句进行预处理,
所述预处理包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。
结合第二方面或第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述装置还包括:
第二确定单元,用于在所述获取单元从所述第一映射中获取所述解析实例之前,确定所述用户是否具有获得所述解析实例的权限;
所述获取单元,具体用于在所述第二确定单元确定所述用户具有获得所述解析实例的权限时,从所述第一映射中获取所述解析实例。
结合第二方面或第二方面的第一种至第三种中的任一种可能的实现方式,在第二方面的第四种可能的实现方式中,如果预置数据库中未保存第一映射,所述装置还包括:
解析单元,用于解析所述网络建模语句,获得所述解析实例;
保存单元,用于利用所述网络建模语句和所述解析实例,获得所述第一映射,并将所述第一映射保存至所述预置数据库。
第三方面,提供了一种网络建模语言解析的设备,所述设备包括:处理器和存储器;
所述存储器,用于存储程序指令和数据;
所述处理器,用于读取所述存储器中存储的程序指令和数据,执行以下操作:
所述处理器获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;
所述处理器确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;
如果预置数据库中保存有第一映射,所述处理器从所述第一映射中获取所述解析实例。
结合第三方面,在第三方面的第一种可能的实现方式中,所述处理器确定预置数据库中是否保存有第一映射,包括:
所述处理器利用所述网络建模语句,计算当前索引值;
所述处理器确定所述预置数据库中是否保存有所述当前索引值;
如果所述预置数据库中保存有所述当前索引值,所述处理器获得所述当前索引值对应的至少一条映射;
所述处理器利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述计算当前索引值之前,所述处理器还执行以下操作:所述处理器对所述网络建模语句进行预处理,
所述预处理包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。
结合第三方面或第三方面的第一种或第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述处理器从所述第一映射中获取所述解析实例之前,所述处理器还执行以下操作:
所述处理器确定所述用户是否具有获得所述解析实例的权限;
如果所述用户具有获得所述解析实例的权限,所述处理器再执行所述获取解析实例。
结合第三方面或第三方面的第一种至第三种中的任一种可能的实现方式,在第三方面的第四种可能的实现方式中,如果预置数据库中未保存第一映射,所述处理器还执行以下操作:
所述处理器解析所述网络建模语句,获得所述解析实例;
所述处理器利用所述网络建模语句和所述解析实例,获得所述第一映射;
所述处理器将所述第一映射保存至所述预置数据库。
本发明实施例网络建模语言解析方法及装置,解析引擎接收到用户输入的网络建模语句,以查询预置数据库的方式,从预置数据库已保存的映射中,获得该网络建模语句对应的解析实例。与传统解析方案相比,有助于提高解析网络建模语句的效率,进而缩短网络对用户的响应时间,提高网络响应操作的速度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其它的附图。
图1是本发明实施例网络建模语言解析方法的流程图;
图2是本发明实施例中预置数据库的一种示意图;
图3是本发明实施例中预置数据库的另一种示意图;
图4是本发明实施例网络建模语言解析装置的示意图;
图5是本发明实施例网络建模语言解析设备的硬件构成示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。
参见图1,示出了本发明实施例网络建模语言解析方法的流程图,可包括:
101,解析引擎获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作。
在需要控制网络进行某种操作动作时,用户可通过网络建模语句来描述所述操作动作。举例来说,操作动作可以为定义网络资源需求,对应于此,网络建模语句描述的就是网络资源需求;或者,操作动作可以为控制网络转发行为,对应于此,网络建模语句描述的可以是转发行为;或者,操作动作可以为获取网络信息,对应于此,网络建模语句描述的可以是信息获取请求,等等,本发明实施例对网络建模语句所针对的操作动作可不做具体限定。
解析引擎接收到用户输入的网络建模语句,即可被触发执行下文102和103所示的动作,如此便可提高解析网络建模语句的效率,进而缩短网络对用户的响应时间,提高网络响应操作的速度。
102,所述解析引擎确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系。
103,如果预置数据库中保存有第一映射,所述解析引擎从所述第一映射中获取所述解析实例。
本发明实施例中,解析引擎可通过预置数据库的方式,预先保存网络建模语句与解析实例之间的映射关系。如此,解析引擎获得用户输入的网络建模语句后,并不直接进行语言解析,而是先查询预置数据库,判断其中是否已保存有第一映射,即,预置数据库中是否已保存网络建模语句对应的解析实例,如果已保存,解析引擎便可直接从预置数据库中读取所述解析实例。相对目前需要对网络建模语句进行实时解析的传统方案来说,有助于提高解析效率。
举例来说,预置数据库可以为解析引擎中的一块指定内存,即,解析引擎可以通过读取内存的方式查询所述第一映射。或者,预置数据库也可以为解析引擎保存的一张映射表,即,解析引擎可以通过调用映射表的方式查询所述第一映射。本发明实施例对预置数据库的具体表现形式、解析引擎查询第一映射的方式等可不做具体限定。
举例来说,预置数据库可以保存指定用户提交过的网络建模语句的映射;或者,预置数据库也可以保存所有用户提交过的网络建模语句的映射。具体地,用户提交多的网络建模语句可以为用户提交的常用网络建模语句,或者,可以为用户提交的所有网络建模语句。本发明实施例对预置数据库保存哪些网络建模语句的映射可不做具体限定。作为一种示例,可参见图2所示示意图,其中,网络建模语句1为:node r1type router logicnw ln1property a:a,b:b,c:c,对应的解析实例为nodeinstance1,作为一种示例,nodeinstance1可具体体现为如下Java类实例:
举例来说,本发明实施例中,所述解析引擎确定预置数据库中是否保存有第一映射,可包括:所述解析引擎利用所述网络建模语句,计算当前索引值;所述解析引擎确定所述预置数据库中是否保存有所述当前索引值;如果所述预置数据库中保存有所述当前索引值,所述解析引擎确定获得所述当前索引值对应的至少一条映射;所述解析引擎利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
作为一种示例,预置数据库中的网络建模语句可以其自身对应的哈希值,作为该网络建模语句的索引值,便于解析引擎从预置数据库中查询网络建模语句的映射。
举例来说,解析引擎可利用如下公式,计算网络建模语句对应的当前索引值HashCode1,HashCode(s)=s[0]*31^(n-1)+s[1]*31^(n-2)+...+s[n-1],其中,s[i]表示网络建模语句s中第i个字符的ASCII码。
可选地,上文利用网络建模语句的哈希值作为索引值的方式,可能存在一个索引值对应多条网络建模语句的情况,也即,一个索引值可能会对应多条映射,为了从所述多条映射中正确的确定出第一映射,解析引擎还可以网络建模语句为基础,逐个比对网络建模语句包括的每个字符,以此判断所述多条映射中是否包括第一映射。
本发明实施例中,除了可按照上文所举示例,利用网络建模语句中的每个字符来计算哈希值之外,还可利用网络建模语句中的指定字符来计算哈希值。其中,指定字符可以为位于奇数位置上的字符,或者指定字符可以为位于偶数位置上的字符,或者指定字符还可为位于其它指定位置上的字符,本发明实施例对此可不做具体限定。
可选地,如果用户输入的网络建模语句符合标准规定,则解析引擎可直接按照上文介绍的方式计算当前索引值;如果用户输入的网络建模语句不符合标准规定,本发明实施例在计算当前索引值之前,解析引擎还可先对用户输入的网络建模语句进行预处理,获得符合标准规定的网络建模语句后,再计算当前索引值。如此,有助于提高本发明实施例查询第一映射的准确性。举例来说,本发明实施例中预处理可以包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。结合上文利用网络建模语句计算索引值的方案可知,本发明实施例进行预处理是为了保证相应位置上的字符转化为相应的ASCII码,避免相同网络建模语句,因空白字符、大小写、字符顺序等原因导致计算出的索引值不同。需要说明的是,本发明实施例中,所述指定顺序可以为建模语句包括的属性之间的顺序,如上文所举网络建模语句1,属性可以为node id、node type、logicnw id、property,指定顺序可以限定这些属性之间的顺序。或者,所述指定顺序可以为属性包括的参数之间的顺序,如上文所举网络建模语句1,属性property包括的参数可以为a:a、b:b、c:c,指定顺序可以限定这些参数之间的顺序。本发明实施例对所述指定顺序可不做具体限定。
可选地,解析引擎从第一映射中获得解析实例之前,解析引擎还可做如下处理:所述解析引擎确定所述用户是否具有获得所述解析实例的权限;如果所述用户具有获得所述解析实例的权限,所述解析引擎再执行所述获取解析实例。也就是说,只有在用户具有获得解析实例权限的情况下,解析引擎才响应用户,获取用户输入的网络建模语句对应的解析实例。举例来说,确定用户是否具有解析实例的权限,可体现为:确定用户是否为注册的合法用户,和/或,确定用户是否为网络建模语句涉及的对象的合法操作者,其中,网络建模语句涉及的对象可以为解析实例,或者也可以为与解析实例相关的其它实例。举例来说,用户A向解析引擎输入上文所举示例中的网络建模语句1,若用户A为注册的合法用户,且用户A可操作的对象为Node s1,如此,解析引擎可确定用户A不具有获得网络建模语句1的解析实例的权限,故,即使预置数据库中保存有网络建模语句1的映射,解析引擎亦不会获取解析实例nodeinstance1。或者,举例来说,用户A针对Node s1,通过网络建模语句配置Node s1与Node r1之间的转发行为,对应于此,只有用户A为注册的合法用户,且Node s1和Node r1均为用户A的可操作对象时,解析引擎才可确定用户A具有获得解析实例的权限。
可选地,如果预置数据库中未保存第一映射,解析引擎还可做如下处理:所述解析引擎解析所述网络建模语句,获得所述解析实例;所述解析引擎利用所述网络建模语句和所述解析实例,获得所述第一映射;所述解析引擎将所述第一映射保存至所述预置数据库。也就是说,如果预置数据库中未保存网络建模语句的映射,解析引擎可按照传统方案解析网络建模语句的含义,获得网络建模语句对应的解析实例。如此,解析引擎一方面可以对解析实例进行后续处理并通过控制器操控网络;一方面还可以计算网络建模语句对应的索引值,并建立索引值、网络建模语句与解析实例三者之间的映射,保存至预置数据库,以便下次解析该网络建模语句时使用,有助于提高后续过程的解析效率。
举例来说,用户输入了如下网络建模语句:
网络建模语句1:Node r1Type router LogicNW ln1Property B:b,A:a,C:c;
网络建模语句2:node h1type host Logicnw ln1Property f:f,G:g;
若指定格式为小写,指定顺序为a:a,b:b,c:c,则可将网络建模语句1进行预处理为node r1type router logicnw ln1property a:a,b:b,c:c,计算得到索引值hashcode1。若指定格式为小写,指定顺序为f:f,g:g,则可将网络建模语句2进行预处理为node h1type host logicnw ln1property f:f,g:g,计算得到索引值hashcode3。解析引擎保存有图2所示预置数据库,利用hashcode1查询预置数据库可知,解析引擎保存有网络建模语句1的映射,可直接获得解析实例nodeinstance1;同时,利用hashcode3查询预置数据库可知,解析引擎未保存网络建模语句2的映射,可进行语句解析获得解析实例nodeinstance3,并更新预置数据库,保存索引值hashcode3、网络建模语句2与解析实例nodeinstance3三者的映射,更新后的预置数据库可参见图3所示示意图。
与图1所示方法相对应地,本发明实施例还提供了一种网络建模语言解析装置,参见图4所示示意图,所述装置可包括:
获得单元201,用于获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;
第一确定单元202,用于确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;
获取单元203,用于在所述第一确定单元确定预置数据库中保存有第一映射时,从所述第一映射中获取所述解析实例。
可选地,所述第一确定单元包括:
计算单元,用于利用所述网络建模语句,计算当前索引值;
第一确定子单元,用于确定所述预置数据库中是否保存有所述当前索引值;
映射获得单元,用于在所述预置数据库中保存有所述当前索引值时,获得所述当前索引值对应的至少一条映射;
第二确定子单元,用于利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
可选地,所述装置还包括:
预处理单元,用于在所述计算单元计算所述当前索引值之前,对所述网络建模语句进行预处理,
所述预处理包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。
可选地,所述装置还包括:
第二确定单元,用于在所述获取单元从所述第一映射中获取所述解析实例之前,确定所述用户是否具有获得所述解析实例的权限;
所述获取单元,具体用于在所述第二确定单元确定所述用户具有获得所述解析实例的权限时,从所述第一映射中获取所述解析实例。
可选地,如果预置数据库中未保存第一映射,所述装置还包括:
解析单元,用于解析所述网络建模语句,获得所述解析实例;
保存单元,用于利用所述网络建模语句和所述解析实例,获得所述第一映射,并将所述第一映射保存至所述预置数据库。
在上述可选方案中,本发明实施例网络建模语言解析装置可以实现的附加功能,请参照方法实施例中对解析引擎附加功能的描述,这里不再赘述。
另外,上述实施例提供的网络建模语言解析装置在解析网络建模语句时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
与图1所示方法相对应地,本发明实施例还提供了一种网络建模语言解析设备300,参见图5所示示意图,所述设备可包括:处理器301、存储器302、网络接口303、总线系统304。
所述总线系统304,用于连接上述处理器301、存储器302和网络接口303。
所述网络接口303,用于实现设备与其它网络设备之间的通信连接。所述网络接口303可以由光收发器,电收发器,无线收发器或其任意组合实现。例如,光收发器可以是小封装可插拔(英文:small form-factor pluggabletransceiver,缩写:SFP)收发器(英文:transceiver),增强小封装可插拔(英文:enhanced small form-factor pluggable,缩写:SFP+)收发器或10吉比特小封装可插拔(英文:10Gigabit small form-factor pluggable,缩写:XFP)收发器。电收发器可以是以太网(英文:Ethernet)网络接口控制器(英文:networkinterface controller,缩写:NIC)。无线收发器可以是无线网络接口控制器(英文:wireless network interface controller,缩写:WNIC)。
所述存储器302,用于存储程序指令和数据。所述存储器302可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-accessmemory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatilememory),例如快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器还可以包括上述种类的存储器的组合。
所述处理器301是中央处理器(英文:central processing unit,缩写:CPU),也可以是CPU和硬件芯片的组合。上述硬件芯片可以是以下一种或多种的组合:专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD)以及网络处理器(英文:network processor,缩写:NP)。所述处理器301,用于读取所述存储器302中存储的程序指令和数据,执行以下操作:
所述处理器获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;
所述处理器确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;
如果预置数据库中保存有第一映射,所述处理器从所述第一映射中获取所述解析实例。
可选地,所述处理器确定预置数据库中是否保存有第一映射,包括:
所述处理器利用所述网络建模语句,计算当前索引值;
所述处理器确定所述预置数据库中是否保存有所述当前索引值;
如果所述预置数据库中保存有所述当前索引值,所述处理器获得所述当前索引值对应的至少一条映射;
所述处理器利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
可选地,所述计算当前索引值之前,所述处理器还可执行如下操作:
所述处理器对所述网络建模语句进行预处理,所述预处理包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。
可选地,所述处理器从所述第一映射中获取所述解析实例之前,所述处理器还可执行如下操作:
所述处理器确定所述用户是否具有获得所述解析实例的权限;
如果所述用户具有获得所述解析实例的权限,所述处理器再执行所述获取解析实例。
可选地,如果预置数据库中未保存第一映射,所述处理器还可执行如下操作:
所述处理器解析所述网络建模语句,获得所述解析实例;
所述处理器利用所述网络建模语句和所述解析实例,获得所述第一映射;
所述处理器将所述第一映射保存至所述预置数据库。
图5所示的网络建模语言解析设备的实现细节,请参考前面附图1所示的方法实施例中的描述,此处不再赘述。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,简称:ROM)、RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备)执行本发明各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置及设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本发明的可选实施方式,并非用于限定本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种网络建模语言解析方法,其特征在于,所述方法包括:
解析引擎获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;
所述解析引擎确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;
如果预置数据库中保存有第一映射,所述解析引擎从所述第一映射中获取所述解析实例。
2.根据权利要求1所述的方法,其特征在于,所述解析引擎确定预置数据库中是否保存有第一映射,包括:
所述解析引擎利用所述网络建模语句,计算当前索引值;
所述解析引擎确定所述预置数据库中是否保存有所述当前索引值;
如果所述预置数据库中保存有所述当前索引值,所述解析引擎获得所述当前索引值对应的至少一条映射;
所述解析引擎利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
3.根据权利要求2所述的方法,其特征在于,所述计算当前索引值之前,所述方法还包括:所述解析引擎对所述网络建模语句进行预处理,
所述预处理包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述解析引擎从所述第一映射中获取所述解析实例之前,所述方法还包括:
所述解析引擎确定所述用户是否具有获得所述解析实例的权限;
如果所述用户具有获得所述解析实例的权限,所述解析引擎再执行所述获取解析实例。
5.根据权利要求1至4任一项所述的方法,其特征在于,如果预置数据库中未保存第一映射,所述方法还包括:
所述解析引擎解析所述网络建模语句,获得所述解析实例;
所述解析引擎利用所述网络建模语句和所述解析实例,获得所述第一映射;
所述解析引擎将所述第一映射保存至所述预置数据库。
6.一种网络建模语言解析装置,其特征在于,所述装置包括:
获得单元,用于获得用户输入的网络建模语句,所述网络建模语句用于表示针对网络的操作动作;
第一确定单元,用于确定预置数据库中是否保存有第一映射,所述第一映射用于表示所述网络建模语句与解析实例之间的对应关系;
获取单元,用于在所述第一确定单元确定预置数据库中保存有第一映射时,从所述第一映射中获取所述解析实例。
7.根据权利要求6所述的装置,其特征在于,所述第一确定单元包括:
计算单元,用于利用所述网络建模语句,计算当前索引值;
第一确定子单元,用于确定所述预置数据库中是否保存有所述当前索引值;
映射获得单元,用于在所述预置数据库中保存有所述当前索引值时,获得所述当前索引值对应的至少一条映射;
第二确定子单元,用于利用所述网络建模语句,比对所述至少一条映射,确定所述至少一条映射中是否包括所述第一映射。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
预处理单元,用于在所述计算单元计算所述当前索引值之前,对所述网络建模语句进行预处理,
所述预处理包括:消除所述网络建模语句首尾的空白字符、将所述网络建模语句中的连续空白字符替换为单个空白字符、将所述网络建模语句中的字符调整为指定顺序、将所述网络建模语句中的字符修改为指定格式,所述指定格式为大写或小写。
9.根据权利要求6至8任一项所述的装置,其特征在于,所述装置还包括:
第二确定单元,用于在所述获取单元从所述第一映射中获取所述解析实例之前,确定所述用户是否具有获得所述解析实例的权限;
所述获取单元,具体用于在所述第二确定单元确定所述用户具有获得所述解析实例的权限时,从所述第一映射中获取所述解析实例。
10.根据权利要求6至9任一项所述的装置,其特征在于,如果预置数据库中未保存第一映射,所述装置还包括:
解析单元,用于解析所述网络建模语句,获得所述解析实例;
保存单元,用于利用所述网络建模语句和所述解析实例,获得所述第一映射,并将所述第一映射保存至所述预置数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410842362.5A CN104598223B (zh) | 2014-12-30 | 2014-12-30 | 一种网络建模语言解析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410842362.5A CN104598223B (zh) | 2014-12-30 | 2014-12-30 | 一种网络建模语言解析方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104598223A true CN104598223A (zh) | 2015-05-06 |
CN104598223B CN104598223B (zh) | 2018-10-30 |
Family
ID=53124043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410842362.5A Expired - Fee Related CN104598223B (zh) | 2014-12-30 | 2014-12-30 | 一种网络建模语言解析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104598223B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739484A (zh) * | 2018-12-28 | 2019-05-10 | 北京神州绿盟信息安全科技股份有限公司 | 一种资产关系模型构建系统、方法及存储介质 |
CN113312378A (zh) * | 2021-07-28 | 2021-08-27 | 阿里云计算有限公司 | 建模方法、组件、设备、存储介质和数据仓库创建系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093513A (zh) * | 2007-08-14 | 2007-12-26 | 金蝶软件(中国)有限公司 | 一种用于解决计算机软件多语言支持问题的方法和系统 |
CN101192171A (zh) * | 2006-11-29 | 2008-06-04 | 国际商业机器公司 | 用于将单语言程序变换为多语言程序的方法和系统 |
US20110035435A1 (en) * | 2009-08-10 | 2011-02-10 | Nec (China) Co., Ltd. | Method and system for converting desktop application to web application |
-
2014
- 2014-12-30 CN CN201410842362.5A patent/CN104598223B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192171A (zh) * | 2006-11-29 | 2008-06-04 | 国际商业机器公司 | 用于将单语言程序变换为多语言程序的方法和系统 |
CN101093513A (zh) * | 2007-08-14 | 2007-12-26 | 金蝶软件(中国)有限公司 | 一种用于解决计算机软件多语言支持问题的方法和系统 |
US20110035435A1 (en) * | 2009-08-10 | 2011-02-10 | Nec (China) Co., Ltd. | Method and system for converting desktop application to web application |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739484A (zh) * | 2018-12-28 | 2019-05-10 | 北京神州绿盟信息安全科技股份有限公司 | 一种资产关系模型构建系统、方法及存储介质 |
CN109739484B (zh) * | 2018-12-28 | 2022-04-05 | 绿盟科技集团股份有限公司 | 一种资产关系模型构建系统、方法及存储介质 |
CN113312378A (zh) * | 2021-07-28 | 2021-08-27 | 阿里云计算有限公司 | 建模方法、组件、设备、存储介质和数据仓库创建系统 |
CN113312378B (zh) * | 2021-07-28 | 2022-02-01 | 阿里云计算有限公司 | 建模方法、组件、设备、存储介质和数据仓库创建系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104598223B (zh) | 2018-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6626211B2 (ja) | ショートリンクを処理する方法及び装置並びにショートリンクサーバ | |
US9798774B1 (en) | Graph data search method and apparatus | |
CN108287894B (zh) | 数据处理方法、装置、计算设备及存储介质 | |
WO2018212880A1 (en) | Impersonating target account via account redirection | |
CN111950225A (zh) | 一种芯片布局方法、装置、存储介质和电子设备 | |
US10325091B2 (en) | Generation of secure passwords in real-time using personal data | |
WO2020134010A1 (zh) | 对图像关键点提取模型的训练及图像关键点提取 | |
CN108334515A (zh) | 一种处理崩溃文件中堆栈地址的方法、装置及系统 | |
CN107480260B (zh) | 大数据实时分析方法、装置、计算设备及计算机存储介质 | |
US10901976B2 (en) | Method and apparatus for determining SQL execution plan | |
US20170212679A1 (en) | Oblivious parallel random access machine system and methods | |
CN109582886B (zh) | 页面内容提取方法、模板的生成方法及装置、介质及设备 | |
CN110784336A (zh) | 基于物联网的多设备智能定时延时场景设置方法及系统 | |
JP2022512211A (ja) | 画像処理方法、装置、車載演算プラットフォーム、電子機器及びシステム | |
CN104598223A (zh) | 一种网络建模语言解析方法及装置 | |
CN111368860A (zh) | 重定位方法及终端设备 | |
WO2018006696A1 (zh) | 均衡板卡内存利用率的板卡、方法和系统 | |
US11023627B2 (en) | Modeling and cooperative simulation of systems with interdependent discrete and continuous elements | |
US10445080B2 (en) | Methods for adaptive placement of applications and devices thereof | |
US20160187231A1 (en) | Performance testing method, performance testing apparatus performing the same and storage medium storing the same | |
CN110417777A (zh) | 一种优化的微服务间通信的方法及装置 | |
JP2019008799A (ja) | ソースアプリケーションからのソースデータをターゲットアプリケーションのターゲットデータへとマージするためのシステムおよび方法 | |
US11604877B1 (en) | Nested courses of action to support incident response in an information technology environment | |
CN117194388B (zh) | 数据管理方法、装置、电子设备及存储介质 | |
JP6453685B2 (ja) | 演算制御装置、演算制御方法及び演算制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181030 Termination date: 20201230 |