本發明涉及計算機技術領域,尤其涉及一種數據處理方法及裝置。
背景技術:
當前,app(application,應用程序)的運行環境通常包括預發布運行環境和真實線上運行環境等,預發布運行環境通常用于在app正式發布前對app進行模擬測試,待測試通過之后再發布到真實線上運行環境,真實線上運行環境用于正式對用戶提供實際業務服務。
通常,這兩個運行環境同時使用一個共享存儲設備,每個運行環境都可以在共享存儲設備中讀寫數據。
其中,在通過預發布運行環境在該存儲設備中存儲的所有數據中,任意兩個數據的數據標識都不相同;以及,在通過真實線上運行環境在該存儲設備中存儲的所有數據中,任意兩個數據的數據標識也都不相同。然而,有時候可能存在通過預發布運行環境在共享存儲設備中存儲的一個數據的數據標識與通過真實線上運行環境在共享存儲設備中存儲的一個數據的數據標識相同但這兩個數據的數據內容不同的情況。
例如,通過預發布運行環境在共享存儲設備中存儲了a數據,通過真實線上運行環境在共享存儲設備中存儲了b數據,a數據的數據標識與b數據的數據標識相同,但a數據的數據內容與b數據的數據內容不同。
這樣,當之后需要通過真實線上運行環境獲取之前通過真實線上運行環境存儲的b數據時,需要利用b數據的數據標識在共享存儲設備中查找數據,然而由于b數據的數據標識與a數據的數據標識相同,因此,可能查找到a數據,也可能查找到b數據,如果查找到a數據,由于a數據不是之前通過真實線上運行環境存儲的數據,導致獲取到的數據不是需要獲取的數據,也即獲取到的數據是錯誤的數據,這樣就會影響之后的業務正常運行。
因此,為了避免上述問題的出現,技術人員需要事先為預發布運行環境和真實線上運行環境分別配備不同存儲設備。這樣,當通過預發布運行環境存儲數據時,會將數據存儲在為預發布運行環境配備的存儲設備中;當需要通過真實線上運行環境存儲數據時,會將數據存儲在為真實線上運行環境配備的存儲設備中。
如此,當之后需要通過真實線上運行環境獲取之前通過真實線上運行環境存儲的數據時,會從為真實線上運行環境配備的存儲設備中查找數據;由于為真實線上運行環境配備 的存儲設備中不存在通過預發布運行環境存儲的數據,僅僅存在通過真實線上運行環境存儲的數據,因此,從為真實線上運行環境配備的存儲設備中獲取的數據一定是之前通過真實線上運行環境存儲的,不會是之前通過預發布上運行環境存儲的。以及,當之后需要通過預發布運行環境獲取之前通過預發布運行環境存儲的數據時,會從為預發布運行環境配備的存儲設備中查找數據;由于在為預發布運行環境配備的存儲設備中不存在通過真實線上運行環境存儲的數據,僅僅存在通過預發布運行環境存儲的數據,因此,從為預發布運行環境配備的存儲設備中獲取的數據一定是之前通過預發布運行環境存儲的,不會是之前通過真實線上運行環境存儲的。這樣就可以避免獲取到的數據不是需要獲取的數據的問題,也即避免獲取到的數據是錯誤的數據的問題。
然而,發明人發現,為預發布運行環境和真實線上運行環境分別配備不同存儲設備雖然可以避免上述問題的出現,但是卻增加了硬件成本。
技術實現要素:
為克服相關技術中存在的問題,本發明提供一種數據處理方法及裝置。
根據本發明實施例的第一方面,提供一種數據處理方法,所述方法包括:
當需要通過目標運行環境在共享存儲設備中存儲待存儲數據時,獲取與所述目標運行環境相綁定的數據類型的標識;不同的運行環境綁定的數據類型的標識不同;
將所述待存儲數據與所述數據類型的標識相綁定;
將所述待存儲數據存儲在所述共享存儲設備中。
其中,所述將所述待存儲數據與所述數據類型的標識相綁定,包括:
建立所述待存儲數據與所述數據類型的標識之間的映射關系,以實現將所述待存儲數據與所述數據類型的標識相綁定。
其中,所述將所述待存儲數據與所述數據類型的標識相綁定,包括:
將所述數據類型的標識添加至所述待存儲數據中的數據類型字段中。
進一步地,所述方法還包括:
當需要通過所述目標運行環境獲取之前通過所述目標運行環境在所述共享存儲設備中存儲的待獲取數據標識對應的數據時,獲取與所述目標運行環境相綁定的數據類型的標識;
在所述共享存儲設備中獲取與所述待獲取數據標識相對應的數據;
從所述獲取的數據中選擇出與所述數據類型的標識相綁定的數據。
其中,所述獲取與所述目標運行環境相綁定的數據類型的標識,包括:
獲取本地存儲的運行環境的標識與數據類型的標識之間的對應關系;
在所述對應關系中查找與所述目標運行環境相對應的數據類型的標識。
其中,所述從所述獲取的數據中選擇出與所述數據類型的標識相綁定的數據,包括:
對于獲取的每一個與所述待獲取數據標識相對應的數據,獲取包括所述數據的映射關系;
在所述獲取的映射關系中提取出數據類型的標識;
判斷所述提取出的數據類型的標識是否為與所述目標運行環境相綁定的數據類型的標識;
當所述提取出的數據類型的標識為與所述目標運行環境相綁定的數據類型的標識時,將所述數據確定為與所述數據類型的標識相綁定的數據。
其中,所述從所述獲取的數據中選擇出與所述數據類型的標識相綁定的數據,包括:
對于獲取的每一與所述待獲取數據標識相對應的數據,從所述數據中的數據類型字段中提取出數據類型的標識;
判斷所述提取出的數據類型的標識是否為與所述目標運行環境相綁定的數據類型的標識;
當所述提取出的數據類型的標識為與所述目標運行環境相綁定的數據類型的標識時,將所述數據確定為與所述數據類型的標識相綁定的數據。
根據本發明實施例的第二方面,提供一種數據處理裝置,所述裝置包括:
第一獲取模塊,用于當需要通過目標運行環境在共享存儲設備中存儲待存儲數據時,獲取與所述目標運行環境相綁定的數據類型的標識;不同的運行環境綁定的數據類型的標識不同;
綁定模塊,用于將所述待存儲數據與所述數據類型的標識相綁定;
存儲模塊,用于將所述待存儲數據存儲在所述共享存儲設備中。
其中,所述綁定模塊具體用于建立所述待存儲數據與所述數據類型的標識之間的映射關系,以實現將所述待存儲數據與所述數據類型的標識相綁定。
其中,所述綁定模塊具體用于將所述數據類型的標識添加至所述待存儲數據中的數據類型字段中。
進一步地,所述裝置還包括:
所述第一獲取模塊還用于當需要通過所述目標運行環境獲取之前通過所述目標運行環境在所述共享存儲設備中存儲的待獲取數據標識對應的數據時,獲取與所述目標運行環境相綁定的數據類型的標識;
第二獲取模塊,用于在所述共享存儲設備中獲取與所述待獲取數據標識相對應的數據;
選擇模塊,用于從所述獲取的數據中選擇出與所述數據類型的標識相綁定的數據。
其中,所述第一獲取模塊包括:
第一獲取單元,用于獲取本地存儲的運行環境的標識與數據類型的標識之間的對應關系;
查找單元,用于在所述對應關系中查找與所述目標運行環境相對應的數據類型的標識。
其中,所述選擇模塊包括:
第二獲取單元,用于對于獲取的每一個與所述待獲取數據標識相對應的數據,獲取包括所述數據的映射關系;
第一提取單元,用于在所述獲取的映射關系中提取出數據類型的標識;
第一判斷單元,用于判斷所述提取出的數據類型的標識是否為與所述目標運行環境相綁定的數據類型的標識;
第一確定單元,用于當所述提取出的數據類型的標識為與所述目標運行環境相綁定的數據類型的標識時,將所述數據確定為與所述數據類型的標識相綁定的數據。
其中,所述選擇模塊包括:
第二提取單元,用于對于獲取的每一與所述待獲取數據標識相對應的數據,從所述數據中的數據類型字段中提取出數據類型的標識;
第二判斷單元,用于判斷所述提取出的數據類型的標識是否為與所述目標運行環境相綁定的數據類型的標識;
第二確定單元,用于當所述提取出的數據類型的標識為與所述目標運行環境相綁定的數據類型的標識時,將所述數據確定為與所述數據類型的標識相綁定的數據。
本發明的實施例提供的技術方案可以包括以下有益效果:
在本發明實施例中,雖然通過不同的運行環境可能在共享存儲設備中存儲多個數據標識相同但數據內容不同的數據,但是通過本發明實施例的存儲方法,由于不同的運行環境支持的數據類型不同,且不同的數據類型的標識也不同,這樣,對于任一運行環境,將通過該運行環境在共享存儲設備中存儲的數據與該運行環境支持的數據類型的標識綁定,對 于其他每一運行環境,同樣如此。
這樣,當之后需要通過某一運行環境獲取之前通過該運行環境在共享存儲設備中存儲的數據時,需要利用該數據的數據標識在共享存儲設備中進行查找,由于共享存儲設備中存儲的每一個數據都綁定了數據類型,因此,在查找到所有該數據標識對應的數據中,會選擇出綁定了該運行環境支持的數據類型的標識的數據,且選擇出的數據是需要獲取的數據。
也即,通過本發明實施例的存儲方法,當之后需要通過某一運行環境獲取之前通過該運行環境在共享存儲設備中存儲的數據時,不會出現獲取到的數據不是需要獲取的數據的情況,也即不會出現獲取到的數據是錯誤的數據的情況,也就不會影響之后的業務正常運行。
因此,相比于現有技術,本發明實施例無需為每一運行環境分別配備存儲設備,從而讓可以降低硬件成本。
應當理解的是,以上的一般描述和后文的細節描述僅是示例性和解釋性的,并不能限制本發明。
附圖說明
此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本發明的實施例,并與說明書一起用于解釋本發明的原理。
圖1是根據一示例性實施例示出的一種數據處理方法的流程圖;
圖2是根據一示例性實施例示出的一種數據處理方法的流程圖;
圖3是根據一示例性實施例示出的一種數據處理裝置的框圖。
具體實施方式
這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本發明相一致的所有實施方式。相反,它們僅是與如所附權利要求書中所詳述的、本發明的一些方面相一致的裝置和方法的例子。
圖1是根據一示例性實施例示出的一種數據處理方法的流程圖,如圖1所示,該方法包括以下步驟。
在步驟s101中,當需要通過目標運行環境在共享存儲設備中存儲待存儲數據時,獲取與目標運行環境相綁定的數據類型的標識;
不同的運行環境綁定的數據類型的標識不同。
本發明實施例中同時存在至少兩個不同的運行環境,例如同時存在預發布測試環境和真實線上環境等。該至少兩個不同的運行環境同時共享一個存儲設備,即為步驟s101中的共享存儲設備,通過至少兩個不同的運行環境中的任意一個運行環境都可以在共享存儲設備中存儲數據或獲取數據。
當通過至少兩個不同的運行環境中某一個運行環境在共享存儲設備中存儲的所有數據中,任意兩個數據的數據標識都不相同;當通過至少兩個不同的運行環境中另一個運行環境在共享存儲設備中存儲的所有數據中,任意兩個數據的數據標識都不相同;然而,有時候可能存在通過某一個運行環境在共享存儲設備中存儲的一個數據的數據標識與通過該另一個運行環境在共享存儲設備中存儲的一個數據的數據標識相同但這兩個數據的數據內容不同的情況。
這樣,當之后需要通過該某一個運行環境獲取之前通過該某一運行環境在共享存儲設備中存儲的該一個數據時,需要利用該一個數據的數據標識在共享存儲設備中查找數據,有可能查找到的該一個數據是之前通過該某一個運行環境在共享存儲設備中存儲的數據,也有可能查找到的該一個數據是之前通過該另一個運行環境在共享存儲設備中存儲數據。
如果查找到的數據時該另一個運行環境在共享存儲設備中存儲數據,導致查找到的數據不是需要獲取的數據,也即查找到的數據是錯誤的數據,這樣就會影響之后的業務正常運行。
然而,發明人發現,在本發明實施例中,通過一個運行環境在共享存儲設備中存儲數據時只能存儲該運行環境支持的數據類型的數據,且不同的運行環境支持的數據類型不同。
因此,為了解決上述問題,對于任一運行環境,事先可以將該運行環境的標識與該運行環境支持的數據類型相綁定,例如將該運行環境的標識與該運行環境支持的數據類型的標識組成一條記錄并存儲在本地存儲的運行環境的標識與數據類型的標識之間的對應關系中,以實現將該運行環境的標識與該運行環境支持的數據類型相綁定。對于其他每一運行環境,同樣執行上述操作。
因此,本步驟具體可以為:獲取本地存儲的運行環境的標識與數據類型的標識之間的對應關系;在該對應關系中查找與目標運行環境的標識相對應的數據類型的標識。
在步驟s102中,將待存儲數據與該數據類型的標識相綁定;
其中,在本發明一個實施例中,可以建立待存儲數據與該數據類型的標識之間的映射 關系,以實現將待存儲數據與該數據類型的標識相綁定;
在本發明另一實例中,通常情況下,一個數據中會包括多個數據字段,該多個數據字段中的其中一個數據字段為數據類型字段,數據類型字段中用于存儲數據的數據類型的標識,因此,在本步驟中,可以將數據類型的標識添加至待存儲數據中的數據類型字段中。
在步驟s103中,將待存儲數據存儲在共享存儲設備中。
在本發明實施例中,雖然通過不同的運行環境可能在共享存儲設備中存儲多個數據標識相同但數據內容不同的數據,但是通過本發明實施例的存儲方法,由于不同的運行環境支持的數據類型不同,且不同的數據類型的標識也不同,這樣,對于任一運行環境,將通過該運行環境在共享存儲設備中存儲的數據與該運行環境支持的數據類型的標識綁定,對于其他每一運行環境,同樣如此。
這樣,當之后需要通過某一運行環境獲取之前通過該運行環境在共享存儲設備中存儲的數據時,需要利用該數據的數據標識在共享存儲設備中進行查找,由于共享存儲設備中存儲的每一個數據都綁定了數據類型,因此,在查找到所有該數據標識對應的數據中,會選擇出綁定了該運行環境支持的數據類型的標識的數據,且選擇出的數據是需要獲取的數據。
也即,通過本發明實施例的存儲方法,當之后需要通過某一運行環境獲取之前通過該運行環境在共享存儲設備中存儲的數據時,不會出現獲取到的數據不是需要獲取的數據的情況,也即不會出現獲取到的數據是錯誤的數據的情況,也就不會影響之后的業務正常運行。
因此,相比于現有技術,本發明實施例無需為每一運行環境分別配備存儲設備,從而讓可以降低硬件成本。
進一步地,在本發明另一實施例中,當通過目標運行環境在共享存儲設備中存儲了數據之后,如果之后需要通過目標運行環境從共享存儲設備中獲取該數據,可以通過圖2所示的實施例實現,具體地,參見圖2,該方法還包括:
在步驟s201中,當需要通過目標運行環境獲取之前通過目標運行環境在共享存儲設備中存儲的待獲取數據標識對應的數據時,獲取與目標運行環境相綁定的數據類型的標識;
其中,在本步驟中,可以為獲取本地存儲的運行環境的標識與數據類型的標識之間的對應關系;然后在該對應關系中查找與目標運行環境相對應的數據類型的標識。
在步驟s202中,在共享存儲設備中獲取與待獲取數據標識相對應的數據;
在本發明實施例中,如果之前僅僅通過一個運行環境在共享存儲設備中存儲了數據標識為待獲取數據標識的數據。這樣,在本步驟中,從共享設備中就會獲取到一個與待獲取數據標識相對應的數據,且獲取到的數據的數據綁定了該一個運行環境的標識。
如果之前通過多個不同的運行環境分別在共享存儲設備中存儲了數據標識為待獲取數據標識的數據,這樣,在本步驟中,從共享設備中就會獲取到多個與待獲取數據標識相對應的數據,且獲取到的每一個數據都綁定了一個運行環境的標識,且獲取到的數據中的任意兩個數據綁定的運行環境的標識都不同。
在步驟s203中,從獲取的數據中選擇出與該數據類型的標識相綁定的數據。
在本發明一個實施例中,如果在步驟s102中的“將待存儲數據與該數據類型的標識相綁定”的具體實現方式是:建立待存儲數據與該數據類型的標識之間的映射關系,以實現將待存儲數據與該數據類型的標識相綁定;則本步驟具體可以通過如下流程實現,包括:
對于獲取的與待獲取數據標識相對應的數據中的第一個數據,獲取包括第一個數據的映射關系;在獲取的映射關系中提取出數據類型的標識;判斷提取出的數據類型的標識是否為與目標運行環境相綁定的數據類型的標識;當提取出的數據類型的標識為與目標運行環境相綁定的數據類型的標識時,將第一個數據確定為與該數據類型的標識相綁定的數據,結束流程。
當提取出的數據類型的標識不為與目標運行環境相綁定的數據類型的標識時,確定該數據不為與該數據類型的標識相綁定的數據,并對于獲取的與待獲取數據標識相對應的數據中的第二個數據,同樣執行上述操作,如果確定出第二個數據為與該數據類型的標識相綁定的數據,則結束流程。
如果確定出第二個數據不為與該數據類型的標識相綁定的數據,則對于獲取的與待獲取數據標識相對應的數據中的第三個數據,同樣執行上述操作,直至在獲取的與待獲取數據標識相對應的數據中確定出一個數據類型的標識為與目標運行環境相綁定的數據類型的標識的數據為止。
如果在獲取的與待獲取數據標識相對應的數據中的每一個數據中的數據類型標識都不為與目標運行環境相綁定的該數據類型的標識,則確定共享存儲設備中不存在之前通過目標運行環境在共享存儲設備中存儲的待獲取數據標識對應的數據。
在本發明另一實施例中,如果在步驟s102中的“將待存儲數據與該數據類型的標識相綁定”的具體實現方式是:將該數據類型的標識添加至待存儲數據中的數據類型字段中;則本步驟具體可以通過如下流程實現,包括:
對于獲取的與待獲取數據標識相對應的數據中的第一個數據,從第一個數據中的數據 類型字段中提取出數據類型的標識;判斷提取出的數據類型的標識是否為與目標運行環境相綁定的數據類型的標識;當提取出的數據類型的標識為與目標運行環境相綁定的數據類型的標識時,將第一個數據確定為與該數據類型的標識相綁定的數據,結束流程。
當提取出的數據類型的標識不為與目標運行環境相綁定的數據類型的標識時,確定該數據不為與該數據類型的標識相綁定的數據,并對于獲取的與待獲取數據標識相對應的數據中的第二個數據,同樣執行上述操作,如果確定出第二個數據為與該數據類型的標識相綁定的數據,則結束流程。
如果確定出第二個數據不為與該數據類型的標識相綁定的數據,則對于獲取的與待獲取數據標識相對應的數據中的第三個數據,同樣執行上述操作,直至在獲取的與待獲取數據標識相對應的數據中確定出一個數據類型的標識為與目標運行環境相綁定的數據類型的標識的數據為止。
如果在獲取的與待獲取數據標識相對應的數據中的每一個數據中的數據類型標識都不為與目標運行環境相綁定的該數據類型的標識,則確定共享存儲設備中不存在之前通過目標運行環境在共享存儲設備中存儲的待獲取數據標識對應的數據。
圖3是根據一示例性實施例示出的一種數據處理裝置的框圖。參照圖3,該裝置包括:
第一獲取模塊11,用于當需要通過目標運行環境在共享存儲設備中存儲待存儲數據時,獲取與所述目標運行環境相綁定的數據類型的標識;不同的運行環境綁定的數據類型的標識不同;
綁定模塊12,用于將所述待存儲數據與所述數據類型的標識相綁定;
存儲模塊13,用于將所述待存儲數據存儲在所述共享存儲設備中。
其中,所述綁定模塊12具體用于建立所述待存儲數據與所述數據類型的標識之間的映射關系,以實現將所述待存儲數據與所述數據類型的標識相綁定。
其中,所述綁定模塊12具體用于將所述數據類型的標識添加至所述待存儲數據中的數據類型字段中。
進一步地,所述裝置還包括:
所述第一獲取模塊11還用于當需要通過所述目標運行環境獲取之前通過所述目標運行環境在所述共享存儲設備中存儲的待獲取數據標識對應的數據時,獲取與所述目標運行環境相綁定的數據類型的標識;
第二獲取模塊,用于在所述共享存儲設備中獲取與所述待獲取數據標識相對應的數據;
選擇模塊,用于從所述獲取的數據中選擇出與所述數據類型的標識相綁定的數據。
其中,所述第一獲取模塊11包括:
第一獲取單元,用于獲取本地存儲的運行環境的標識與數據類型的標識之間的對應關系;
查找單元,用于在所述對應關系中查找與所述目標運行環境相對應的數據類型的標識。
其中,所述選擇模塊包括:
第二獲取單元,用于對于獲取的每一個與所述待獲取數據標識相對應的數據,獲取包括所述數據的映射關系;
第一提取單元,用于在所述獲取的映射關系中提取出數據類型的標識;
第一判斷單元,用于判斷所述提取出的數據類型的標識是否為與所述目標運行環境相綁定的數據類型的標識;
第一確定單元,用于當所述提取出的數據類型的標識為與所述目標運行環境相綁定的數據類型的標識時,將所述數據確定為與所述數據類型的標識相綁定的數據。
其中,所述選擇模塊包括:
第二提取單元,用于對于獲取的每一與所述待獲取數據標識相對應的數據,從所述數據中的數據類型字段中提取出數據類型的標識;
第二判斷單元,用于判斷所述提取出的數據類型的標識是否為與所述目標運行環境相綁定的數據類型的標識;
第二確定單元,用于當所述提取出的數據類型的標識為與所述目標運行環境相綁定的數據類型的標識時,將所述數據確定為與所述數據類型的標識相綁定的數據。
本發明的實施例提供的技術方案可以包括以下有益效果:
在本發明實施例中,雖然通過不同的運行環境可能在共享存儲設備中存儲多個數據標識相同但數據內容不同的數據,但是通過本發明實施例的存儲方法,由于不同的運行環境支持的數據類型不同,且不同的數據類型的標識也不同,這樣,對于任一運行環境,將通過該運行環境在共享存儲設備中存儲的數據與該運行環境支持的數據類型的標識綁定,對于其他每一運行環境,同樣如此。
這樣,當之后需要通過某一運行環境獲取之前通過該運行環境在共享存儲設備中存儲的數據時,需要利用該數據的數據標識在共享存儲設備中進行查找,由于共享存儲設備中存儲的每一個數據都綁定了數據類型,因此,在查找到所有該數據標識對應的數據中,會 選擇出綁定了該運行環境支持的數據類型的標識的數據,且選擇出的數據是需要獲取的數據。
也即,通過本發明實施例的存儲方法,當之后需要通過某一運行環境獲取之前通過該運行環境在共享存儲設備中存儲的數據時,不會出現獲取到的數據不是需要獲取的數據的情況,也即不會出現獲取到的數據是錯誤的數據的情況,也就不會影響之后的業務正常運行。
因此,相比于現有技術,本發明實施例無需為每一運行環境分別配備存儲設備,從而讓可以降低硬件成本。
關于上述實施例中的裝置,其中各個模塊執行操作的具體方式已經在有關該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。
本領域技術人員在考慮說明書及實踐這里公開的發明后,將容易想到本發明的其它實施方案。本申請旨在涵蓋本發明的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本發明的一般性原理并包括本發明未公開的本技術領域中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本發明的真正范圍和精神由所附的權利要求指出。
應當理解的是,本發明并不局限于上面已經描述并在附圖中示出的精確結構,并且可以在不脫離其范圍進行各種修改和改變。本發明的范圍僅由所附的權利要求來限制。