CN114020534A - 一种航运数据快照生成方法 - Google Patents

一种航运数据快照生成方法 Download PDF

Info

Publication number
CN114020534A
CN114020534A CN202111303059.4A CN202111303059A CN114020534A CN 114020534 A CN114020534 A CN 114020534A CN 202111303059 A CN202111303059 A CN 202111303059A CN 114020534 A CN114020534 A CN 114020534A
Authority
CN
China
Prior art keywords
data
snapshot
time
ais
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111303059.4A
Other languages
English (en)
Other versions
CN114020534B (zh
Inventor
魏永来
王敏
李翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cosco Shipping Technology Co Ltd
Original Assignee
Cosco Shipping Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cosco Shipping Technology Co Ltd filed Critical Cosco Shipping Technology Co Ltd
Priority to CN202111303059.4A priority Critical patent/CN114020534B/zh
Publication of CN114020534A publication Critical patent/CN114020534A/zh
Application granted granted Critical
Publication of CN114020534B publication Critical patent/CN114020534B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Library & Information Science (AREA)
  • Remote Sensing (AREA)
  • Software Systems (AREA)
  • Traffic Control Systems (AREA)

Abstract

本发明涉及航运信息化领域,具体涉及一种航运数据快照生成方法,包括:第一步选择快照样本数据;第二步基于快照样本,按不同的快照时间粒度,生成数据快照并以存储表形式进行存储,包括:利用ETL工具,定时复制最新航段信息集合,关联切片时间后直接生成数据快照;基于AIS全量历史表以及航段信息全量历史表,按切片时间序列,循环抽取指定时间点附近的样本数据,间接生成对应的数据快照。本发明针对航运数据的特征,精选快照样本,解决了由于航运数据体量庞大,难以快速响应,以及在源数据发生变更的情况下,现有的快照生成方法或技术的数据快照响应单一,难以满足不断更新的航运数据进行复杂细粒度的响应的需求的问题。

Description

一种航运数据快照生成方法
技术领域
本发明涉及航运信息化技术领域,具体涉及一种航运数据快照生成方法。
背景技术
随着大数据、云计算等技术在各行各业的广泛应用和快速发展,航运领域的信息化也在逐渐发展壮大,尤其是航运信息数据的逐渐增多,对航运大数据的存储与分析利用显得尤为重要。其中,航运历史数据快照,主要用以回溯历史状态或分析历史趋势,是一项极为重要的技术。
存储网络行业协会对快照的定义是:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始时间点)的映像,快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。快照的作用主要是能够进行在线数据备份与恢复,当存储设备发生应用故障或者文件损坏时可以进行快速的数据恢复,将数据回滚到够格可用的时间点的状态,快照的另一个作用就是为存储用户提供另外一个数据访问通道,当元数据进行在线应用处理时,用户可以访问快照数据,还可以利用快照进行测试等工作,所有的存储系统,不论高中低端,只要应用于在线系统,那么快照就成为一个不可或缺的功能。
如何便捷的生成数据快照并加以有效利用,已成为数据、计算等服务领域一项重要的技术。目前,生成快照的方法有很多,其中以专利CN111552437A为代表,在数据快照的存储及数据运维层面,主要是针对分布式存储系统中解决了逻辑卷多机头的限制及共享数据服务低性能的技术问题。另一个部分是针对数据的快照技术,以专利CN102096613B为代表,同样聚焦在数据运维层面,将数据的管理及保护作为主要目的和功能。这类快照的生成预先的定义较为固定,一旦在错过快照生成,很难弥补,难以进行精确的历史数据的回溯。尤其是,对于航运数据来说,航运AIS历史数据有庞大的体量,AIS数据的特点是,密度不等且量级比较大,以单船平均10分钟上报一次,除去AIS故障时间,全年平均上报时长达300为例,一条船一年的AIS数据量达43200条。根据劳氏船级社的数据,全球在册船舶达300万条,去掉部分小渔船、短驳客船、小型特种作业船,按200万条商用船计算,全球商船一年产生的AIS数据超800亿条。业务系统进行历史分析时,直接通过检索全量AIS历史数据时,难以快速响应,用户体验差,故需要更大颗粒度的数据单独存储。
此外,航运平台或相关分析系统中应用的数据,还有一个重要的特点是,该类数据大多是中间计算结果,当计算逻辑发生变更时,数据需要重新计算,数据快照也需要基于最新的数据进行更新,现有的快照生成方法或技术的数据快照响应单一,难以满足不断更新的航运数据进行复杂的细粒度的响应的需求。
因此,在航运数据领域,亟需一种方法可以满足航运数据即时变化更新的需求的同时快速响应出更为复杂的细粒度的数据快照。
发明内容
本发明为了实现满足上述这种在航运信息技术领域中,由于航运数据体量庞大,难以快速响应,用户体验差,以及现有的快照生成方法或技术的数据快照响应单一,难以满足不断更新的航运数据进行复杂的细粒度的响应的需求,提供了一种航运数据快照生成方法。
本发明提供以下方案:
本发明提供了一种航运数据快照生成方法,其特征在于,包括以下过程:
第一步,选择快照样本数据,
选择最新航段信息作为快照样本数据的一部分,所述最新航段信息包括基于定时抽取的AIS数据源中的AIS数据来生成最新的AIS数据,以及选择跟随计算逻辑动态变化的航段信息;
选择AIS全量历史表作为快照样本数据的一部分,所述全量历史表是所有的AIS历史数据的集合;
选择航段信息全量历史表作为快照样本数据的一部分,所述航段信息全量历史表是所有的最新航段信息历史数据的集合;
第二步,基于所述快照样本,按照不同的快照时间粒度,生成数据快照,并以存储表的形式存储,包括:
直接生成数据快照,利用ETL工具,配置定时的快照时间粒度任务,定时复制生成的所述最新航段信息的集合,关联切片时间后直接生成数据快照;
间接生成数据快照,包括:
基于所述AIS全量历史表,选择快照时间粒度,按照选择的快照时间粒度对应的切片时间序列,循环抽取指定时间点附近的样本数据,间接生成关联最新的AIS信息的数据快照;
基于所述航段信息全量历史表,选择快照时间粒度,按照选择的快照时间粒度对应的切片时间序列,循环抽取指定时间点附近的样本数据,间接生成关联最新航段信息的数据快照。
进一步的,所述最新的AIS信息定义了包括AIS上报时间、船舶位置经纬度、对地航速、船艏向、AIS上报时间等最新的关键信息;
进一步的,所述跟随计算逻辑动态变化的航段信息,是指在实际计算过程中,基于AIS历史数据及船舶航行动态判断算法,推算出船舶动态信息,所述船舶动态信息包括航行动态靠泊、锚泊、始发港及目的港信息,以及预抵信息;所述船舶航行动态判断算法,是不断更迭优化的动态算法,随着所述动态算法的每一轮优化,所述船舶动态信息进行重新计算,基于重新计算后的所述船舶动态信息生成并更新所述最新的航段信息;其中,所述预抵信息定义了包括船舶的预抵港口、预抵时间、剩余里程等信息。
进一步的,所述快照样本数据还包括其它重要分类信息,所述其他重要分类信息是基于所述航段信息全量历史表中的历史数据结合船舶的贸易、运营、商业价值等附加分类属性分析归纳的数据,包括船舶的内外贸营运状态数据等。
进一步的,在航运数据领域,所述快照时间粒度的选择根据航运的成本和航运业务的精细化的满足度来确定;具体的,上述快照样本中,最新的AIS信息的更新频率以分钟为单位,最新航段信息以小时或天为单位,而重要的分类信息,则可以周甚至月为单位。
进一步的,鉴于主流的商船设计航速、实际航速、航程、综合成本、效率和业务接受程度等多种因素,所述快照时间粒度的选择以天为单位,即针对船舶最新航段信息和其他重要的分类信息,每天抽取一个快照;进一步的细化所述快照时间粒度,基于具体地域时间区当地的业务实际作业时间来选定当天的具体时间点,包括可统一选择UTC时间00:00点,即GMT+8时区下的08:00点作为采样时间点。
进一步的,所述数据快照的存储表中每一条数据中包含两部分数据,第一部分是切片时间,是指快照时间粒度上的一个点的切片时间,包括切片时间主键,用来唯一定义一个切片;第二部分则是切片业务,是该切片对应的业务数据,其中,每一行业务数据包括船舶唯一标识、经度、纬度、航速及上报时间等。
进一步的,所述最新的AIS信息来源于以下过程:
(1)定时抽取外部AIS数据源中上报更新时间在间隔期内的AIS数据;
(2)针对间隔期内的增量数据进行清洗、转换、存储临时表;
(3)为新增的AIS数据构建PRE AIS信息;
(4)将包含PRE AIS信息的所述最新的AIS信息更新到所述最新的AIS信息的存储表中,同时复制到所述全量历史表中。
进一步的,所述间接生成快照是通过以下过程进行:
首先,基于对应的快照时间范围生成快照对应的切片时间序列;
其次,判断所筛选的切片时间是否在所述对应的切片时间序列内,进而判断筛选的循环是否结束;若是,则直接退出循环,停止筛选;若不是,则通过所述AIS全量历史表以及所述航段信息全量历史表为所述对应的切片时间生成对应的数据快照;
最后,直到所有判断过程都是停止筛选,则所有循环结束,所述间接生成快照结束。
进一步的,通过所述AIS全量历史表为所述对应的切片时间生成对应的数据快照的具体过程,包括:
第一步,基于所述AIS全量历史表中筛选所有上报时间在对应切片时间之前的船舶的AIS数据,定义为AIS数据对应的临时结果;
第二步,基于所述对应的临时结果,按照船舶标识分组,筛选每一个船舶标识的最近的上报时间,形成距离所述对应切片时间最近的上报时间数据集,定义对应的临时数据集;
第三步,通过笛卡尔乘积关联所述对应的临时结果和所述对应的临时数据集,从所述对应的临时结果中筛选出(船舶标识,最近的上报时间)组合值在所述对应的临时数据集中的样本数据,即间接生成关联最新的AIS信息的数据快照;
以及,通过所述航段信息全量历史表为所述对应的切片时间生成对应的数据快照的具体过程,包括:
第一步,基于所述航段信息全量历史表中筛选所有时间段在对应切片时间之前的船舶的航段信息数据,定义为航段信息数据对应的临时结果;
第二步,基于所述对应的临时结果,按照船舶标识分组,当切片时间落在对应航段期间内,获取对应的最新航段信息数据,筛选出(船舶标识,航段信息)组合值,即间接生成关联最新航段信息的数据快照。
本发明还提供一种优化所述的航运数据快照生成方法中的所述间接生成数据快照的方法,其特征在于,优化的方式在于:
方式一:筛选所述对应临时结果时,可增加最近的上报时间的左边界条件,即所述最近的上报时间之前的一段时间的左边界点;所述之前的一段时间的设定,可结合业务设置一个时间阈值;最终的筛选条件可以是:最近的上报时间<=所述对应切片时间&&最近的上报时间>=所述对应切片时间-左边界点;
或/和,
方式二:将所述对应的切片时间序列的循环过程分成多个子任务,在所述对应的切片时间内设定一个时间单位,所述时间单位的数值小于所述对应的切片时间的跨度值,将所述对应的切片时间在同一个所述时间单位的生成过程安排在一个子任务内,所有子任务之间并行执行,从而加快循环的速度。
本发明还包括一种基于所述的航运数据快照生成方法中的生成的数据快照的应用,其特征在于,采用所述的航运数据快照生成方法生成的数据快照,用于进一步的数据存储、分析及管理应用。
相比于其他现有技术,本发明精选了快照样本数据,包括选择不断变化的最新航段信息、选择固定上报的AIS全量历史表、选择基于最新航段信息的航段信息全量历史表,支持基于所选择的快照样本数据的集合生成的对应的数据快照,可以解决数据快照响应单一,难以满足不断更新的航运数据进行复杂的细粒度的响应的需求;同时相比于现有技术中利用单一的AIS数据,实现了更大颗粒度的数据的单独存储,并实现了基于全量历史(AIS全量历史表以及航段信息全量历史表)的快照数据一键的重新生成,可以快速响应并生成数据快照;再加上通过生成方法的优化,实现了更为迅速的响应并生成数据快照,解决了航运数据体量庞大,难以快速响应,用户体验差的问题。
附图说明
图1.本发明提供的一种航运数据快照生成方法的步骤示意图。
图2.本发明提供的一种航运数据快照生成方法生成的一种数据快照的存储示例图。
图3.本发明提供的一种航运数据快照生成方法中的生成最新的AIS信息数据的步骤示意图。
图4.本发明提供的一种航运数据快照生成方法中的基于全量历史表生成数据快照的步骤示意图。
图5.通过本发明提供的航运数据快照生成方法得到一种样本数据的展示图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆益不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统,产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
船舶自动识别系统(Automatic Identification System,AIS)是一种原先应用于船和岸、船和船之间的海事安全与通信的助航系统,在减少船舶碰撞事故等海事服务领域中发挥着重要作用。AIS所积累的巨量数据信息反映了全球海上船舶的实时动态,是一种可用于分析港航管理问题的宝贵大数据资源。这些巨量数据除了用于船舶避碰外,也可以通过处理数据和挖掘等技术方法将其应用于港航管理领域的分析和决策,并且具有巨大的利用潜力,如:港口运营管理、船舶运营管理、船队动态监控、海事管理等多方面。
国际海事组织规定300总吨以上国际航线的船舶,500总吨以上非国际航线的货轮以及所有客轮均需要安装AIS设备;AIS报文包含船舶当时的动态信息(如位置、航速),静态信息(如船长、船宽)和航次相关信息(如目的地,预计到达时间);AIS报文的播发频率为2s-30s,通过VHF信道进行传输;AIS整合了标准化的VHF收发器、定位系统(如GPS接收器)和其他电子导航传感器(如陀螺罗经、转速指示器)。通过专门的VHF发射器,有关于船舶本身的信息数据将被广播传输到其他接收器;船舶间和船岸间AIS信号的传输距离限制分别大约为20nmi和40nmi。
ETL数据抽取转换及加载技术,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。本发明中,ETL的主要使用包括,配置定时执行任务,按照计划调用数据库存储过程;配置远程执行任务,按照计划远程执行命令并邮件通知执行结果;配置数据检查任务,按照执行计划数据检查并通知结果。
KETTLE数据抽取转换,Kettle最早是一个开源的ETL工具,全称为KDEExtraction,Transportation,Transformation and Loading Environment。
除此之外,在本发明中所指的AIS全量历史表和最新航段信息表的结构是一样的,不同的是,最新航段信息里面,每一条船仅有一条最新的记录,但是全量历史里面,有所有历史的AIS记录,即时间纬度上有差别。
为使本发明技术方案的优点更加清楚,下面结合附图和实施例对本发明做详细说明。
本发明提供一种航运数据快照生成方法,如图1所示,本发明提供的一种航运数据快照生成方法的步骤示意图,包括以下过程:
第一步S1000,选择快照样本数据,不同于现有技术中的基于固定上报的AIS数据来生成数据快照,本发明精选了以下样本:
选择最新航段信息作为快照样本数据的一部分,所述最新航段信息包括基于定时抽取的AIS数据源中的AIS数据来生成最新的AIS数据,以及选择跟随计算逻辑动态变化的航段信息;
选择AIS全量历史表作为快照样本数据的一部分,所述全量历史表是所有的AIS历史数据的集合;
选择航段信息全量历史表作为快照样本数据的一部分,所述航段信息全量历史表是所有的最新航段信息历史数据的集合。由于在实际计算过程中,基于AIS历史数据及船舶航行动态判断算法,是不断更迭优化的动态算法,随着所述动态算法的每一轮优化,船舶动态信息进行重新计算,来推算出船舶动态信息,包括航行动态靠泊、锚泊、始发港及目的港信息,以及预抵信息;然而每一轮的优化都会导致数据发生变化,船舶动态信息将进行重新计算,因此,需要将基于重新计算后的船舶动态信息生成并更新的最新航段信息作为重要的航运数据的快照样本数据之一。
第二步S2000,基于精选的所述快照样本,按照不同的快照时间粒度,生成数据快照,包括:
直接生成数据快照,利用ETL工具,本实施例中主要基于KETTLE,配置定时任务,定时复制生成的所述最新航段信息的集合,关联切片时间后直接生成数据快照;相当于,定时的进行存储所述最新航段信息对应的数据快照或切片数据,如每天直接生成一个A船舶的当天的预抵港口信息的数据快照;
间接生成数据快照,包括:基于所述AIS全量历史表,选择快照时间粒度,按照选择的快照时间粒度对应的切片时间序列,循环抽取指定时间点附近的样本数据,间接生成关联最新的AIS信息的数据快照;如基于过去的2年内所述AIS全量历史表,生成A船舶的关联AIS上报时间、船舶位置经纬度、对地航速、船艏向的数据快照;
基于所述航段信息全量历史表,选择快照时间粒度,按照选择的快照时间粒度对应的切片时间序列,循环抽取指定时间点附近的样本数据,间接生成关联最新航段信息的数据快照;如基于过去的2年内航段信息全量历史表,生成A船舶的关联航行动态靠泊、锚泊、始发港及目的港信息,以及预抵信息的数据快照。
在本实施例中,所述最新的AIS信息定义了包括AIS上报时间、船舶位置经纬度、对地航速、船艏向、AIS上报时间等最新的关键信息。
在本实施例中,所述其他重要分类信息是基于所述航段信息全量历史表中的历史数据结合船舶的贸易、运营、商业价值等附加分类属性分析归纳的数据,包括船舶的内外贸营运状态数据等。所述其他重要分类信息,如船舶的内外贸营运状态信息,是基于船舶历史动态统计归纳的;优选的,如基于船舶的内外贸营运状态的数据快照,即根据过去一段时间的港口挂靠记录是否包含海外港口,确定其内外贸属性,并形成切片数据,以记录切片时间节点的内外贸特征即根据过去一段时间的港口挂靠记录是否包含海外港口,确定其内外贸属性,并形成切片数据,以记录切片时间节点的内外贸特征。
其中,内外贸营运状态等的数据可以用来为用户或航运企业提供外贸分析、咨询、定价以及基于此的成本的参考等服务。
因此,在选择了上述包括最近航段信息的集合及其它重要分类信息的快照样本数据,也就是选择了更准确更细粒度的样本数据,因此,在生成数据快照时,可以满足用户对数据快照多样性、复杂性的要求,满足不断更新的航运数据进行细粒度的响应的需求。
第二步S2000,基于所述快照样本,按照不同的快照时间粒度,生成数据快照。其中对于快照时间粒度的选择,在本实施例中,快照时间粒度的选择,主要以行业实际情况进行选择,如,在航运数据领域,所述快照时间粒度的选择根据航运的成本和航运业务的精细化的满足度来确定;具体的,上述快照样本中,最新的AIS信息的更新频率以分钟为单位,航行动态信息以小时或天为单位,而重要的分类信息,则可以周甚至月为单位。
优选的,鉴于主流的商船设计航速、实际航速、航程、综合成本、效率和业务接受程度等多种因素,所述快照时间粒度的选择以天为单位,即针对船舶最新航段信息和其他重要的分类信息,每天抽取一个快照;进一步的细化所述快照时间粒度,基于具体地域时间区当地的业务实际作业时间来选定当天的具体时间点,包括可统一选择UTC时间00:00点,即GMT+8时区下的08:00点作为采样时间点。
实际过程中,基于上述的快照样本,最新的AIS信息的更新频率以分钟为单位,航行动态信息以小时或天为单位,而重要的分类信息,则可以周甚至月为单位。
AIS数据的特点是,密度不等且量级比较大,以单船平均10分钟上报一次,除去AIS故障时间,全年平均上报时长达300为例,一条船一年的AIS数据量达43200条。根据劳氏船级社的数据,全球在册船舶达300万条,去掉部分小渔船、短驳客船、小型特种作业船,按200万条商用船计算,全球商船一年产生的AIS数据超800亿条。本实施例关联的业务系统中,重点追踪分析的船舶约10万条,2年的AIS历史数据约80亿条。
因此,本发明的回溯分析系统,如果直接通过检索全量AIS历史数据时,难以快速响应,用户体验差,故需要更大颗粒度的数据进行单独存储,这时候需要结合数据特点,从数据样本及数据切片时间粒度考虑,因此除了进行上述快照样本数据的选择之外,选择合适的时间粒度也极为重要。
考虑到目前世界范围内,主流的商船设计航速基本上在25节以下,即25海里/小时,实际航速则更低,以亚洲-美西航线为例,航程通常在10天以上,超5000海里,一天内的状态变化不大,综合成本、效率和业务接受程度等多种因素,本方案针对航运数据样本的快照时间粒度,统一为天,即针对船舶最新航段信息和其他重要的分类信息,每天抽取一个快照。每日快照的具体时间点,原则上可以是一天内的任一时间点,为了便于操作,可统一选择UTC时间00:00点,即GMT+8时区下的08:00点作为采样时间点。
此处应当注意的是,实际应用中,不限于本实施例中的时间粒度的选择,主要以行业实际情况进行选择,如,在航运数据领域,所述快照时间粒度的选择根据航运的成本和航运业务的精细化的满足度来确定。
在本书实例中,为了便于说明本发明实施过程,这里对一些名词限定对应的符号,如船舶唯一标识MMSI、经度LON,纬度LAT,航速SOG及上报时间POSTIME;但要注意的是,本发明的方法不限于本文所述定义,包括本发明实际应用中所有的类似的名称术语。
在本实施例中,生成的所述数据快照以存储表的形式进行存储,存储表中每一条数据中包含两部分数据,第一部分是切片时间,是指快照时间粒度上的一个点的切片时间,包括切片时间主键,用来唯一定义一个切片;第二部分则是切片业务,是该切片对应的业务数据,其中,每一行业务数据包括船舶唯一标识、经度、纬度、航速及上报时间等。
优选的,如图2所示,本发明提供的一种航运数据快照生成方法生成的一种数据快照的存储示例图,图2中以最新航段信息为例,假定该数据的存储表对象名为AIS_NEW,不同于AIS历史表中包含了每天船所有的AIS历史记录,AIS_NEW表中,每一条船仅保存最新的AIS记录,且每一行数据至少包含船舶唯一标识MMSI、经度LON,纬度LAT,航速SOG及上报时间POSTIME。AIS_NEW快照表与AIS_NEW表分开存储,如命名为SNAPSHOT_AIS_NEW,每一条SNAPSHOT_AIS_NEW中至少需要包含两部分数据,第一部分是切片的时间主键SLICE_TIME,用来唯一定义一个切片,第二部分则是该切片对应的业务数据,如图2所示,通过SLICE_TIME,可以锁定同一切片内的数据,不同的切片,通过不同的SLICE_TIME区分。
在本实施例中,生成最新的AIS信息数据;可通过4个步骤完成,如图3所示,本发明提供的一种航运数据快照生成方法中的生成最新的AIS信息数据的步骤示意图。
其中:S2101,定时抽取外部AIS数据源中上报更新时间在间隔期内的AIS数据,具体是,每5分钟一次,抽取外部AIS源数据中最新上报时间POSTIME在5分钟内的数据,外部数据源存在多个时,需要将多个数据源的数据合并去重,相同MMSI取POSTIME最大的一条。
S2102,针对间隔期内的增量数据进行清洗、转换、存储临时表,具体是将抽取时间间隔内的增量数据,进行漂移点清洗、字段映射、格式转化后存储到本地的临时表AIS_NEW_DIFF
S2103,为新增的AIS数据构建PRE AIS信息,如基于本地的AIS_NEW和AIS_NEW_DIFF,为每一条新数据和上一个点的数据建立关联,即每一条新数据增加PRE AIS的信息。
S2104,将包含PRE AIS信息的最新AIS信息更新到AIS_NEW,同时复制到全量历史表AIS_HIS。本过程是为了基于AIS数据源中的数据获得更有利于本方法实施的数据的预处理的过程。
利用ETL工具,在本实施例中主要利用开源工具KETTLE,配置定时任务,定时复制最新航段信息集合,关联切片时间SLICE_TIME后直接生成数据快照。
在本实施例中,间接生成数据快照包括基于全量历史表,按照切片时间序列,循环抽取指定时间点附近的样本数据,间接生成数据快照;所述全量历史表是所有的AIS历史记录的数据集合。如图4所示,本发明提供的一种航运数据快照生成方法中的基于全量历史表生成数据快照的步骤示意图。
其中:首先,基于对应的快照时间范围生成快照对应的切片时间SLICE_TIME序列;其次,判断所筛选的切片时间SLICE_TIME是否在所述对应的切片时间SLICE_TIME序列内,进而判断筛选的循环是否结束;若是,则直接退出循环,停止筛选;若不是,则通过全量历史表AIS_HIS为所述对应的切片时间SLICE_TIME生成对应的数据快照;最后,直到所有判断过程都是停止筛选,则所有循环结束,所述间接生成快照结束。
进一步的,在上述循环未结束时,通过全量历史表AIS_HIS为所述对应的切片时间SLICE_TIME生成对应的数据快照的具体过程,包括:
第一步,基于所述全量历史表AIS_HIS中筛选所有上报时间在对应切片时间之前的船舶的AIS数据,定义对应的临时结果;如优选的,从海量AIS历史数据表AIS_HIS中筛选所有上报时间在SLICE_TIME前的船舶AIS数据,定义临时结果AIS_HIS_SAMPLE,如SLICE_TIME为20210901,则筛选POSTIME在2021-09-01 08:00:00前的所有数据。
第二步,基于所述对应的临时结果,按照船舶标识分组,筛选每一个船舶标识的最近的上报时间,形成距离所述对应切片时间最近的上报时间数据集,定义对应的临时数据集;如优选的,基于AIS_HIS_SAMPLE,按照船舶MMSI分组,筛选每一条MMSI的最后上报时间POSTIME,形成距离SLICE_TIME最近的上报时间数据集,定义该临时数据集为AIS_HIS_SLICE。
第三步,通过笛卡尔乘积关联所述对应的临时结果和所述对应的临时数据集,从所述对应的临时结果中筛选出(船舶标识,最近的上报时间)组合值在所述对应的临时数据集中的样本数据,如图5所示,通过本发明提供的航运数据快照生成方法得到一种样本数据的展示图,通过笛卡尔乘积关联AIS_HIS_SAMPLE和AIS_HIS_SLICE,从AIS_HIS_SAMPLE中筛选出(MMSI,POSTIME)组合值在AIS_HIS_SLICE中的样本数据。
本实施例中,间接生成数据快照还包括通过所述航段信息全量历史表为所述对应的切片时间生成对应的数据快照的具体过程,包括:
第一步,基于所述航段信息全量历史表中筛选所有时间段在对应切片时间之前的船舶的航段信息数据,定义为航段信息数据对应的临时结果;
第二步,基于所述对应的临时结果,按照船舶标识分组,当切片时间落在对应航段期间内,获取对应的最新航段信息数据,筛选出(船舶标识,航段信息)组合值,即间接生成关联最新航段信息的数据快照。
为了进一步,加快在实际应用中数据快照生成的速度,并减少实际计算量和所费的时间,本发明还提供了一种优化方法,用于优化所述的航运数据快照生成方法中的基于全量历史表生成所述间接生成数据快照的方法,优化的方式在于:筛选所述对应临时结果时,可增加最近的上报时间的左边界条件,即所述最近的上报时间之前的一段时间的左边界点;所述之前的一段时间的设定,可结合业务设置一个时间阈值;最终的筛选条件可以是:最近的上报时间<=所述对应切片时间&&最近的上报时间>=所述对应切片时间-左边界点。
如优选的,在筛选临时样本AIS_HIS_SAMPLE时,可增加POSTIME的左边界条件,如近筛选距离SLICE_TIME 20天内的数据,考虑到最后一次上报时间在20天外的数据(一段时间内的),丢失过长,对业务的帮助不大,故可结合业务设置一个时间阈值${scope},最终的筛选条件类似:POSTIME<=${SLICE_TIME}&&POSTIME>=${SLICE_TIME}-interval‘${SCOPE}days’。
本发明还提供了另外一种优化方法,用于优化所述的航运数据快照生成方法中的基于全量历史表生成所述间接生成数据快照的方法,优化的方式在于:将所述对应的切片时间序列的循环过程分成多个子任务,在所述对应的切片时间内设定一个时间单位,所述时间单位的数值小于所述对应的切片时间的跨度值,将所述对应的切片时间在同一个所述时间单位的生成过程安排在一个子任务内,所有子任务之间并行执行,从而加快循环的速度。
如优选的,将SLICE_TIME序列的循环过程分成多个子任务,如以月为单位,将SLICE_TIME在同一个月的生成过程安排在一个子任务内,子任务之间并行执行。
实际应用过程中,以上两种优化方式可以并行实时,也可以单独实时,根据具体的处理数据或分析需求来定。
综上,本发明的优势在于:不同于以数据恢复为主要目标的快照生成技术,本方法结合航运数据的特色,精选了快照的样本集,通过自定义快照时间粒度,提供了基于最新和历史两种数据的快照生成方法,其中基于最新数据,在源数据发生变更的情况下,改变了传统的快照特征,即必须基于当前正在发生的数据进行捕捉,此外生成的数据快照,便于航运数据的精确回溯和细粒度的分析,还可以为基于历史数据构建灵活、复杂的分析回溯系统提供强有力的支撑。在航运信息技术领域中,本发明基于上述快照样本数据的重新选择与定义,解决了现有的快照生成方法或技术的数据快照响应单一,难以满足不断更新的航运数据进行细粒度的复杂的响应的需求的问题,同时实现了更大颗粒度的数据单独存储,外加基于全量历史(AIS全量历史表以及航段信息全量历史表)的快照数据一键的重新生成,可以快速响应并生成数据快照;再加上通过生成方法的优化,实现了更为迅速的响应并生成数据快照,解决了航运数据体量庞大,难以快速响应,用户体验差的问题。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (11)

1.一种航运数据快照生成方法,其特征在于,包括以下过程:
第一步,选择快照样本数据,
选择最新航段信息作为快照样本数据的一部分,所述最新航段信息包括基于定时抽取的AIS数据源中的AIS数据来生成最新的AIS数据,以及选择跟随计算逻辑动态变化的航段信息;
选择AIS全量历史表作为快照样本数据的一部分,所述全量历史表是所有的AIS历史数据的集合;
选择航段信息全量历史表作为快照样本数据的一部分,所述航段信息全量历史表是所有的最新航段信息历史数据的集合;
第二步,基于所述快照样本,按照不同的快照时间粒度,生成数据快照,并以存储表的形式存储,包括:
直接生成数据快照,利用ETL工具,配置定时的快照时间粒度任务,定时复制所述最新航段信息的集合,关联切片时间后直接生成数据快照;
间接生成数据快照,包括:
基于所述AIS全量历史表,选择快照时间粒度,按照选择的快照时间粒度对应的切片时间序列,循环抽取指定时间点附近的样本数据,间接生成关联最新的AIS信息的数据快照;
基于所述航段信息全量历史表,选择快照时间粒度,按照选择的快照时间粒度对应的切片时间序列,循环抽取指定时间点附近的样本数据,间接生成关联最新航段信息的数据快照。
2.根据权利要求1所述的航运数据快照生成方法,其特征还在于,
所述最新的AIS信息定义了包括AIS上报时间、船舶位置经纬度、对地航速、船艏向、AIS上报时间等最新的关键信息;
所述跟随计算逻辑动态变化的航段信息,是指在实际计算过程中,基于AIS历史数据及船舶航行动态判断算法,推算出船舶动态信息,所述船舶动态信息包括航行动态靠泊、锚泊、始发港及目的港信息,以及预抵信息;所述船舶航行动态判断算法,是不断更迭优化的动态算法,随着所述动态算法的每一轮优化,所述船舶动态信息进行重新计算,基于重新计算后的所述船舶动态信息生成并更新所述最新的航段信息;其中,所述预抵信息定义了包括船舶的预抵港口、预抵时间、剩余里程等信息。
3.根据权利要求1或2所述的航运数据快照生成方法,其特征还在于,所述快照样本数据还包括其它重要分类信息,所述其他重要分类信息是基于所述航段信息全量历史表中的历史数据结合船舶的贸易、运营、商业价值等附加分类属性分析归纳的数据,包括船舶的内外贸营运状态数据等。
4.根据权利要求1或2所述的航运数据快照生成方法,其特征还在于,在航运数据领域,所述快照时间粒度的选择根据航运的成本和航运业务的精细化的满足度来确定;具体的,上述快照样本中,最新的AIS信息的更新频率以分钟为单位,最新航段信息以小时或天为单位,而重要的分类信息,则可以周甚至月为单位。
5.根据权利要求4所述的航运数据快照生成方法,其特征还在于,鉴于主流的商船设计航速、实际航速、航程、综合成本、效率和业务接受程度等多种因素,所述快照时间粒度的选择以天为单位,即针对船舶最新航段信息和其他重要的分类信息,每天抽取一个快照;进一步的细化所述快照时间粒度,基于具体地域时间区当地的业务实际作业时间来选定当天的具体时间点,包括可统一选择UTC时间00:00点,即GMT+8时区下的08:00点作为采样时间点。
6.根据权利要求1所述的航运数据快照生成方法,其特征还在于,所述数据快照的存储表中每一条数据中包含两部分数据,第一部分是切片时间,是指快照时间粒度上的一个点的切片时间,包括切片时间主键,用来唯一定义一个切片;第二部分则是切片业务,是该切片对应的业务数据,其中,每一行业务数据包括船舶唯一标识、经度、纬度、航速及上报时间等。
7.根据权利要求1所述的航运数据快照生成方法,其特征还在于,所述最新的AIS信息来源于以下过程:
(1)定时抽取外部AIS数据源中上报更新时间在间隔期内的AIS数据;
(2)针对间隔期内的增量数据进行清洗、转换、存储临时表;
(3)为新增的AIS数据构建PRE AIS信息;
(4)将包含PRE AIS信息的所述最新的AIS信息更新到所述最新的AIS信息的存储表中,同时复制到所述全量历史表中。
8.根据权利要求1所述的航运数据快照生成方法,其特征还在于,所述间接生成快照是通过以下过程进行:
首先,基于对应的快照时间范围生成快照对应的切片时间序列;
其次,判断所筛选的切片时间是否在所述对应的切片时间序列内,进而判断筛选的循环是否结束;若是,则直接退出循环,停止筛选;若不是,则通过所述AIS全量历史表以及所述航段信息全量历史表为所述对应的切片时间生成对应的数据快照;
最后,直到所有判断过程都是停止筛选,则所有循环结束,所述间接生成快照结束。
9.根据权利要求8所述的航运数据快照生成方法,其特征还在于,通过所述AIS全量历史表为所述对应的切片时间生成对应的数据快照的具体过程,包括:
第一步,基于所述AIS全量历史表中筛选所有上报时间在对应切片时间之前的船舶的AIS数据,定义为AIS数据对应的临时结果;
第二步,基于所述对应的临时结果,按照船舶标识分组,筛选每一个船舶标识的最近的上报时间,形成距离所述对应切片时间最近的上报时间数据集,定义对应的临时数据集;
第三步,通过笛卡尔乘积关联所述对应的临时结果和所述对应的临时数据集,从所述对应的临时结果中筛选出(船舶标识,最近的上报时间)组合值在所述对应的临时数据集中的样本数据,即间接生成关联最新的AIS信息的数据快照;
以及,通过所述航段信息全量历史表为所述对应的切片时间生成对应的数据快照的具体过程,包括:
第一步,基于所述航段信息全量历史表中筛选所有时间段在对应切片时间之前的船舶的航段信息数据,定义为航段信息数据对应的临时结果;
第二步,基于所述对应的临时结果,按照船舶标识分组,当切片时间落在对应航段期间内,获取对应的最新航段信息数据,筛选出(船舶标识,航段信息)组合值,即间接生成关联最新航段信息的数据快照。
10.一种优化权利要求1或9所述的航运数据快照生成方法中的所述间接生成数据快照的方法,其特征在于,优化的方式在于:
方式一:筛选所述对应临时结果时,可增加最近的上报时间的左边界条件,即所述最近的上报时间之前的一段时间的左边界点;所述之前的一段时间的设定,可结合业务设置一个时间阈值;最终的筛选条件可以是:最近的上报时间<=所述对应切片时间&&最近的上报时间>=所述对应切片时间-左边界点;
或/和,
方式二:将所述对应的切片时间序列的循环过程分成多个子任务,在所述对应的切片时间内设定一个时间单位,所述时间单位的数值小于所述对应的切片时间的跨度值,将所述对应的切片时间在同一个所述时间单位的生成过程安排在一个子任务内,所有子任务之间并行执行,从而加快循环的速度。
11.一种基于权利要求1-9所述的航运数据快照生成方法中的生成的数据快照的应用,其特征在于,采用权利要求1-9所述的航运数据快照生成方法生成的数据快照,用于进一步的数据存储、分析及管理应用。
CN202111303059.4A 2021-11-05 2021-11-05 一种航运数据快照生成方法 Active CN114020534B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111303059.4A CN114020534B (zh) 2021-11-05 2021-11-05 一种航运数据快照生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111303059.4A CN114020534B (zh) 2021-11-05 2021-11-05 一种航运数据快照生成方法

Publications (2)

Publication Number Publication Date
CN114020534A true CN114020534A (zh) 2022-02-08
CN114020534B CN114020534B (zh) 2022-05-10

Family

ID=80061135

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111303059.4A Active CN114020534B (zh) 2021-11-05 2021-11-05 一种航运数据快照生成方法

Country Status (1)

Country Link
CN (1) CN114020534B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183387A (zh) * 2007-12-14 2008-05-21 沈阳东软软件股份有限公司 一种增量数据捕获方法和系统
CN105610456A (zh) * 2015-12-31 2016-05-25 福建伊斯普电子科技有限公司 一种利用北斗导航的海图仪
US9690791B1 (en) * 2013-11-18 2017-06-27 EMC IP Holding Company LLC Snapshot history map
CN107193985A (zh) * 2017-05-27 2017-09-22 郑州云海信息技术有限公司 一种记录数据变化历史的拉链表设计方法
CN108108374A (zh) * 2016-11-25 2018-06-01 百度在线网络技术(北京)有限公司 一种数据仓库的存储方法及装置
CN109344004A (zh) * 2018-09-03 2019-02-15 郑州云海信息技术有限公司 一种内存数据库备份管理方法、装置、终端及存储介质
CN110210352A (zh) * 2019-05-23 2019-09-06 中国人民解放军海军工程大学 基于航道模型的船舶轨迹异常检测方法
CN111078709A (zh) * 2019-12-28 2020-04-28 辽宁振兴银行股份有限公司 一种基于数仓工具hive的非更新方式的增量拉链实现方法
CN111104411A (zh) * 2019-12-28 2020-05-05 辽宁振兴银行股份有限公司 一种快速生成全量数据拉链表的方法
CN112612775A (zh) * 2020-12-17 2021-04-06 平安消费金融有限公司 一种数据存储方法、装置、计算机设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183387A (zh) * 2007-12-14 2008-05-21 沈阳东软软件股份有限公司 一种增量数据捕获方法和系统
US9690791B1 (en) * 2013-11-18 2017-06-27 EMC IP Holding Company LLC Snapshot history map
CN105610456A (zh) * 2015-12-31 2016-05-25 福建伊斯普电子科技有限公司 一种利用北斗导航的海图仪
CN108108374A (zh) * 2016-11-25 2018-06-01 百度在线网络技术(北京)有限公司 一种数据仓库的存储方法及装置
CN107193985A (zh) * 2017-05-27 2017-09-22 郑州云海信息技术有限公司 一种记录数据变化历史的拉链表设计方法
CN109344004A (zh) * 2018-09-03 2019-02-15 郑州云海信息技术有限公司 一种内存数据库备份管理方法、装置、终端及存储介质
CN110210352A (zh) * 2019-05-23 2019-09-06 中国人民解放军海军工程大学 基于航道模型的船舶轨迹异常检测方法
CN111078709A (zh) * 2019-12-28 2020-04-28 辽宁振兴银行股份有限公司 一种基于数仓工具hive的非更新方式的增量拉链实现方法
CN111104411A (zh) * 2019-12-28 2020-05-05 辽宁振兴银行股份有限公司 一种快速生成全量数据拉链表的方法
CN112612775A (zh) * 2020-12-17 2021-04-06 平安消费金融有限公司 一种数据存储方法、装置、计算机设备及存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
JIAJIA CAI等: "Ship Detection and Direction Finding Based on Time-Frequency Analysis for Compact HF Radar", 《IEEE GEOSCIENCE AND REMOTE SENSING LETTERS》 *
皮哥四月红: "Hive数据仓库之全量表、增量表、快照表、切片表和拉链表", 《HTTPS://BLOG.CSDN.NET/WEIXIN_43230682/ARTICLE/DETAILS/107089846》 *
谢欣: "商业银行历史数据归档的数据仓库设计", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 *
贾骐玮: "基于Hive的数据仓库变更数据更新算法研究", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 *

Also Published As

Publication number Publication date
CN114020534B (zh) 2022-05-10

Similar Documents

Publication Publication Date Title
US11719831B2 (en) System and method for tracking and forecasting the positions of marine vessels
Zissis et al. A distributed spatial method for modeling maritime routes
US7933693B2 (en) System and method for harvesting business intelligence from maritime communications
CN114020535B (zh) 一种基于航运数据快照的回溯分析系统
WO1999008251A1 (en) Real-time surface traffic adviser
CN110069582B (zh) 船舶抛锚区域确定方法、装置、设备及存储介质
AU2020205850A1 (en) System and method for tracking vessels
Pani et al. Prediction of late/early arrivals in container terminals-a qualitative approach
CN109685086A (zh) 海上船舶作业状态识别方法、装置、设备及存储介质
CN111832776B (zh) 一种机群维护的管理方法和系统
CN112785030A (zh) 船舶行为识别系统、方法和平台
Štepec et al. Machine learning based system for vessel turnaround time prediction
CN113256146A (zh) 船舶监管方法及系统
Zhang et al. How liner shipping heals schedule disruption: A data-driven framework to uncover the strategic behavior of port-skipping
CN115758242A (zh) 船靠船事件识别方法、可读存储介质及计算机设备
CN114020534B (zh) 一种航运数据快照生成方法
CN114462839A (zh) 港口运行效率实时分析方法及系统
CN116126926B (zh) 一种船舶全生命周期动态数据智能管理方法及系统
CN108280582A (zh) 一种全程供应链控制塔及控制方法
CN116661636A (zh) 一种轨迹显示方法、装置、设备及存储介质
CN115017387A (zh) 基于船舶ais大数据的港口及泊位电子围栏构建方法
CN114091919A (zh) 一种海上风电运维基地的资源调度方法和系统
CN114490648A (zh) 一种海上目标对象的数据处理方法、装置及设备
CN113554752A (zh) 用于对小流域自然灾害进行应急预案的三维可视化及快速制图的方法及模型
Boubeta-Puig et al. Complex event processing applied to early maritime threat detection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant