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

一种用于一卡通的APP信息推送系统、方法及介质

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


一种用于一卡通的APP信息推送系统、方法及介质

技术领域

本发明涉及一种用于一卡通的APP信息推送系统、方法及介质,属于数据处理技术领域。

背景技术

活跃用户的数量是APP生存的基础,用户可以为产品带来价值,除了APP强性需求功能以外,信息推送也是获得用户特别关注和启动APP激活的好方法。多数用户只会使用APP中的少数功能点,消息传递在一定程度上可以成为APP内容服务的一部分,提高用户使用率和用户的使用感受。唤醒沉睡的使用者,提高留存率。

现阶段APP暂未将用户产生的数据做出关联分析以产生额外的价值为用户提供服务,如果不将数据通过有效的知识体系利用起来,那么静态的信息无法使创造者、使用者和管理者获取更大的收益。此外,用于分析的数据中,由APP内部所产生的行为分析数据较少,大量数据是通过外部非用户行为产生的事实属性。用户需求分为固有需求、长期需求和随机需求,目前通过外接三方数据(诊断信息、工作地点、房产证明等)相对明确的了解用户的基本属性和需求,也可以通过学校、子女等信息了解用户的长期需求,但针对用户的随机性需求则需要用户近期的行为动作作为生产材料,且随机性需求彼此关联较少,故很难进行准确预测。

发明内容

针对上述问题,本发明的目的是提供了一种用于一卡通的APP信息推送系统、方法及介质,其针对APP内部所产生的行为分析数据进行分析,提高了对随机性需求分析的准确率,从而提高了用户对于APP的使用感受。

为实现上述目的,本发明采取以下技术方案:一种用于一卡通的APP信息推送系统,包括:数据获取模块、数据库、ETL模块、模型模块和推送模块,数据获取模块,用于获取用户的数据和行为;数据库,用于存储和评估用户的数据和行为;ETL模块,用于根据数据处理模型对用户的数据和行为进行加工处理;模型模块,用于对经过ETL模块处理的用户的数据和行为带入数据处理模型中进行聚类计算,将数据和行为分为若干类别;推送模块,用于根据当前用户的数据和行为类别想其推送信息。

进一步,数据获取模块获取的数据包括静态数据和动态数据,其中静态数据从一卡通中提取,使用一卡通中的源数据库的数据,首次采用全量处理的方式获取,后续的日常数据采集采用以询问数据变化的方式获取。

进一步,ETL模块包括在数据和行为经过计算前,处理数据和行为使其与数据处理模型同步;在数据和行为经过计算处理后,标准化数据和行为的输出数据格式。

进一步,ETL模块的ETL过程通过批处理方式或流式处理方式完成。

进一步,ETL模块在数据库中的数据抽取范围由一卡通业务系统制定,一卡通业务系统与ETL模块通过确定数据规范来实现数据交互,数据抽取的过程为:一卡通业务系统确定数据库的物理结构列表,通过ETL模块对数据生成文件落地后以FTP方式或在权限许可的前提下,将数据拉入ETL模块,ETL模块每天或定时以增量的形式抽取一卡通业务系统的数据,并形成数据文件。

进一步,在进行数据抽取前,需要进行数据检查和清洗工作,数据检查和清洗工作包括以下步骤:检查任务状态,设置加载作业标志位,当错误时程序自动报出并停止处理此作业及相关作业的后续操作;检查执行日志,通过数据入仓和处理数的对比,掌握遗漏情况;数据清洗仅限于影响数据加载的严重错误,对错误字段的内容进行清洗,并生成清洗日志。

进一步,若干类别的标签通过用户浏览过的内容标签生成,同时过滤掉用户停留时间短的点击;并对用户的不同行为设置相应的权重,与测试时间间隔短的行为的权重高于与测试时间间隔长的行为的权重;若推荐的内容用户没有查看则降低相应标签的权重。

进一步,推送模块采用短链接的方式进行信息推送,推送模块无法主动被用户使用,用户登录App时用户客户端隐式向服务器发送请求,在接到请求后服务器响应请求并调用推送模块,为用户发送推送信息。

本发明还公开了一种用于一卡通的APP信息推送方法,采用上述任一种的用于一卡通的APP信息推送系统,包括以下步骤:S1将用户的数据和行为拉取至服务器规定目录下;S2将服务器规定目录下的用户的数据和行为加载保存至数据库中;S3依据数据处理模型逻辑,对数据和行为进行批次处理,并输入数据处理模型中进行计算,从而获得数据和行为的分类;S4根据分类结果获得推送信息,并将推送信息推送给对应的用户。

本发明还公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行以实现上述的用于一卡通的APP信息推送方法。

本发明由于采取以上技术方案,其具有以下优点:1、本方案针对APP内部所产生的行为分析数据进行分析,提高了对随机性需求分析的准确率,从而提高了用户对于APP的使用感受。2、为了得出用户的需求,本发明除了接入用户固有信息外还需要在APP内部的各项功能处埋点采集用户的行为。3、获取数据的最终方式是收集到用户点击某个模块用到了哪些信息,系统将此信息持久化,并以此为参数在算法加工后落入相应的模型,并将符合用户喜好的消息推荐给用户。4、本发明可以获得请求接口的统计,即可以了解用户对APP内部某些功能有更强烈的需求,再分析此类信息中实时性需求不高的信息,创建固定数据模型和维度数据,采用数据批量处理的方式先满足业务上的分类。

附图说明

图1是本发明一实施例中用于一卡通的APP信息推送系统的示意图;

图2是本发明一实施例中用于一卡通的APP信息推送系统的界面图;

图3是本发明一实施例中用于一卡通的APP信息推送方法的流程图。

具体实施方式

为了使本领域技术人员更好的理解本发明的技术方向,通过具体实施例对本发明进行详细的描绘。然而应当理解,具体实施方式的提供仅为了更好地理解本发明,它们不应该理解成对本发明的限制。在本发明的描述中,需要理解的是,所用到的术语仅仅是用于描述的目的,而不能理解为指示或暗示相对重要性。

本发明涉及一种用于一卡通的APP信息推送系统、方法及介质,其通过针对APP内部所产生的数据和行为进行采集,并将其带入数据处理模型,通过数据处理模型计算数据和行为类型,根据确定的行为类型向该类型下的用户发送相应的推送信息,是的推送信息更加符合用户的兴趣和需求,提高用户的使用感受。

实施例一

本实施例公开了一种用于一卡通的APP信息推送系统,如图1所示,包括:数据获取模块、数据库、ETL模块、模型模块和推送模块。

数据获取模块,用于获取用户的数据和行为。

数据获取模块获取的数据包括静态数据和动态数据,其中静态数据是App通过外围系统对接和用户在使用App需要提交的部分用户信息,从一卡通中提取,使用一卡通中的源数据库的数据,首次采用全量处理的方式获取,后续的日常数据采集采用以询问数据变化的方式获取,通过询问数据变化的方式对系统产生最小的压力,在数据计算中也因为数据集的量较小而减轻对运算程序的压力。数据获取模块可以提供用户、访问模块、时间等相关信息,采用统计用户对于某APP的请求为获取作为补充维度分析的用户数据。

数据库,用于存储和评估用户的数据和行。数据库保存推送策略配置、成功/失败历史、发送信息等内容。

ETL模块,用于根据数据处理模型对用户的数据和行为进行加工处理。

当采集的数据和行为被存储至数据库后,需要依据数据模型进行加工和规则处理,而数据加工处理在此系统有两个介入点:即ETL模块包括在数据和行为经过计算前,处理数据和行为使其与数据处理模型同步;在数据和行为经过计算处理后,标准化数据和行为的输出数据格式。

ETL模块的ETL过程通过批处理方式或流式处理方式完成。其中,批处理主要适用于所有或大部分已落地的静态离线数据进行查询或处理,如查询已经在数据结构中的信息和使用静态的数据进行分析,针对的是大批量数据(如GB或者PB级别),所需的时间一般是几分钟至几小时。流处理则对实时或即时的信息更加适用,如用户正在搜索或查询过程中产生的动态数据实时或即时分析和数据处理,针对的是单条记录或包含几条记录的微批数据(如KB或者MB)。流处理所需的时间几毫秒至几秒。流处理更小巧和快速,批处理对应的数据范围更大量更多,二者对应两种方法,一种是批量处理方式,另一种是即时处理方式。

批量处理方式,可以理解为统一处理,多在业务请求空闲时采用调度方式批量或大量运行。这种方式不会对业务系统和程序产生功能性影响,也不会对数据库产生影响,但对数据应用的时效性有一定影响。一般这种方式多实施在实时性要求较低的场景,运用技术手段也多样,工具如:KETTLE;组件如:Sqoop;也可采用开发语言如:JAVA/PYTHON/PERL等;也可采用关系型或非关系型数据库本身的SQL语言,技术冗余度较高。本实施例中优选采用批量处理的方式。

即时处理方式,对象为数据接口,当用户请求数据或录入数据时,即将数据按既定标准格式进行归类和标准化,并实现数据落地,此种方式在数据大量请求时会对系统反应时效性产生一定影响,但为后续的数据分析节省了大量的时间和资源。一般这种方式多采用在实时性要求较高的场景,相对的技术要求相对较高,一般技术应用为storm或Flume批量处理,也可以实现Hadoop的Map层实现自定义清洗。

考虑到安全性和保密性等原因,ETL模块在数据库中的数据抽取范围由一卡通业务系统制定,一卡通业务系统与ETL模块通过确定数据规范来实现数据交互,数据抽取的过程为:一卡通业务系统确定数据库的物理结构列表,通过ETL模块对数据生成文件落地后以FTP方式或在权限许可的前提下,将数据拉入ETL模块,ETL模块每天或定时以增量的形式抽取一卡通业务系统的数据,并形成数据文件。接口抽取的好处为:若读取失败不会影响ETL数据库内的数据,只需重新抽取。使用数据文件进行的任务失败可以重新运行,对其他任务影响较小。接口文件可以长时间保存。使用接口文件可以很方便地进行数据质量验证。

在进行数据抽取前,需要进行数据检查和清洗工作,数据检查的目的是为了防止数据源的错误,并生成信息报告。这样的好处是尽快解决问题、避免无意义工作和提升系统数据质量。在数据加载的数据检查是检查数据按规则加载的正确性。数据检查和清洗工作包括以下步骤:检查任务状态,设置加载作业标志位,当错误时程序自动报出并停止处理此作业及相关作业的后续操作;检查执行日志,通过数据入仓和处理数的对比,掌握遗漏情况;明确了解一个作业应处理数据量,实际处理数据量,哪些数据没有被处理并报出错误结果,常见的错误结果有违反约束,格式化错误,数据重复等问题。数据清洗仅限于影响数据加载的严重错误,对错误字段的内容进行清洗,并生成清洗日志。清洗日志包括行数、字段等信息,以便对数据回溯源系统进行矫正处理,在加载过程中尽量保证数据的原始状态,不对数据进行清洗。

模型模块,用于对经过ETL模块处理的用户的数据和行为带入数据处理模型中进行聚类计算,将数据和行为分为若干类别。模型模块储存分析出的库表属性、分类标签、权值属性、标签种类、实施数据等内容。

若干类别的标签通过用户浏览过的内容标签生成,同时过滤掉用户停留时间短的点击;并对用户的不同行为设置相应的权重,与测试时间间隔短的行为的权重高于与测试时间间隔长的行为的权重;若推荐的内容用户没有查看则降低相应标签的权重。

推送模块,用于根据当前用户的数据和行为类别想其推送信息。

经过ETL加工处理过的数据,落入不同数据模型中,数据模型将对数据进行分类,同时对此类用户进行归类,并将同种类的信息推送给对应的用户。推送的方式结合一期一卡通功能、性能、硬件资源和用户操作等参考因素的基础上,推送模块采用短链接的方式进行信息推送,推送模块无法主动被用户使用,用户登录App时用户客户端隐式向服务器发送请求,在接到请求后服务器响应请求并调用推送模块,为用户发送推送信息。后端通过对用户分析提前分类用户和完成待推送内容,无须额外增加过多新的开发要素,此种方式不仅有益于当前系统的稳定性,而且不会额外占用数据和服务资源:短链接方案基于用户通过接口请求,将服务器数据拉取至用户本地应用并展示,遵循HTTP协议。优点是对服务器的资源占用较小;缺点是依赖用户对应用的操作,如若用户不使用App则不会发生精准推送的操作。

下面以一个具体实例对HTTP协议短链接的具体过程进行说明:首先,实例化URL对象,传入参数为请求的数据的网址。调用URL对象的open Connection方法将返回一个URLConnection对象,而URL Connection类为Http URL Connection类的父类,可强制转换为需要的Http URL Connection对象。通过获取的Http URL Connection对象设置连接的属性,例如set Request Method设置连接类型“GET”或“POST”、set Read Timeout设置读取超时时限等。获取响应码,响应码用于确认是否连接,若返回值为Http URL Connection.HTTP_OK(200)则连接成功。读取并解析输入流:通过Http URL Connection对象可以获取到一个输入流,将输入流的内容读取到本地,再进行解析。可以直接用JSONObject进行解析,也可以用第三方框架,推荐使用gson。gson解析普通json对象:gson的使用依赖于JSONObject,通过JSONObject对象的getString方法,以字符串形式获取相应数据,而后将其解析为指定类。gson解析数组形式数据:解析数组形式的数据,步骤与普通json对象基本一致,不同的是,这里fromJson方法的第一个参数为满足json数组形式的字符串,第二个参数则为一个Type对象,而Type对象需通过TypeToken对象的getType方法获取。将数据传递回主线程:由于网络操作不能在主线程中进行,而子线程又不允许对UI进行操作,因此需要将解析的数据传递回主线程。

如图2所示,为本实施例中系统的操作界面,数据系统目前应采用定向信息抓取,定向信息分类(用户和推送信息),在线用户编辑等形式,即定期按类维护推送信息,定期按类维护推送群体,按条件发送预编译信息。推送平台以可视化的形式展现出来,可作为一个辅助系统外挂于一卡通应用上。消息推送系统的推送内容可以是自编的网页,也应该可以通过发送内容引导至原内容的详情页。将模型分类的不同消息和不同用户群体通过勾选等系列操作有机的联系在一起,以保证某标签信息所接收的群体即是此部分用户所关心的。反向操作,以用户为群体亦可关联到同类标签的信息。系统可以自定义消息的发送,针对某群体或所有群体发送可制定的信息;当发送信息错时,可及时回撤消息。可以配置信息库中的信息对群体发送的频率,以小时/天和自定义时间频度为单位,但不可重复发送同种信息。用户点击查看系统发送的简介信息内容,可以直接通过内容内的网址跳转到系统信息来源的原网址。

下面以人气门诊推荐为例进行说明,如推荐:患者选择经验丰富的医院。分类标签为医院、门诊、科室、复诊和病患。以用户门诊所看科室的疾病分类为标的,统计每间医院的门诊对于每种疾病的诊查数,认为诊查最多医院的门诊科室临诊经验较为丰富,向经常发生门诊操作的用户推荐,其推荐的表格如表1所示。

表1人气门诊推荐表格

实施例二

基于相同的发明构思,本实施例公开了一种用于一卡通的APP信息推送方法,采用上述任一种的用于一卡通的APP信息推送系统,如图3所示,包括以下步骤:

S1将用户的数据和行为拉取至服务器规定目录下;

S2将服务器规定目录下的用户的数据和行为加载保存至数据库中;

S3依据数据处理模型逻辑,对数据和行为进行批次处理,并输入数据处理模型中进行计算,从而获得数据和行为的分类;

S4根据分类结果获得推送信息,并将推送信息推送给对应的用户。

实施例三

基于相同的发明构思,本实施例公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行以实现上述的用于一卡通的APP信息推送方法。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。上述内容仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围。

相关技术
  • 一种用于一卡通的APP信息推送系统、方法及介质
  • 一种基于用户定制化的手机APP信息推送方法及系统
技术分类

06120112607555