一种黑名单参数文件中的参数加载方法和装置与流程

文档序号:26547054发布日期:2021-09-07 23:42阅读:81来源:国知局
一种黑名单参数文件中的参数加载方法和装置与流程

1.本技术涉及交通技术领域,尤其涉及一种黑名单参数文件中的参数加载方法和装置。


背景技术:

2.在高速公路技术领域,交通运输部会把逃费、套牌等行为的车辆列入黑名单,制定黑名单参数文件。然而随着时间的推移,黑名单中的用户越来越多,导致黑名单参数文件的数据量越来越大。
3.在实际进行收费工作的过程中,每条车道端的软件都需要快速响应。但若黑名单参数文件过大,会导致车道端的收费软件加载参数耗时过长,影响正常的收费功能。
4.因此,提供一种黑名单参数文件中参数的快速加载方法是本领域技术人员亟待解决的技术问题。


技术实现要素:

5.本技术提供了一种黑名单参数文件中的参数加载方法和装置,解决了黑名单参数文件过大时,导致车道端的收费软件加载参数耗时过长,影响正常的收费功能的技术问题。
6.有鉴于此,本技术第一方面提供了一种黑名单参数文件中的参数加载方法,包括:
7.响应于参数加载请求,获取待查询的查询参数;
8.获取预置结果文件,其中,所述预置结果文件是将黑名单参数文件分级后得到的;
9.采用二分查找法,在所述预置结果文件中查询所述查询参数对应的结果数据。
10.可选地,所述预置结果文件的配置过程包括:
11.获取黑名单参数文件;
12.根据所述黑名单参数文件对应的文件参数,创建所述预置结果文件对应的文件头;
13.根据所述文件头中的主键字段和保留字段,对所述黑名单参数文件进行分级,得到所述预置结果文件;
14.其中,所述查询参数和所述主键字段为同一参数数据。
15.可选地,根据所述文件头中的主键字段和保留字段,对所述黑名单参数文件进行分级,具体包括:
16.根据所述文件头中的主键字段,将所述黑名单参数文件中与所述主键字段对应的索引字段进行拆分,得到分级索引;
17.在各所述分级索引中,记录该分级索引的下一级分级索引;
18.在最后一级分级索引中,根据所述文件头中的保留字段,记录该分级索引对应的数据内容。
19.可选地,采用二分查找法,在所述预置结果文件中查询所述查询参数对应的结果数据,具体包括:
20.采用二分查找法,利用所述查询参数在所述预置结果文件中查询;
21.当所述预置结果文件中,存在所述查询参数对应的数据内容时,将该数据内容作为所述查询参数对应的结果数据;
22.当所述预置结果文件中,不存在所述查询参数对应的数据内容时,将未查找到数据作为所述查询参数对应的结果数据。
23.可选地,采用二分查找法,利用所述查询参数在所述预置结果文件中查询,具体包括:
24.采用二分查找法,逐级从所述预置结果文件中的分级索引中进行查找。
25.本技术第二方面提供了一种黑名单参数文件中的参数加载装置,包括:
26.第一获取单元,用于响应于参数加载请求,获取待查询的查询参数;
27.第二获取单元,用于获取预置结果文件,其中,所述预置结果文件是将黑名单参数文件分级后得到的;
28.查询单元,用于采用二分查找法,在所述预置结果文件中查询所述查询参数对应的结果数据。
29.可选地,所述预置结果文件的配置过程包括:
30.获取黑名单参数文件;
31.根据所述黑名单参数文件对应的文件参数,创建所述预置结果文件对应的文件头;
32.根据所述文件头中的主键字段和保留字段,对所述黑名单参数文件进行分级,得到所述预置结果文件;
33.其中,所述查询参数和所述主键字段为同一参数数据。
34.可选地,根据所述文件头中的主键字段和保留字段,对所述黑名单参数文件进行分级,具体包括:
35.根据所述文件头中的主键字段,将所述黑名单参数文件中与所述主键字段对应的索引字段进行拆分,得到分级索引;
36.在各所述分级索引中,记录该分级索引的下一级分级索引;
37.在最后一级分级索引中,根据所述文件头中的保留字段,记录该分级索引对应的数据内容。
38.可选地,所述查询单元具体包括:
39.查询子单元,用于采用二分查找法,利用所述查询参数在所述预置结果文件中查询;
40.第一判定子单元,用于当所述预置结果文件中,存在所述查询参数对应的数据内容时,将该数据内容作为所述查询参数对应的结果数据;
41.第二判定子单元,用于当所述预置结果文件中,不存在所述查询参数对应的数据内容时,将未查找到数据作为所述查询参数对应的结果数据。
42.可选地,查询子单元,具体用于采用二分查找法,逐级从所述预置结果文件中的分级索引中进行查找。
43.从以上技术方法可以看出,本技术具有以下优点:
44.本技术中的黑名单参数文件中的参数加载方法,在基于参数加载请求,获取到查
询参数后,获取由黑名单参数文件分级压缩后的预置结果文件,由于将黑名单参数文件进行了分级压缩,此时的预置结果文件内存相对较小,且采用查找效率高、耗时短的二分查找法在预置结果文件中查询查询参数对应的结果数据,即本技术中在减小文件体积的同时提高了查询效率,实现了参数的快速查找、加载,从而解决了黑名单参数文件过大时,导致车道端的收费软件加载参数耗时过长,影响正常的收费功能的技术问题。
附图说明
45.为了更清楚地说明本技术实施例中的技术方法,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
46.图1为本技术实施例中一种黑名单参数文件中的参数加载方法的实施例一的流程示意图;
47.图2为本技术实施例中一种黑名单参数文件中的参数加载方法的实施例二的流程示意图;
48.图3为本技术应用例中黑名单参数文件的部分截图;
49.图4为本技术应用例中对图3中的黑名单参数文件创建的文件头的示意图;
50.图5为本技术应用例对图3所示黑名单参数文件创建的一级分级索引的部分截图;
51.图6为本技术应用例对图3所示黑名单参数文件创建的二级分级索引的部分截图;
52.图7为本技术应用例对图3所示黑名单参数文件创建的三级分级索引和数据的部分截图;
53.图8为本技术实施例中一种黑名单参数文件中的参数加载装置的实施例的结构示意图。
具体实施方式
54.本技术实施例提供了一种黑名单参数文件中的参数加载方法和装置,解决了黑名单参数文件过大时,导致车道端的收费软件加载参数耗时过长,影响正常的收费功能的技术问题。
55.为了使本技术领域的人员更好地理解本技术方法,下面将结合本技术实施例中的附图,对本技术实施例中的技术方法进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
56.本技术实施例第一方面提供了一种应用于车载终端的黑名单参数文件中的参数加载方法,具体地请参阅如下内容:
57.以便于理解,请参阅图1,图1为本技术实施例中一种黑名单参数文件中的参数加载方法的实施例一的流程示意图。
58.本实施例中的一种黑名单参数文件中的参数加载方法,包括:
59.步骤101、响应于参数加载请求,获取待查询的查询参数。
60.本实施例中黑名单参数文件中的参数加载方法可以是在车道端用于运行收费软
件的计算机执行。上述的参数加载请求可以是由收费人员触发的,也可以是当车道端的摄像头采集到车辆信息后,由于摄像头连接计算机,由摄像头触发的。
61.可以理解的是,车辆之间颜色、车型、品牌都有可能存在相同,如果将这些参数作为查询参数,同一查询参数时可能查找到多个结果数据,要想最终确认还需要人工进行,因此本实施例中为了确保最终查询到的结果数据的唯一且准确,将车辆之间彼此不相同的参数(例如车辆对应的卡号、车牌等)作为查询参数进行结果数据的查询。
62.步骤102、获取预置结果文件,其中,预置结果文件是将黑名单参数文件分级压缩后得到的。
63.本实施例中,预置结果文件是将黑名单参数文件进行分级压缩后得到的,也就是说预置结果文件相较于黑名单参数文件而言,文件体积较小,这样计算机在加载预置结果文件和运行预置结果文件时,所需的内存较小,加载运行时的耗时较短。
64.可以理解的是,预置结果文件可以是部署在计算机上,如此在进行参数加载时可以直接从计算机的存储器中加载上述的结果文件;预置结果文件也可以是在服务器端,服务器端定时地将预置结果文件发送至计算机。
65.本实施例中对黑名单参数文件的文件格式不做限定,可以是json文件,也可以是txt文件。
66.步骤103、采用二分查找法,在预置结果文件中查询查询参数对应的结果数据。
67.获取到待查询的查询参数和查询基础的预置结果文件后,采用二分查找法在预置结果文件中查询查询参数对应的结果数据。可以理解的是,二分查找法查找效率高、耗时短,因此在查询查询参数对应的结果数据时具有较高的查询效率。
68.本实施例中的黑名单参数文件中的参数加载方法,在基于参数加载请求,获取到查询参数后,获取由黑名单参数文件分级压缩后的预置结果文件,由于将黑名单参数文件进行了分级压缩,此时的预置结果文件内存相对较小,且采用查找效率高、耗时短的二分查找法在预置结果文件中查询查询参数对应的结果数据,即本技术中在减小文件体积的同时提高了查询效率,实现了参数的快速查找、加载,从而解决了黑名单参数文件过大时,导致车道端的收费软件加载参数耗时过长,影响正常的收费功能的技术问题。
69.以上为本技术实施例提供的一种黑名单参数文件中的参数加载方法的实施例一,以下为本技术实施例提供的一种黑名单参数文件中的参数加载方法的实施例二。
70.请参阅图2,图2为本技术实施例中一种黑名单参数文件中的参数加载方法的实施例二的流程示意图。
71.本实施例中的一种黑名单参数文件中的参数加载方法,包括:
72.步骤201、响应于参数加载请求,获取待查询的查询参数。
73.需要说明的是,步骤201的描述和实施例一中步骤101的描述相同,具体可以参见上述步骤101的描述,在此不再赘述。
74.步骤202、获取预置结果文件,其中,预置结果文件是将黑名单参数文件分级压缩后得到的。
75.需要说明的是,将黑名单参数文件进行分级压缩便可得到预置结果文件,为了便于理解,本实施例中具体说明预置结果文件的配置过程,包括:
76.获取黑名单参数文件;
77.根据黑名单参数文件对应的文件参数,创建预置结果文件对应的文件头;
78.根据文件头中的主键字段和保留字段,对黑名单参数文件进行分级,得到预置结果文件;
79.其中,查询参数和主键字段为同一参数数据。
80.可以理解的是,由于在进行参数加载时,用来查询参数的是查询参数,而对黑名单参数文件进行分级时的分级依据为主键字段,为了确保能够通过查询参数在预置结果文件中查询到应有的数据,查询参数和主键字段应为同一参数数据。主键字段也即进行参数加载时的索引依据,而保留字段对应的是参数加载时加载的数据内容,因此根据主键字段和保留字段,对黑名单参数文件进行分级,得到预置结果文件。
81.具体地,本实施例中根据文件头中的主键字段和保留字段,对黑名单参数文件进行分级,具体包括:
82.根据文件头中的主键字段,将黑名单参数文件中与主键字段对应的索引字段进行拆分,得到分级索引;
83.在各分级索引中,记录该分级索引的下一级分级索引;
84.在最后一级分级索引中,根据文件头中的保留字段,记录该分级索引对应的数据内容。
85.需要说明的是,在各分级索引中还需要记录该分级索引下下一分级索引的数量。
86.可以理解的是,通过分级存储的方式,避免了逐个记录时数据的重复存储,且分级存储能确保数据的完整记录。
87.步骤203、采用二分查找法,利用查询参数在预置结果文件中查询。
88.本实施例中,采用二分查找法,利用查询参数在预置结果文件中查询,具体包括:
89.采用二分查找法,逐级从预置结果文件中的分级索引中进行查找。
90.步骤204、当预置结果文件中,存在查询参数对应的数据内容时,将该数据内容作为查询参数对应的结果数据。
91.当在预置结果文件中查找到查询参数对应的数据内容时,说明查询参数对应的用户为黑名单用户,此时返回预置结果文件中存储的该黑名单用户的相关数据内容。
92.步骤205、当预置结果文件中,不存在查询参数对应的数据内容时,将未查找到数据作为查询参数对应的结果数据。
93.当预置结果文件中不存在查询参数对应的数据内容时,说明查询参数对应的用户不是黑名单用户,那存储黑名单用户相关数据内容的预置结果文件中也就不存在该查询参数对应的相关数据内容,此时将未查找到数据作为查询参数对应的结果数据。
94.本实施例中的黑名单参数文件中的参数加载方法,在基于参数加载请求,获取到查询参数后,获取由黑名单参数文件分级压缩后的预置结果文件,由于将黑名单参数文件进行了分级压缩,此时的预置结果文件内存相对较小,且采用查找效率高、耗时短的二分查找法在预置结果文件中查询查询参数对应的结果数据,即本技术中在减小文件体积的同时提高了查询效率,实现了参数的快速查找、加载,从而解决了黑名单参数文件过大时,导致车道端的收费软件加载参数耗时过长,影响正常的收费功能的技术问题。
95.以上为本技术实施例提供的一种黑名单参数文件中的参数加载方法的实施例二,以下为本技术实施例提供的一种黑名单参数文件中的参数加载方法的应用例。
96.本应用例中的黑名单参数文件中的参数加载方法包括:
97.准备步骤:把部中心下发的黑名单参数文件的zip压缩文件,解压并解析为json文件,接着转换为txt文件(以下简称为黑名单参数文件),本应用例中黑名单参数文件的部分截图如图3所示,大小约为32m。
98.此时黑名单参数文件中第一行是字段名,第二行开始是按字段名排序的字段值,可以是

\t’或者

,’分隔。
99.步骤一:获取黑名单参数文件。此时,获取的黑名单参数文件的文件参数可以包括:
100.(1)黑名单参数文件所在路径;
101.(2)分隔符,即

\t’或者

,’102.(3)用作分级依据的主键字段和分级依据,一般是卡号字段,例如:cardid(h:4,8,8);
103.(4)保留字段(数量可以是一个或多个),例如:type,status,version。
104.步骤二:根据步骤一接收到的黑名单参数文件,创建预置结果文件对应的文件头。本应用例中文件头中的内容包括:
105.(1)第一行:黑名单参数文件的文件名、除第一行外文件头的行数;
106.(2)第二行:生成时间;
107.(3)第三行:黑名单参数文件大小;
108.(4)第四行:主键字段、保留字段;
109.(5)第五行:黑名单参数文件中的字段个数
110.(6)第六行:黑名单参数文件中的总记录数。
111.对图3所示黑名单参数文件创建的文件头具体如图4所示。
112.步骤三:根据文件头中的主键字段和保留字段,对黑名单参数文件进行分级,得到预置结果文件。
113.(1)根据主键字段将黑名单参数文件中的数据进行排序,方便后续数据分级的进行;
114.(2)把索引字段根据主键字段进行拆分,得到多个分级索引。例如卡号字段cardid(h:4,8,8)时,索引字段是cardid,以卡号“11010808220000134443”为例,分级方式是第0位开始,4位长度的“1101”是一级索引;第4位开始,8位长度“08082200”是二级索引;第12位开始,8位长度“00134443”是三级索引;
115.(3)记录好索引头,内容包括索引级别、上一级索引内容和此分级索引下的记录数
116.(4)记录本级索引下的索引内容串;
117.(5)如果是最后一级索引,那在索引串后面记录数据内容,数据内容字段来自保留字段。
118.对图3所示黑名单参数文件创建的一级分级索引的部分截图如图5所示、二级分级索引的部分截图如图6所示、三级分级索引和数据的部分截图如图7所示。
119.步骤四,预置结果文件的使用
120.步骤1:打开上面步骤生成的预置结果文件,先读取文件头,步骤为:
121.(1)读取第一行,主要得到文件头的行数;
122.(2)根据上一步读取到的行数,读取文件头,得到主键字段、保留字段、记录数等信息。
123.步骤2:把预置结果文件加载到内存里,为查询做准备;
124.步骤3:查询时根据查询参数,逐级从分级索引中快速定位到卡号所在的最后一级索引所在行,进而找到所需要的数据。
125.与现有技术相比,本应用例具有以下优点:
126.1、运用分级索引,把最重要的查找条件的内容精简的同时,还能提高查询速度;
127.2、通过保留字段的设置,把不需要的字段剔除,且优化存储结构,进一步减小体积;
128.3、没有借助第三方的数据库系统,不用担心数据库系统带来的稳定性问题、额外内存需求和额外的安装维护工作量。
129.以上为本技术实施例提供的一种黑名单参数文件中的参数加载方法的应用例,以下为本技术实施例提供的一种黑名单参数文件中的参数加载装置的实施例。
130.请参阅图8,图8为本技术实施例中一种黑名单参数文件中的参数加载装置的实施例的结构示意图。
131.本实施例中一种黑名单参数文件中的参数加载装置包括:
132.第一获取单元801,用于响应于参数加载请求,获取待查询的查询参数;
133.第二获取单元802,用于获取预置结果文件,其中,预置结果文件是将黑名单参数文件分级压缩后得到的;
134.查询单元803,用于采用二分查找法,在预置结果文件中查询查询参数对应的结果数据。
135.进一步地,预置结果文件的配置过程包括:
136.获取黑名单参数文件;
137.根据黑名单参数文件对应的文件参数,创建预置结果文件对应的文件头;
138.根据文件头中的主键字段和保留字段,对黑名单参数文件进行分级,得到预置结果文件;
139.其中,查询参数和主键字段为同一参数数据。
140.进一步地,根据文件头中的主键字段和保留字段,对黑名单参数文件进行分级,具体包括:
141.根据文件头中的主键字段,将黑名单参数文件中与主键字段对应的索引字段进行拆分,得到分级索引;
142.在各分级索引中,记录该分级索引的下一级分级索引;
143.在最后一级分级索引中,根据文件头中的保留字段,记录该分级索引对应的数据内容。
144.进一步地,查询单元803具体包括:
145.查询子单元,用于采用二分查找法,利用查询参数在预置结果文件中查询;
146.第一判定子单元,用于当预置结果文件中,存在查询参数对应的数据内容时,将该数据内容作为查询参数对应的结果数据;
147.第二判定子单元,用于当预置结果文件中,不存在查询参数对应的数据内容时,将
未查找到数据作为查询参数对应的结果数据。
148.进一步地,查询子单元,具体用于采用二分查找法,逐级从预置结果文件中的分级索引中进行查找。
149.本实施例中的黑名单参数文件中的参数加载方法,在基于参数加载请求,获取到查询参数后,获取由黑名单参数文件分级压缩后的预置结果文件,由于将黑名单参数文件进行了分级压缩,此时的预置结果文件内存相对较小,且采用查找效率高、耗时短的二分查找法在预置结果文件中查询查询参数对应的结果数据,即本技术中在减小文件体积的同时提高了查询效率,实现了参数的快速查找、加载,从而解决了黑名单参数文件过大时,导致车道端的收费软件加载参数耗时过长,影响正常的收费功能的技术问题。
150.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
151.本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
152.应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
153.在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
154.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
155.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
156.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用
时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文全称:read

only memory,英文缩写:rom)、随机存取存储器(英文全称:random access memory,英文缩写:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
157.以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1