999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

時序數據流場景下的高效時間轉化算法

2021-03-15 07:01:33孫景樂王成華
電腦知識與技術 2021年3期
關鍵詞:系統

孫景樂 王成華

摘要:該文針對時序數據的特點提出一種高效的時間轉化為字符串格式的算法,該文算法在時序數據場景下轉化效率是Linux系統API(strftime)的4倍以上,在極端非序列場景下也接近系統的API效率(0.986倍),綜合性能優于系統API,在日常開發過中可作為系統API的替代函數使用。

關鍵詞:時序數據;時間格式轉換;Linux? 系統;API;strftime

中圖分類號:TP311? ? 文獻標識碼:A

文章編號:1009-3044(2021)03-0127-02

1前言

在分散控制系統[1]以及其他監測系統中,時間戳是監測數據的重要屬性,且數據具有按照時間順序發生的特點[2-3]。Linux系統下,時間的完整格式一般由兩個32位的整數表示①,第一個整數表示距離1970年1月1日0時0分0秒的秒數[4],第二個整數表示相對于第一個數的微秒數。但是這種時間格式對于人類來說不直觀,在存入歷史庫或在界面顯示數據時,需要將整數格式的時間轉化為直觀的字符串格式。在Linux平臺下,系統API函數strftime[5]可以將時間轉化為字符串格式。雖然該函數已經過充分優化,具有較高的效率,但高頻率調用系統API函數會導致用戶CPU占用率和系統CPU占用率升高,極端情況下可達100%,導致系統不能正常運行。本文利用strftime函數,在轉化的機制上提出一種改進的時間轉換算法,時序場景下效率可提高4倍多。

2算法原理及實現邏輯

該算法與時序數據時間戳的特點密切相關,本算法充分利用了數據的時序性,并結合計算機數據處理的特性實現。

2.1 軟件開發過程的時間處理方法

當前主流的操作系統主要有Windows和Linux系統,兩種操作系統提供的日期時間表示方法思路也非常類似,都是通過使用整數表示距離某個歷史特定時刻的100納秒數或秒數。當在用戶界面顯示時間戳時,需要將時間的整數形式轉化為人類更容易理解的字符串格式,例如,“2020年6月10日 13:35:40.622”。Windows系統和Linux系統都提供從整數格式轉化為字符串格式的API函數。

2.2 時序系統的特點

在監測系統中,監測點數據一般都是按照時間順序周期采集,例如50毫秒采集一次或更長的間隔采集一次,所以在一秒之內,時間戳的秒級時間數值不變,僅毫秒和微秒在變化。例如,當前某監測點在“2020-6-6 18:30:12.100秒采集一次數據,后面每隔50毫秒采集一次數據,在[“2020-6-6 18:30:12.000”, “2020-6-6 18:30:13.000”)之間時間戳的秒都是”2020-6-6 18:30:12”,變化的僅僅是毫秒級別的時間,所以不需要對每個時間戳都調用系統API對時間戳進行轉化,可以充分前面的轉化結果,避免重復轉化,提高效率。特別在監測點數高達數十萬,甚至數百萬的大型系統中,一秒內會產生大量的數據,進行時間格式轉化的頻率非常高。

2.3? 高效算法的基本思路

根據時序數據的時間戳特點,提出了更高效的時間轉化算法,思路如下:

1)分配緩存空間,存放最近n(一般為n=2即可)秒時間內的轉化結果,存放數據包括秒數及對應的時間字符串;

2)針對當前要處理的時間戳,先在緩存中查找是否已經轉化過該時刻的秒數。如果已轉化,則直接利用轉化好的字符串與時間戳中小于秒的部分(毫秒或微秒等)進行字符串拼接,得到一個完整的字符串格式的時間戳;如果找不到,則調用系統API進行格式轉化,并將轉化結果替換掉緩存中最舊的轉化結果,然后拼接毫秒和微秒部分的字符串,最后輸出完整的時間字符串格式,算法的流程圖如圖1所示。

2.4 極端情況下的本文算法效率分析

該算法是根據時序數據的特點提出的,所以針對時序數據會有較高的效率。如果在極端非時序數據情況下,則需要對該算法的效率進行分析。所謂極端情況,即任意相鄰兩次的時間差都大于緩沖次數n,在緩沖區中不能找到已有轉化,所以每次轉化都需要調用系統API進行轉換。此時,本文算法的效率就退化為比直接調用系統API效率略低的算法。之所以比系統API效率低是因為快速算法比直接調用系統API多執行了在緩沖區查找轉化結果的過程。由于緩沖區次數n一般為2,所以查找時間非常短,所以即使在極端情況下,快速算法的效率也接近系統API的效率,后面的實驗數據也充分驗證了這一點。

4性能驗證

4.1實驗方案

實驗方案分為兩部分:一種是在時序數據環境下進行效率對比,另一種是在極端情況下進行效率對比。

1)時序數據場景下對比

因為該算法是與數據的時序性密切相關的,所以實驗過程中數據的變化也模擬了時序系統的特點。給定一個時間初始值t0(由秒和微秒兩部分組成),每間隔1秒,t0中的秒部分增加1秒,微秒的數值部分每執行一次轉化后都會發生變化。

2)極端非時序場景下對比

該情況下時間的秒數采用隨機產生的方法,新的時間能在緩存中找到的概率非常低,幾乎每次都需要調用系統API函數進行轉化。

4.2實驗環境

實驗環境是在VMWare虛擬機上的Linux操作系統(Ubuntu18),兩種算法都是在同一環境下比較,所以可以保證實驗結果的客觀性。

4.3實驗結果

實驗中分別調用系統API和本文算法進行時間格式轉化,在相同的運行環境下分別運行約10秒、20秒和30秒,統計兩個算法執行時間轉化的次數,計算每次的平均運行速度,最后在計算綜合平均速度進行比較,實驗數據如表1所示。

本文算法的三次綜合平均速度為:1036.5萬次/秒,系統API算法的三次綜合平均速度為238.9萬次/秒。實驗數據表明,本文算法的運行效率遠遠高于系統API算法的效率,大約是系統API算法的4.34倍。

非時序情況下,本文算法平均計算速度為235.6萬次/秒,是系統API效率的0.986倍,略低于系統API的效率。

5 總結

在具有時序特點的監控系統場景下將時間格式轉化為字符串格式,本文算法的效率是系統API函數(strftime)的4倍多;在極端情況下,本文算法的效率是系統API算法效率的0.986倍,效率基本相同。所以,在日常開發過程中,該快速算法完全可以用來替代直接調用系統API函數。

注釋:

不同的系統采用的時間機制不同,本文主要以Linux系統下的時間表示方法進行敘述.

參考文獻:

[1] 百度百科. 分散控制系統[EB/OL].[2020-08-04]. https://baike.baidu.com.

[2] 王紅濤,王志超,陳峰,等.基于時序數據庫的工業大數據應用研究[J].重型機械,2020(4):17-21.

[3] 林志達,張華兵,張今革.基于時序數據庫的監控數據存儲方法研究[J].電子元器件與信息技術,2020,4(1):73-74,100.

[4] 百度百科. unix時間戳[EB/OL].[2020-08-04]. https://baike.baidu.com.

[5] 小丁木. linux中常用時間和字符串之間相互轉化[EB/OL]. (2017-07-11)[2020-07-04]. https://www.cnblogs.com/xiaodingmu/p/7152396.html.

【通聯編輯:聞翔軍】

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 91国内视频在线观看| 国产精品女熟高潮视频| 国产精品不卡片视频免费观看| 日韩麻豆小视频| 国产99视频精品免费观看9e| 欧美日本一区二区三区免费| 国产69囗曝护士吞精在线视频| av色爱 天堂网| 尤物午夜福利视频| 黄色网站在线观看无码| 日本午夜视频在线观看| 国内老司机精品视频在线播出| 97成人在线观看| 亚洲日韩Av中文字幕无码| 美女扒开下面流白浆在线试听| 国国产a国产片免费麻豆| 国产成人一区免费观看| 91精品国产综合久久香蕉922| 人妻一区二区三区无码精品一区| 99久久精品美女高潮喷水| 国产美女自慰在线观看| 欧美黄网站免费观看| 欧美激情视频一区二区三区免费| 无码精品国产VA在线观看DVD| 黄色在线不卡| 国产免费福利网站| 69av免费视频| 中国成人在线视频| 亚洲AⅤ波多系列中文字幕| 亚洲—日韩aV在线| 欧美有码在线观看| 国产自无码视频在线观看| 亚洲黄网在线| 国产高清自拍视频| 一级做a爰片久久毛片毛片| 99在线免费播放| 伊人五月丁香综合AⅤ| 小13箩利洗澡无码视频免费网站| 国产精品私拍在线爆乳| 成人在线观看不卡| 中文字幕2区| 亚洲欧美日韩中文字幕在线| 亚洲欧美国产五月天综合| 亚洲午夜福利在线| 91在线激情在线观看| 亚洲一级毛片免费看| 伦伦影院精品一区| 77777亚洲午夜久久多人| 日韩毛片免费观看| 日韩午夜福利在线观看| 国产视频入口| 国产一级特黄aa级特黄裸毛片| 亚洲欧美国产视频| 婷婷亚洲最大| 少妇被粗大的猛烈进出免费视频| 久久综合色播五月男人的天堂| 日本高清成本人视频一区| 成人av专区精品无码国产 | www中文字幕在线观看| 天天色综网| 亚洲首页在线观看| 台湾AV国片精品女同性| 亚洲欧美日韩另类在线一| 国产精品xxx| 日韩在线2020专区| 午夜福利视频一区| 一本无码在线观看| 国产色伊人| 国产十八禁在线观看免费| 久久香蕉国产线看观看亚洲片| 亚洲天堂福利视频| 精品成人一区二区三区电影| 久久综合色天堂av| www.91在线播放| 国产成本人片免费a∨短片| 一级一毛片a级毛片| 欧洲极品无码一区二区三区| 天堂网亚洲综合在线| 一级毛片在线播放| 国产小视频网站| 99热这里只有成人精品国产| 亚洲AⅤ综合在线欧美一区|