首页 > Linux操作系统 > Linux操作系统 > Monitor 架構分析(1)
1. 根據Monitor 的功能模塊,Monitor的數據可以分為兩種:
1)實時數據,主要是實時傳送的測試數據,和Station上傳的狀態數據(connect,disconnect,ready,busy等等。。。)
2)靜態數據,主要是用來創建靜態對象的數據。包括一個樓層有幾條線,一條線有幾個PnP,一個PnP有多少個Station等等。
2. Monitor程序啟動時,只需要配置相應的樓層,如B23-4F,根據這個樓層,Monitor通過調用相對應的包和存儲過程,構建出整個樓層的Line,對應Line的PnP,對應PnP的Station 。構建好靜態對象,就可以用靜態對象調用我們的動態數據了(實時數據)。動態數據刷新的頻率為10秒鐘。
3.根據Monitor的數據類型,知道Monitor里有兩張大表,分別為StationRealTime 和MessageData。
1.StationRealTime 里存儲的是實時數據,這部份的數據主要用來顯示Station工站的實時狀態的,這部份數據每個Station每隔10秒鐘會調用相應包的相應存儲過程把自己的工作狀態存儲到StationRealTime里。因為這些是實時數據,不需要保留太長時間,需要定時清除。為此我把這個表設計成為一個按時間分區的表。舉個例子
今天為 1月22日 ,這個分區表一共有5個分區 1月20日為一個分區,1月21日為一個分區,1月22日為一個分區,1月23日為一個分區,1月24日為一個分區。每個分區裏面存儲的都是當天的數據,通過寫的存儲過程,利用JOB定時器自動維護這些分區。比如時間都了1月23日,則會刪除1月20日個分區。同時生成1月25日的分區。即通過存儲過程,自動維護當天前後兩天內的分區。通過這種方式,自動清空不需要的數據,提高查詢速度。減少存儲空間。
2.MessageData 這個表存儲的是測試機台的數據,這個需要將測試數據保留七天。
我將這個大表按照一周七天以list分區分成了七個分區,分別為(sun,mon,tue,wed。。。) ,通過存儲過程 和 JOB定時器自動清除超過7天的數據。並且在這個大表上按照查詢關鍵字建立的索引。提高查詢效率。
4.对Monitor来说采用分区表的好处,主要为提高查询效率,方便对数据的处理。可以根据不同的数据,对相对应的分区进行操作。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26851211/viewspace-753024/ ,如需转载,请注明出处,否则将追究法律责任。