技術(shù)領(lǐng)域
本發(fā)明涉及船位信息處理技術(shù)領(lǐng)域,具體地,涉及一種船位信息壓縮與還原方法。
背景技術(shù):
在船位信息處理領(lǐng)域,現(xiàn)有的AIS壓縮算法,GPS壓縮方法,針對“勢態(tài)”圖形的方式進(jìn)行壓縮;其缺點(diǎn):數(shù)據(jù)無法還原,對硬件性能要求較高;在常見的AIS軌跡回放,GPS歷史回溯等場景,客戶端需要對船位信息進(jìn)行展示,而每次的請求數(shù)據(jù)量是巨大的,并且會(huì)伴有其他的數(shù)據(jù)操作,例如:排序,數(shù)據(jù)格式化轉(zhuǎn)化等,會(huì)有嚴(yán)重的性能瓶頸。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于,針對上述問題,提出一種船位信息壓縮與還原方法,以解決客戶端獲取并展示船位信息時(shí),因數(shù)據(jù)量較大而引起的性能瓶頸的優(yōu)點(diǎn)。
為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案是:一種船位信息壓縮與還原方法,主要包括:
步驟1:通過10位UTC/GMT+8:00時(shí)區(qū)下的時(shí)間戳,為所有船位信息集合POS[ALL]建立索引;
步驟2:按照查詢的時(shí)間段,對所有船位的信息集合進(jìn)行初次界定,形成界定后的船位信息集合POS[B-E];
步驟3:根據(jù)客戶端的處理量設(shè)定,對POS[B-E]進(jìn)行壓縮,形成壓縮后的船位信息集合POS[B-E][NUM];
步驟4:客戶端對POS[B-E][NUM] 進(jìn)行顯示或其他數(shù)據(jù)操作;
步驟5:客戶端對POS[B-E][NUM]進(jìn)行還原操作得到POS[B-E];
步驟6:若客戶端不再需要船位信息或所獲船位信息為最細(xì)粒度的船位信息,則不再進(jìn)行壓縮,否則對船位信息按照客戶端的處理量繼續(xù)進(jìn)行壓縮。
進(jìn)一步地,所述步驟3中還包括,若還需對壓縮后的船位信息集合POS[B-E][NUM]進(jìn)行壓縮,則繼續(xù)按照客戶端的處理量的設(shè)定進(jìn)行壓縮。
進(jìn)一步地,所述船位信息包括船只標(biāo)示。
進(jìn)一步地,步驟4中,所述其他數(shù)據(jù)操作包括排序和格式轉(zhuǎn)化。
本發(fā)明各實(shí)施例的一種船位信息壓縮與還原方法,由于主要包括:通過10位UTF-8時(shí)區(qū)下的時(shí)間戳,為所有船位信息集合POS[ALL]建立索引;按照查詢的時(shí)間段,對所有船位的信息集合進(jìn)行初次界定,形成界定后的船位信息集合POS[B-E];根據(jù)客戶端的處理量設(shè)定,對POS[B-E]進(jìn)行壓縮,形成壓縮后的船位信息集合POS[B-E][NUM];客戶端對POS[B-E][NUM] 進(jìn)行顯示或其他數(shù)據(jù)操作;客戶端對現(xiàn)有POS[B-E][NUM]進(jìn)行還原操作得到POS[B-E];若客戶端不再需要船位信息或所獲船位信息為最細(xì)粒度的船位信息,則不再進(jìn)行壓縮;從而可以克服現(xiàn)有技術(shù)中針對“勢態(tài)”圖形的方式進(jìn)行壓縮,數(shù)據(jù)無法還原,對硬件性能要求較高的缺陷;同時(shí)克服客戶端獲取并展示船位信息時(shí),可以解決數(shù)據(jù)量較大而引起的性能瓶頸問題。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。
下面通過附圖和實(shí)施例,對本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
附圖說明
附圖用來提供對本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中:
圖1為本發(fā)明具體實(shí)施方式所述的一種船位信息壓縮與還原方法的原理流程圖。
具體實(shí)施方式
以下結(jié)合附圖對本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
具體地,一種船位信息壓縮與還原方法,主要包括:
步驟1:通過10位UTC/GMT+8:00時(shí)區(qū)下的時(shí)間戳,為所有船位信息集合POS[ALL]建立索引;
步驟2:按照查詢的時(shí)間段,對所有船位的信息集合進(jìn)行初次界定,形成界定后的船位信息集合POS[B-E];
步驟3:根據(jù)客戶端的處理量設(shè)定,對POS[B-E]進(jìn)行壓縮,形成壓縮后的船位信息集合POS[B-E][NUM];
步驟4:客戶端對POS[B-E][NUM] 進(jìn)行顯示或其他數(shù)據(jù)操作;
步驟5:客戶端對現(xiàn)有POS[B-E][NUM]進(jìn)行還原操作得到POS[B-E];
步驟6:若客戶端不再需要船位信息或所獲船位信息為最細(xì)粒度的船位信息,則不再進(jìn)行壓縮,否則對船位信息按照客戶端的處理量繼續(xù)進(jìn)行壓縮。
所述步驟3中還包括,若還需對壓縮后的船位信息集合POS[B-E][NUM]進(jìn)行壓縮,則繼續(xù)按照客戶端的處理量的設(shè)定進(jìn)行壓縮。
所述船位信息包括船只標(biāo)示。
步驟4中,所述其他數(shù)據(jù)操作包括排序和格式轉(zhuǎn)化。
結(jié)合圖1,船位信息包含:本船的唯一標(biāo)示;
1.通過10位 UTC/GMT+8:00時(shí)區(qū)的時(shí)間戳,,為所有船位信息集合(以下簡稱 POS[ALL])建立索引;
2.按照查詢的時(shí)間段,對 POS [ALL] 進(jìn)行初次界定,此時(shí)船位信息集合為 POS[B-E];
3.根據(jù)客戶端的處理量設(shè)定,對POS [B-E]進(jìn)行壓縮 為 POS[B-E][NUM];
4.客戶端對 POS[B-E][NUM] 進(jìn)行顯示或其他數(shù)據(jù)操作;
5.客戶端對現(xiàn)有POS[B-E][NUM]進(jìn)行還原操作;
獲取船位信息邊界(POS [BOUND]),通過 POS [BOUND]獲取還原后的船位信息;
6.客戶端不再需要船位信息或目前已經(jīng)是最細(xì)粒度的船位信息,將不再壓縮;
至少可以達(dá)到以下有益效果:
最后應(yīng)說明的是:以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,盡管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,對于本領(lǐng)域的技術(shù)人員來說,其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替換。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。