本發(fā)明涉及大數(shù)據(jù)提取統(tǒng)計領(lǐng)域,尤其涉及一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計方法及系統(tǒng)。
背景技術(shù):
常用的大數(shù)據(jù)分析組件,比如hive(一種數(shù)據(jù)倉庫工具),對模型的要求是需要統(tǒng)計的字段必須是單獨列。但現(xiàn)實需求中,數(shù)據(jù)在業(yè)務(wù)方面也是存在特定要求的,需要是半結(jié)構(gòu)化的數(shù)據(jù)模型模式。既要滿足業(yè)務(wù)需要又要滿足統(tǒng)計需求,在同一個模型中并存就存在很大的沖突。因此一般分析組件是把業(yè)務(wù)數(shù)據(jù)單獨加載到特定的數(shù)據(jù)倉庫中去處理。這樣實際上就導致了數(shù)據(jù)冗余。在同一個模型(半結(jié)構(gòu)化)的基礎(chǔ)下,也可以開發(fā)獨立的提取統(tǒng)計工具進行處理。但整個過程繁瑣,需要經(jīng)過配置(不同業(yè)務(wù)場景)、執(zhí)行和查看等流程,不能像sql查詢那樣執(zhí)行命令后自動化處理,同時在執(zhí)行過程和運行結(jié)果的可視化方面也存在缺陷。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的不足,提供一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計方法及系統(tǒng),目的在于針對半結(jié)構(gòu)化的大數(shù)據(jù)操作提供一套完整工具,實現(xiàn)對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計命令操作和結(jié)果處理,可以使業(yè)務(wù)和分析場景使用統(tǒng)一模型,減少數(shù)據(jù)冗余,業(yè)務(wù)數(shù)據(jù)分析的運維和操作更簡便可靠,提高可維護性和自動化可視化水平。
本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:
一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計方法,包括以下步驟:
s1,客戶端接收用戶輸入針對半結(jié)構(gòu)化大數(shù)據(jù)進行提取和統(tǒng)計的操作語句,并將所述操作語句同步到解析轉(zhuǎn)換模塊進行處理;
s2,解析轉(zhuǎn)換模塊接收所述操作語句,對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則;
s3,客戶端調(diào)用應(yīng)用引擎模塊根據(jù)所述配置規(guī)則生成作業(yè)任務(wù),將作業(yè)任務(wù)提交到底層框架進行處理;
s4,底層框架將作業(yè)任務(wù)拆分成多個子任務(wù)分配到集群上執(zhí)行,并將執(zhí)行后獲取的結(jié)果數(shù)據(jù)返回給客戶端進行展示。
本發(fā)明的有益效果是:借助客戶端結(jié)合底層框架和集群,輔以處理流程,實現(xiàn)對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計命令操作和結(jié)果處理,從而提高可維護性和自動化可視化水平;針對半結(jié)構(gòu)化的大數(shù)據(jù)操作提供一套完整方法,可以使業(yè)務(wù)和分析場景使用統(tǒng)一模型,減少數(shù)據(jù)冗余,業(yè)務(wù)數(shù)據(jù)分析的運維和操作更簡便可靠。
在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進:
進一步,所述s2還包括:所述解析轉(zhuǎn)換模塊對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,向客戶端發(fā)送操作語句轉(zhuǎn)換完成的消息;
所述s3還包括:客戶端接收所述s2中解析轉(zhuǎn)換模塊發(fā)送的操作語句轉(zhuǎn)換完成的消息,在接收到所述轉(zhuǎn)換完成的消息后調(diào)用應(yīng)用引擎模塊,根據(jù)所述配置規(guī)則生成作業(yè)任務(wù)。
采用上述進一步方案的有益效果是:通過消息模式使客戶端簡單方便的判斷操作語句轉(zhuǎn)換成配置規(guī)則是否已經(jīng)完成,節(jié)約系統(tǒng)資源,使客戶端能在準確的時機調(diào)用應(yīng)用引擎模塊。
進一步,所述方法還包括步驟s5,s5包括:根據(jù)用戶的選擇將本次獲取的結(jié)果數(shù)據(jù)備份到集群中。
采用上述進一步方案的有益效果是:備份結(jié)果數(shù)據(jù)使歷史統(tǒng)計結(jié)果可重用,避免重復獲取,提高了運行效率。
進一步,所述s1還包括:客戶端在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊前,先判斷操作語句是否執(zhí)行過、執(zhí)行后獲取的結(jié)果數(shù)據(jù)是否進行過備份以及該結(jié)果數(shù)據(jù)是否為靜態(tài)數(shù)據(jù),若均為是,則直接使用上次執(zhí)行操作語句后獲取的結(jié)果數(shù)據(jù)的備份,若至少有一項為否,則將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊。
采用上述進一步方案的有益效果是:對于上次執(zhí)行過的針對靜態(tài)數(shù)據(jù)的操作語句,可以直接調(diào)用上次備份過的結(jié)果數(shù)據(jù),避免重復獲取,提高了獲取和展示結(jié)果數(shù)據(jù)的速度。
進一步,所述s2還包括:解析轉(zhuǎn)換模塊在對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,將該操作語句以及對應(yīng)的配置規(guī)則進行備份,在下次接收到客戶端同步過來的相同的操作語句時,不進行解析并直接使用備份中對應(yīng)的配置規(guī)則。
采用上述進一步方案的有益效果是:對相同的操作語句,解析轉(zhuǎn)換模塊只進行一次解析,然后將解析后轉(zhuǎn)換成的配置規(guī)則進行備份,下次接收到同樣的操作語句只需要在備份中獲取對應(yīng)的配置規(guī)則,不要再次進行解析轉(zhuǎn)換的過程,節(jié)約了占用的資源和運行時間,提高了整體效率。
一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計系統(tǒng),所述系統(tǒng)包括:
客戶端模塊,用于用于接收用戶輸入的針對半結(jié)構(gòu)化大數(shù)據(jù)進行提取和統(tǒng)計的操作語句,并將所述操作語句同步到解析轉(zhuǎn)換模塊,在解析轉(zhuǎn)換模塊完成對操作語句的解析轉(zhuǎn)換后調(diào)用應(yīng)用引擎模塊獲取結(jié)果數(shù)據(jù),在應(yīng)用引擎模塊獲取結(jié)果數(shù)據(jù)完成后將獲取的結(jié)果數(shù)據(jù)進行展示;
解析轉(zhuǎn)換模塊,用于接收所述操作語句,對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則;
應(yīng)用引擎模塊,用于接收到客戶端模塊的調(diào)用后,根據(jù)解析轉(zhuǎn)換模塊產(chǎn)生的配置規(guī)則生成作業(yè)任務(wù),將作業(yè)任務(wù)提交到底層框架模塊進行處理并獲取底層框架模塊返回的結(jié)果數(shù)據(jù),將獲取到的結(jié)果數(shù)據(jù)返回給客戶端模塊;
底層框架模塊,用于將應(yīng)用引擎模塊提交的作業(yè)任務(wù)拆分成多個子任務(wù)分配到集群上執(zhí)行,并將執(zhí)行獲得的結(jié)果數(shù)據(jù)返回給應(yīng)用引擎模塊。
本發(fā)明的有益效果是:借助客戶端模塊、解析轉(zhuǎn)換模塊和應(yīng)用引擎模塊,結(jié)合底層框架和集群,輔以處理流程,實現(xiàn)對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計命令操作和結(jié)果處理,從而提高可維護性和自動化可視化水平;針對半結(jié)構(gòu)化的大數(shù)據(jù)操作提供一套完整系統(tǒng),可以使業(yè)務(wù)和分析場景使用統(tǒng)一模型,減少數(shù)據(jù)冗余,業(yè)務(wù)數(shù)據(jù)分析的運維和操作更簡便可靠。
在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進:
進一步,所述客戶端模塊還用于接收所述解析處理模塊發(fā)送的操作語句轉(zhuǎn)換完成的消息,在接收到所述轉(zhuǎn)換完成的消息后調(diào)用所述應(yīng)用引擎模塊,所述應(yīng)用引擎模塊根據(jù)所述配置規(guī)則生成作業(yè)任務(wù);
所述解析轉(zhuǎn)換模塊還用于在對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,向客戶端模塊發(fā)送操作語句轉(zhuǎn)換完成的消息。
采用上述進一步方案的有益效果是:通過消息模式使客戶端模塊簡單方便的判斷操作語句轉(zhuǎn)換成配置規(guī)則是否已經(jīng)完成,節(jié)約系統(tǒng)資源,使客戶端模塊能在準確的時機調(diào)用應(yīng)用引擎模塊。
進一步,所述客戶端模塊還用于根據(jù)用戶的選擇將本次獲取的結(jié)果數(shù)據(jù)備份到集群中。
采用上述進一步方案的有益效果是:備份結(jié)果數(shù)據(jù)使歷史統(tǒng)計結(jié)果可重用,避免重復獲取,提高了系統(tǒng)的運行效率。
進一步,所述客戶端模塊在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊前,先判斷操作語句是否執(zhí)行過、執(zhí)行后獲取的結(jié)果數(shù)據(jù)是否進行過備份以及該結(jié)果數(shù)據(jù)是否為靜態(tài)數(shù)據(jù),若均為是,則直接使用上次執(zhí)行操作語句后獲取的結(jié)果數(shù)據(jù)的備份,若至少有一項為否,則將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊。
采用上述進一步方案的有益效果是:對于上次執(zhí)行過的針對靜態(tài)數(shù)據(jù)的操作語句,可以直接調(diào)用上次備份過的結(jié)果數(shù)據(jù),避免重復獲取,提高了獲取和展示結(jié)果數(shù)據(jù)的速度。
進一步,所述解析轉(zhuǎn)換模塊還用于所述解析轉(zhuǎn)換模塊還用于在對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,將該操作語句以及對應(yīng)的配置規(guī)則進行備份,在下次接收到客戶端模塊同步過來的相同的操作語句時,不進行解析并直接使用備份中對應(yīng)的配置規(guī)則。
采用上述進一步方案的有益效果是:對相同的操作語句,解析轉(zhuǎn)換模塊只進行一次解析,然后將解析后轉(zhuǎn)換成的配置規(guī)則進行備份,下次接收到同樣的操作語句只需要在備份中獲取對應(yīng)的配置規(guī)則,不要再次進行解析轉(zhuǎn)換的過程,節(jié)約了系統(tǒng)資源和運行時間,提高了系統(tǒng)效率。
附圖說明
圖1為本發(fā)明實施例1中一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計方法的流程圖;
圖2為本發(fā)明實施例2中一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計系統(tǒng)的框圖。
具體實施方式
以下結(jié)合附圖對本發(fā)明的原理和特征進行描述,所舉實例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
實施例1
如圖1所示,一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計方法,包括以下步驟:
s1,客戶端接收用戶輸入針對半結(jié)構(gòu)化大數(shù)據(jù)進行提取和統(tǒng)計的操作語句,并將所述操作語句同步到解析轉(zhuǎn)換模塊進行處理;
s2,解析轉(zhuǎn)換模塊接收所述操作語句,對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則;
s3,客戶端調(diào)用應(yīng)用引擎模塊根據(jù)所述配置規(guī)則生成作業(yè)任務(wù),將作業(yè)任務(wù)提交到底層框架進行處理;
s4,底層框架將作業(yè)任務(wù)拆分成多個子任務(wù)分配到集群上執(zhí)行,并將執(zhí)行后獲取的結(jié)果數(shù)據(jù)返回給客戶端進行展示。
具體的,客戶端負責用戶交互,用戶先登錄客戶端,客戶端自動展示客戶端的版本和支持的命令列表等信息。輸入幫助命令,可以展示各類型語句(即操作語句,sql執(zhí)行語句)的用法。
整個方法基于hadoop平臺(hadoop是一個由apache基金會所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)),hadoop平臺做為源數(shù)據(jù)和結(jié)果數(shù)據(jù)的實際物理存儲而存在,其中用來保存源數(shù)據(jù)和結(jié)果數(shù)據(jù)的是hdfs(即hadoop分布式文件系統(tǒng))和hbase(一種基于hadoop平臺的非關(guān)系型數(shù)據(jù)庫),hadoop平臺同時也提供分布式協(xié)調(diào)服務(wù)。應(yīng)用引擎模塊(包括查詢引擎和統(tǒng)計引擎)負責根據(jù)解析轉(zhuǎn)換后的配置規(guī)則生成作業(yè),提交到y(tǒng)arn(yetanotherresourcenegotiator,另一種資源協(xié)調(diào)者,即是一種資源管理和作業(yè)調(diào)度/監(jiān)控的工具)上執(zhí)行,產(chǎn)生結(jié)果數(shù)據(jù)。其中底層框架基于hadoop平臺中的mr2.0框架(mapreduce2.0,一種軟件架構(gòu),用于大規(guī)模數(shù)據(jù)集的并行運算,字面含義為:映射與歸納),應(yīng)用引擎模塊是基于mr2.0框架的應(yīng)用,應(yīng)用引擎模塊提交的作業(yè)任務(wù)是mapreduce作業(yè),由底層框架中基于hadoop平臺的yarn進行管理,拆分成多個子任務(wù)在hadoop集群中運行。
客戶端獲取的結(jié)果數(shù)據(jù)給用戶時,如果結(jié)果數(shù)據(jù)量超過閥值,則只展示部分,并提供命令在解析轉(zhuǎn)換模塊查看。
本發(fā)明借助客戶端結(jié)合底層框架和集群,輔以處理流程,實現(xiàn)對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計命令操作和結(jié)果處理,從而提高可維護性和自動化可視化水平;針對半結(jié)構(gòu)化的大數(shù)據(jù)操作提供一套完整方法,可以使業(yè)務(wù)和分析場景使用統(tǒng)一模型,減少數(shù)據(jù)冗余,業(yè)務(wù)數(shù)據(jù)分析的運維和操作更簡便可靠。
進一步,所述s2還包括:所述解析轉(zhuǎn)換模塊對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,向客戶端發(fā)送操作語句轉(zhuǎn)換完成的消息;
所述s3還包括:客戶端接收所述s2中解析轉(zhuǎn)換模塊發(fā)送的操作語句轉(zhuǎn)換完成的消息,在接收到所述轉(zhuǎn)換完成的消息后調(diào)用應(yīng)用引擎模塊,根據(jù)所述配置規(guī)則生成作業(yè)任務(wù)。
具體的,客戶端在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊后,等待并判斷是否成功完成解析轉(zhuǎn)換處理(即是否收到解析轉(zhuǎn)換模塊發(fā)送的操作語句轉(zhuǎn)換完成的消息),成功完成解析轉(zhuǎn)換處理后調(diào)用相應(yīng)的應(yīng)用引擎模塊獲取結(jié)果數(shù)據(jù)。
該改進中,通過消息模式使客戶端簡單方便的判斷操作語句轉(zhuǎn)換成配置規(guī)則是否已經(jīng)完成,節(jié)約系統(tǒng)資源,使客戶端能在準確的時機調(diào)用應(yīng)用引擎模塊。
進一步,還包括步驟s5,s5包括:根據(jù)用戶的選擇將本次獲取的結(jié)果數(shù)據(jù)備份到集群中。
具體的,客戶端在將獲取的結(jié)果數(shù)據(jù)展示給用戶時,提供界面供用戶輸入命令,讓用戶確認是否備份結(jié)果數(shù)據(jù),并根據(jù)用戶的選擇完成本次操作。
該改進中,備份結(jié)果數(shù)據(jù)使歷史統(tǒng)計結(jié)果可重用,避免重復獲取,提高了運行效率。
進一步,所述s1還包括:客戶端在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊前,先判斷操作語句是否執(zhí)行過、執(zhí)行后獲取的結(jié)果數(shù)據(jù)是否進行過備份以及該結(jié)果數(shù)據(jù)是否為靜態(tài)數(shù)據(jù),若均為是,則直接使用上次執(zhí)行操作語句后獲取的結(jié)果數(shù)據(jù)的備份,若至少有一項為否,則將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊。
具體的,客戶端在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊前,判斷發(fā)現(xiàn)操作語句以前執(zhí)行過、用戶對相應(yīng)的結(jié)果數(shù)據(jù)進行過備份并且相應(yīng)的結(jié)果數(shù)據(jù)是靜態(tài)數(shù)據(jù),則直接使用上次運行后備份的結(jié)果數(shù)據(jù),避免重復。
該改進中,對于上次執(zhí)行過的針對靜態(tài)數(shù)據(jù)的操作語句,可以直接調(diào)用上次備份過的結(jié)果數(shù)據(jù),避免重復獲取,提高了獲取和展示結(jié)果數(shù)據(jù)的速度。
進一步,所述s2還包括:解析轉(zhuǎn)換模塊在對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,將該操作語句以及對應(yīng)的配置規(guī)則進行備份,在下次接收到客戶端同步過來的相同的操作語句時,不進行解析并直接使用備份中對應(yīng)的配置規(guī)則。
該改進中,對相同的操作語句,解析轉(zhuǎn)換模塊只進行一次解析,然后將解析后轉(zhuǎn)換成的配置規(guī)則進行備份,下次接收到同樣的操作語句只需要在備份中獲取對應(yīng)的配置規(guī)則,不要再次進行解析轉(zhuǎn)換的過程,節(jié)約了占用的資源和運行時間,提高了整體效率。
實施例2
如圖2所示,一種針對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計系統(tǒng),包括:
客戶端模塊,用于接收用戶輸入的針對半結(jié)構(gòu)化大數(shù)據(jù)進行提取和統(tǒng)計的操作語句,并將所述操作語句同步到解析轉(zhuǎn)換模塊,在解析轉(zhuǎn)換模塊完成對操作語句的解析轉(zhuǎn)換后調(diào)用應(yīng)用引擎模塊獲取結(jié)果數(shù)據(jù),在應(yīng)用引擎模塊獲取結(jié)果數(shù)據(jù)完成后將獲取的結(jié)果數(shù)據(jù)進行展示;
解析轉(zhuǎn)換模塊,用于接收所述操作語句,對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則;
應(yīng)用引擎模塊,用于接收到客戶端模塊的調(diào)用后,根據(jù)解析轉(zhuǎn)換模塊產(chǎn)生的配置規(guī)則生成作業(yè)任務(wù),將作業(yè)任務(wù)提交到底層框架模塊進行處理并獲取底層框架模塊返回的結(jié)果數(shù)據(jù),將獲取到的結(jié)果數(shù)據(jù)返回給客戶端模塊;
底層框架模塊,用于將應(yīng)用引擎模塊提交的作業(yè)任務(wù)拆分成多個子任務(wù)分配到集群上執(zhí)行,并將執(zhí)行獲得的結(jié)果數(shù)據(jù)返回給應(yīng)用引擎模塊。
具體的,客戶端模塊負責用戶交互,用戶先登錄客戶端模塊,客戶端模塊自動展示客戶端的版本和支持的命令列表等信息。輸入幫助命令,可以展示各類型語句(即操作語句,sql執(zhí)行語句)的用法。
整個系統(tǒng)運行在hadoop平臺上(hadoop是一個由apache基金會所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)),hadoop平臺做為源數(shù)據(jù)和結(jié)果數(shù)據(jù)的實際物理存儲而存在,其中用來保存源數(shù)據(jù)和結(jié)果數(shù)據(jù)的是hdfs(即hadoop分布式文件系統(tǒng))和hbase(一種基于hadoop平臺的非關(guān)系型數(shù)據(jù)庫),hadoop平臺同時也提供分布式協(xié)調(diào)服務(wù)。應(yīng)用引擎模塊(包括查詢引擎和統(tǒng)計引擎)負責根據(jù)解析轉(zhuǎn)換后的配置規(guī)則生成作業(yè),提交到y(tǒng)arn(yetanotherresourcenegotiator,另一種資源協(xié)調(diào)者,即是一種資源管理和作業(yè)調(diào)度/監(jiān)控的工具)上執(zhí)行,產(chǎn)生結(jié)果數(shù)據(jù)。其中底層框架模塊是基于hadoop平臺中的mr2.0框架(mapreduce2.0,一種軟件架構(gòu),用于大規(guī)模數(shù)據(jù)集的并行運算,字面含義為:映射與歸納)的模塊,應(yīng)用引擎模塊是基于mr2.0框架的應(yīng)用,應(yīng)用引擎模塊提交的作業(yè)任務(wù)是mapreduce作業(yè),由底層框架模塊中基于hadoop平臺的yarn進行管理,拆分成多個子任務(wù)在hadoop集群中運行。
客戶端模塊獲取的結(jié)果數(shù)據(jù)給用戶時,如果結(jié)果數(shù)據(jù)量超過閥值,則只展示部分,并提供命令在解析轉(zhuǎn)換模塊查看。
本發(fā)明借助客戶端模塊、解析轉(zhuǎn)換模塊和應(yīng)用引擎模塊,結(jié)合底層框架和集群,輔以處理流程,實現(xiàn)對半結(jié)構(gòu)化大數(shù)據(jù)的提取統(tǒng)計命令操作和結(jié)果處理,從而提高可維護性和自動化可視化水平;針對半結(jié)構(gòu)化的大數(shù)據(jù)操作提供一套完整系統(tǒng),可以使業(yè)務(wù)和分析場景使用統(tǒng)一模型,減少數(shù)據(jù)冗余,業(yè)務(wù)數(shù)據(jù)分析的運維和操作更簡便可靠。
進一步,所述客戶端模塊還用于接收所述解析處理模塊發(fā)送的操作語句轉(zhuǎn)換完成的消息,在接收到所述轉(zhuǎn)換完成的消息后調(diào)用所述應(yīng)用引擎模塊,所述應(yīng)用引擎模塊根據(jù)所述配置規(guī)則生成作業(yè)任務(wù);
所述解析轉(zhuǎn)換模塊還用于在對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,向客戶端模塊發(fā)送操作語句轉(zhuǎn)換完成的消息。
具體的,客戶端模塊在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊后,等待并判斷是否成功完成解析轉(zhuǎn)換處理(即是否收到解析轉(zhuǎn)換模塊發(fā)送的操作語句轉(zhuǎn)換完成的消息),成功完成解析轉(zhuǎn)換處理后調(diào)用相應(yīng)應(yīng)用引擎獲取結(jié)果數(shù)據(jù)。
該改進中,通過消息模式使客戶端模塊簡單方便的判斷操作語句轉(zhuǎn)換成配置規(guī)則是否已經(jīng)完成,節(jié)約系統(tǒng)資源,使客戶端模塊能在準確的時機調(diào)用應(yīng)用引擎模塊。
進一步,所述客戶端模塊還用于根據(jù)用戶的選擇將本次獲取的結(jié)果數(shù)據(jù)備份到集群中。
具體的,客戶端模塊在將獲取的結(jié)果數(shù)據(jù)展示給用戶時,提供界面供用戶輸入命令,讓用戶確認是否備份結(jié)果數(shù)據(jù),并根據(jù)用戶的選擇完成本次操作。
該改進中,備份結(jié)果數(shù)據(jù)使歷史統(tǒng)計結(jié)果可重用,避免重復獲取,提高了系統(tǒng)的運行效率。
進一步,所述客戶端模塊在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊前,先判斷操作語句是否執(zhí)行過、執(zhí)行后獲取的結(jié)果數(shù)據(jù)是否進行過備份以及該結(jié)果數(shù)據(jù)是否為靜態(tài)數(shù)據(jù),若均為是,則直接使用上次執(zhí)行操作語句后獲取的結(jié)果數(shù)據(jù)的備份,若至少有一項為否,則將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊。
具體的,客戶端模塊在將用戶輸入的操作語句同步到解析轉(zhuǎn)換模塊前,判斷發(fā)現(xiàn)操作語句以前執(zhí)行過、用戶對相應(yīng)的結(jié)果數(shù)據(jù)進行過備份并且相應(yīng)的結(jié)果數(shù)據(jù)是靜態(tài)數(shù)據(jù),則直接使用上次運行后備份的結(jié)果數(shù)據(jù),避免重復。
該改進中,對于上次執(zhí)行過的針對靜態(tài)數(shù)據(jù)的操作語句,可以直接調(diào)用上次備份過的結(jié)果數(shù)據(jù),避免重復獲取,提高了獲取和展示結(jié)果數(shù)據(jù)的速度。
進一步,所述解析轉(zhuǎn)換模塊還用于所述解析轉(zhuǎn)換模塊還用于在對操作語句進行解析并將解析結(jié)果轉(zhuǎn)換成配置規(guī)則后,將該操作語句以及對應(yīng)的配置規(guī)則進行備份,在下次接收到客戶端模塊同步過來的相同的操作語句時,不進行解析并直接使用備份中對應(yīng)的配置規(guī)則。
該改進中,對相同的操作語句,解析轉(zhuǎn)換模塊只進行一次解析,然后將解析后轉(zhuǎn)換成的配置規(guī)則進行備份,下次接收到同樣的操作語句只需要在備份中獲取對應(yīng)的配置規(guī)則,不要再次進行解析轉(zhuǎn)換的過程,節(jié)約了系統(tǒng)資源和運行時間,提高了系統(tǒng)效率。
以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。