掌桥专利:专业的专利平台
掌桥专利
首页

一种基于配置权限的数据采集方法及装置

文献发布时间:2023-06-19 10:08:35


一种基于配置权限的数据采集方法及装置

技术领域

本申请涉及大数据技术领域,具体涉及一种基于配置权限的数据采集方法及装置。

背景技术

互联网的飞速发展将社会带入数据高度发达且公开的信息时代,数据对于企业经营、政府决策以及社会动态分析等具有极其重要的作用。某些业务平台每天都会有大量的用户访问,从而产生大量的访问日志数据,比如电商系统的浏览,加入购物车、下订单、付款等一系列流程都可以通过埋点获取到用户的访问路径以及访问时长等相关数据;再比如智能穿戴设备,实时采集用户的血压、脉搏、心率等数据实时上报到云端。通过对这些日志信息进行采集,然后进行数据分析,可以得到很多业务价值,挖掘相应业务平台日志数据中的潜在价值。

基于大数据平台的互联网数据采集技术就是收集日志数据提供离线和在线的实时分析使用,目前的数据采集策略是依据设定的目标数据进行采集,但是随着数据管理安全条例逐渐完善,数据采集的限定越来越严格,若获取的目标数据中存在敏感数据会导致应用程序无法正常运行。

发明内容

本申请提供了一种基于配置权限的数据采集方法及装置,用于通过移动设备的开放权限进行灵活的数据采集。

本申请第一方面提供了一种基于配置权限的数据采集方法,包括:

软件开发工具包(Software Development Kit,SDK)与服务器建立长连接;

所述SDK采集第一数据字段和第二数据字段,所述第一数据字段为推送必要字段,所述第二数据字段为推送非必要字段;

所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量;

若所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息,所述配置更改信息为所述第二标识变量;

所述SDK按照所述配置更改信息更新所述第一数据字段和第二数据字段,并向所述服务器发送更新结果信息;

所述SDK采集更新后的第一数据字段和第二数据字段;

所述SDK按照所述服务器的数据格式上报所述更新后的第一数据字段和第二数据字段。

可选的,所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量之后,若所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息之前,所述方法还包括:

若所述请求体中的第一标识变化与所述服务器中存储介质的第二标识变量一致时,所述SDK按预设时间将所述第一数据字段与所述第二数据字段上报至所述服务器。

可选的,所述SDK按照所述服务器的数据格式上报所述更新后的第一数据字段和第二数据字段,包括;

所述SDK按预设时间将所述第一数据字段与所述第二数据字段上报至所述服务器。

可选的,其特征在于,若采集的所述第二数据字段中的某些数据不成功时,则上报空数据。

本申请第二方面提供了一种基于配置权限的数据采集方法,包括:

服务器与SDK建立长连接;

所述服务器接收所述SDK发送的上报请求;

所述服务器判断所述SDK的上报接口中请求体中的第一标识变量与存储介质中的第二标识变量是否一致;

若否,则向所述SDK发送同步配置更改信息,所述配置更改信息为所述第二标识变量;

若是,则将上报的数据存储到目标文件中。

可选的,所述将上报的数据存储到目标文件中,包括:

所述服务器将所述目标数据整理成表格形式;

所述服务器将所述表格写入指定位置的文件中;

或,

所述服务器将所述表格写入Kafka中。

可选的,所述服务器将所述表格写入指定位置的文件中,包括:

所述服务器将所述表格保存至默认文件中,所述默认文件的路径、文件名以及文件大小上限均为默认设置;

或,

所述服务器将所述表格保存至指定文件中,所述指定文件的路径、文件名以及文件大小上限均由用户设置;

所述服务器通过脚本定时压缩所述文件。

可选的,所述服务器能匹配不同应用程序的SDK的上报接口。

本申请实施例第三方面提供了一种基于配置权限的数据采集装置,包括:

第一连接单元,用于SDK与服务器建立长连接;

第一采集单元,用于所述SDK采集第一数据字段和第二数据字段,所述第一数据字段为推送必要字段,所述第二数据字段为推送非必要字段;

第一上报单元,用于所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量;

第一接收单元,用于当所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息,所述配置更改信息为所述第二标识变量;

配置单元,用于所述SDK按照所述配置更改信息更新所述第一数据字段和第二数据字段,并向所述服务器发送更新结果信息;

第二采集单元,用于所述SDK采集更新后的第一数据字段和第二数据字段;

第二上报单元,用于所述SDK按照所述服务器的数据格式上报所述更新后的第一数据字段和第二数据字段。

可选的,所述装置还包括:

第三上报单元,用于当所述请求体中的第一标识变化与所述服务器中存储介质的第二标识变量一致时,所述SDK按预设时间将所述第一数据字段与所述第二数据字段上报至所述服务器。

可选的,所述第二上报单元包括:

定时模块,用于所述SDK按预设时间将所述第一数据字段与所述第二数据字段上报至所述服务器。

本申请实施例第四方面提供了一种基于配置权限的数据采集装置,包括:

第二连接单元,用于服务器与SDK建立长连接;

第二接收单元,用于所述服务器接收所述SDK发送的上报请求;

判断单元,用于所述服务器判断所述SDK的上报接口中请求体中的第一标识变量与存储介质中的第二标识变量是否一致;

发送配置单元,用于当判断单元为否时,向所述SDK发送同步配置更改信息,所述配置更改信息为所述第二标识变量;

保存单元,用于当判断单元为是时,将上报的数据存储到目标文件中。

可选的,所述保存单元,包括:

整理模块,用于所述服务器将所述目标数据整理成表格形式;

第一保存模块,用于所述服务器将所述表格写入指定位置的文件中;

第二保存模块,用于所述服务器将所述表格写入Kafka中。

可选的,所述第一保存模块,包括:

第一保存子模块,用于所述服务器将所述表格保存至默认文件中,所述默认文件的路径、文件名以及文件大小上限均为默认设置;

第二保存子模块,用于所述服务器将所述表格保存至指定文件中,所述指定文件的路径、文件名以及文件大小上限均由用户设置;

压缩子模块,用于所述服务器通过脚本定时压缩所述文件。

本申请实施例第五方面提供了一种基于配置权限的数据采集装置,包括:

处理器、存储器、输入输出单元、总线;

所述处理器与所述存储器、所述输入输出单元以及所述总线相连;

所述处理器具体执行如下操作:

SDK与服务器建立长连接;

所述SDK采集第一数据字段和第二数据字段,所述第一数据字段为推送必要字段,所述第二数据字段为推送非必要字段;

所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量;

若所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息,所述配置更改信息为所述第二标识变量;

所述SDK按照所述配置更改信息更新所述第一数据字段和第二数据字段,并向所述服务器发送更新结果信息;

所述SDK采集更新后的第一数据字段和第二数据字段;

所述SDK按照所述服务器的数据格式上报所述更新后的第一数据字段和第二数据字段。

从以上技术方案可以看出,本申请通过将要采集的数据字段分为为第一数据字段与第二数据字段,其中第一数据字段为默认采集的必要字段,并且满足应用程序安全条例中的采集条件,第二数据字段的采集是根据移动设备的开放权限来进行采集,当遇到某些无法采集的数据时返回空数据至服务器,不会导致应用程序的崩溃,提高了数据采集过程中应用程序运行的稳定性。

附图说明

图1为本申请中基于配置权限的数据采集方法一个实施例流程示意图;

图2为本申请中基于配置权限的数据采集方法另一个实施例流程示意图;

图3为本申请中基于配置权限的数据采集方法另一个实施例流程示意图;

图4为本申请中基于配置权限的数据采集方法另一个实施例流程示意图;

图5为本申请中基于配置权限的数据采集方法另一个实施例流程示意图;

图6为本申请中基于配置权限的数据采集装置一个实施例结构示意图;

图7为本申请中基于配置权限的数据采集装置另一个实施例结构示意图;

图8为本申请中基于配置权限的数据采集装置另一个实施例结构示意图。

具体实施方式

本申请实施例提供了一种基于配置权限的数据采集方法及装置,用于通过移动设备的开放权限进行灵活的数据采集。

下面将结合本申请实施例中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

请参阅图1,本申请中基于配置权限的数据采集方法一个实施例包括:

101、SDK与服务器建立长连接;

当服务器需要对某应用程序采集相应数据时,服务器与相应的SDK建立长连接,在当前的连接上可以连续传输多个数据包,当传输的数据到达指定的大小时,本次传输结束。

102、所述SDK采集第一数据字段和第二数据字段,所述第一数据字段为推送必要字段,所述第二数据字段为推送非必要字段;

该SDK中预先设定了要采集的数据字段,数据字段为该数据的标识,其中第一数据字段为推送必要字段,第二数据字段中包含较多数据字段,在采集过程中需要依据移动终端的开放权限和服务器的指令来进行。

103、所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量;

该服务器接收SDK上报的数据要经过数据接口,所以SDK上报数据时要按照该服务器的数据格式进行上报,并且SDK在上报的请求体中增加第一标识变量,用来表示采集的第二数据字段。

104、若所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息,所述配置更改信息为所述第二标识变量;

该SDK发送请求后,若服务器接收该请求后判断到该请求体中的第一标识变量与该服务器中存储介质中的第二标识变量不一致时,该服务器发送第二标识变量值SDK中,使得SDK依据该同步配置信息更改采集的第二数据字段。

105、所述SDK按照所述配置更改信息更新所述第一数据字段和第二数据字段,并向所述服务器发送更新结果信息;

该SDK依据该配置更改信息更新要采集是数据字段后,向服务器发送更新的结果,若配置不成功的话,则服务器会再次发送配置更改信息直到配置成功再执行下一步骤。

106、所述SDK采集更新后的第一数据字段和第二数据字段;

步骤105配置成功后,SDK依据采集的数据字段进行对运行的应用程序进行数据采集。

107、所述SDK按照所述服务器的数据格式上报所述更新后的第一数据字段和第二数据字段。

在与服务器进行数据传输时,该SDK需要将上报的数据按照该服务器的数据格式要求进行转换。

本实施例中,依据自定义采集的数据字段对应用程序中的数据进行获取,并且采集是数据还根据移动终端的开放权限进行灵活的变换,这样可以依据用户设置的权限来采集数据,既符合网络数据安全的要求,同时还避免了获取到私密数据时导致应用程序崩溃的情况。

下面将对以上方法进行补充说明,请参阅图2,本申请中基于配置权限的数据采集方法另一个实施例包括:

201、SDK与服务器建立长连接;

202、所述SDK采集第一数据字段和第二数据字段,所述第一数据字段为推送必要字段,所述第二数据字段为推送非必要字段;

203、所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量;

本实施例中步骤201至203与前述实施例中步骤101至103类似,此处不再赘述。

204、若所述请求体中的第一标识变化与所述服务器中存储介质的第二标识变量一致时,所述SDK按预设时间将所述第一数据字段与所述第二数据字段上报至所述服务器;

该SDK发送请求后,若服务器接收该请求后判断该请求体中的第一标识变量与该服务器中存储介质中的第二标识变量是否一致,若一致时,该服务器返回确认可以发送的消息,该SDK将按照预设的时间将依据数据字段采集到的数据内容上报至服务器。

205、若所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息,所述配置更改信息为所述第二标识变量;

206、所述SDK按照所述配置更改信息更新所述第一数据字段和第二数据字段,并向所述服务器发送更新结果信息;

207、所述SDK采集更新后的第一数据字段和第二数据字段;

208、所述SDK按照所述服务器的数据格式并根据预设时间上报所述更新后的第一数据字段和第二数据字段。

本实施例中步骤205至208与前述实施例中步骤104至107类似,此处不再赘述。

以上实施例对基于配置权限的数据采集方法中SDK一侧进行了详细说明,下面将对服务器一侧的方法进行详细说明。

请参阅图3,本申请中基于配置权限的数据采集方法另一个实施例包括:

301、服务器与SDK建立长连接;

服务器要采集到移动终端应用程序中的相关数据,则服务器与该应用程序中集成的SDK建立长连接,在这个连接中进行数据传输,在应用程序关闭之前,会建立多个连接进行数据的传输。

302、所述服务器接收所述SDK发送的上报请求;

该服务器接收SDK发送的请求传输的指令,该服务器判断上报接口中的第一标识变量与该服务器中存储介质中的第二标识变量是否一致,第一标识变量表示移动终端的数据配置信息,第二标识变量表示该服务器要获取的数据信息。

303、所述服务器判断所述SDK的上报接口中请求体中的第一标识变量与存储介质中的第二标识变量是否一致,若否,则执行步骤304,若是,则执行步骤305;

该服务器将第一标识变量与第二标识变量进行对比,当该第一标识变量与该第二标识变量一致时,表示服务器要获取的信息与该移动终端对数据的开放权限是一致的,因此发送确定传输消息至该SDK,接着执行步骤305,否则执行步骤304。

304、向所述SDK发送同步配置更改信息,所述配置更改信息为所述第二标识变量;

服务器向该SDK发送经过判断后重新设定的要采集的第二数据字段信息,使得该SDK按照该信息更新覆盖掉本地的第二数据字段信息。

305、所述服务器将所述目标数据整理成表格形式;

由于SDK直接发送的数据是未经过整理分类的,因此为了能够对这些数据进行高效的使用,服务器需要将这些目标数据整理成表格的形式,方便后期的数据存储与分析。

306、所述服务器将所述表格保存至默认文件中,所述默认文件的路径、文件名以及文件大小上限均为默认设置;

该服务器将步骤305整理成表格形式的数据保存到相应的位置的文件中,需要说明的是,该数据可以按照默认的保存路径,既文件名、文件大小上限都为默认的方式,也可以自定义文件保存路径,既文件名、文件大小和文件路径等都按照使用者的设定来进行。

需要说明的是,除了将数据保存至相应的文件中,本申请还提供了将数据写入Kafka的数据保存形式,具体此处不做详细限定。

307、所述服务器通过脚本定时压缩所述文件。

在确定数据的储存位置后,服务器按照预设时间对该文件进行压缩,当该文件到达设置的文件大小上限时,则需要将数据保存至新的文件中。

下面对SDK侧与服务器侧之间的交互过程进行描述,请参阅图4,本申请中基于配置权限的数据采集方法另一个实施例包括:

401、建立长连接;

402、采集第一数据字段和第二数据字段的内容信息;

403、按照服务器的数据格式上报第一数据字段和第二数据字段,并在上报接口的请求体中增加提议表示变量;

404、当请求体中的第一标识变量与服务器中存储介质的第二标识变量不一致时;

405、发送同步配置更改信息;

406、按照配置更改信息更新第一数据字段和第二数据字段;

407、发送更新结果信息;

408、发送确定消息;

409、采集更新后的第一数据字段和第二数据字段的内容信息;

410、按照服务器的数据格式并根据预设时间上报更新后的第一数据字段和第二数据字段的内容信息;

411、服务器将所述目标数据整理成表格形式;

412、服务器通过脚本定时压缩所述文件。

上述实施例为服务器确定请求体中第一标识变量与第二标识变量不一致的情况,下面对第一标识变量与第二标识变量一致的情况进行描述,请参阅图5,本申请中基于配置权限的数据采集方法另一个实施例包括:

501、建立长连接;

502、采集第一数据字段和第二数据字段的内容信息;

503、按照服务器的数据格式上报第一数据字段和第二数据字段,并在上报接口的请求体中增加提议表示变量;

504、当请求体中的第一标识变量与服务器中存储介质的第二标识变量一致时;

505、发送确定信息;

506、采集第一数据字段和第二数据字段的内容信息;

507、按照服务器的数据格式并根据预设时间上报第一数据字段和第二数据字段的内容信息;

508、服务器将所述目标数据整理成表格形式;

509、服务器通过脚本定时压缩所述文件。

以上实施例中的方法可以参考前述方法实施例中的对应过程,在此不再赘述。

请参阅图6,本申请中基于配置权限的数据采集装置一个实施例包括:

第一连接单元601,用于SDK与服务器建立长连接;

第一采集单元602,用于所述SDK采集第一数据字段和第二数据字段,所述第一数据字段为推送必要字段,所述第二数据字段为推送非必要字段;

第一上报单元603,用于所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量;

第一接收单元604,用于当所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息,所述配置更改信息为所述第二标识变量;

配置单元605,用于所述SDK按照所述配置更改信息更新所述第一数据字段和第二数据字段,并向所述服务器发送更新结果信息;

第二采集单元606,用于所述SDK采集更新后的第一数据字段和第二数据字段;

第二上报单元607,用于所述SDK按照所述服务器的数据格式上报所述更新后的第一数据字段和第二数据字段。

第三上报单元608,用于当所述请求体中的第一标识变化与所述服务器中存储介质的第二标识变量一致时,所述SDK按预设时间将所述第一数据字段与所述第二数据字段上报至所述服务器。

本实施例中第二上报单元607包含有:

第一定时模块,用于所述SDK按预设时间将所述第一数据字段与所述第二数据字段上报至所述服务器。

本实施例中第三上报单元608包含有:

第二定时模块,用于所述SDK按预设时间将更新后的所述第一数据字段与所述第二数据字段上报至所述服务器。

请参阅图7,本申请中基于配置权限的数据采集装置另一个实施例包括:

第二连接单元701,用于服务器与SDK建立长连接;

第二接收单元702,用于所述服务器接收所述SDK发送的上报请求;

判断单元703,用于所述服务器判断所述SDK的上报接口中请求体中的第一标识变量与存储介质中的第二标识变量是否一致;

发送配置单元704,用于当判断单元为否时,向所述SDK发送同步配置更改信息,所述配置更改信息为所述第二标识变量;

保存单元705,用于当判断单元为是时,将上报的数据存储到目标文件中。

本实施例中保存单元705,包含有:

整理模块7051,用于所述服务器将所述目标数据整理成表格形式;

第一保存模块7052,用于所述服务器将所述表格写入指定位置的文件中;

第二保存模块7053,用于所述服务器将所述表格写入Kafka中。

本实施例中第一保存模块7052,包含有:

第一保存子模块70521,用于所述服务器将所述表格保存至默认文件中,所述默认文件的路径、文件名以及文件大小上限均为默认设置;

第二保存子模块70522,用于所述服务器将所述表格保存至指定文件中,所述指定文件的路径、文件名以及文件大小上限均由用户设置;

压缩子模块70523,用于所述服务器通过脚本定时压缩所述文件。

请参阅图8,本申请中基于配置权限的数据采集装置另一个实施例包括:

处理器801、存储器802、输入输出单元803、总线804;

所述处理器801与所述存储器802、所述输入输出单元803以及所述总线804相连;

所述处理器801具体执行如下操作:

SDK与服务器建立长连接;

所述SDK采集第一数据字段和第二数据字段,所述第一数据字段为推送必要字段,所述第二数据字段为推送非必要字段;

所述SDK按照所述服务器的数据格式上报所述第一数据字段和所述第二数据字段,并在上报接口的请求体中增加第一标识变量;

若所述请求体中的第一标识变量与所述服务器中存储介质的第二标识变量不一致时,所述SDK接收所述服务器发送的同步配置更改信息,所述配置更改信息为所述第二标识变量;

所述SDK按照所述配置更改信息更新所述第一数据字段和第二数据字段,并向所述服务器发送更新结果信息;

所述SDK采集更新后的第一数据字段和第二数据字段;

所述SDK按照所述服务器的数据格式上报所述更新后的第一数据字段和第二数据字段。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。

相关技术
  • 一种基于配置权限的数据采集方法及装置
  • 一种基于元数据的数据权限配置方法及系统
技术分类

06120112437260