CN114443651A - 一种埋点数据到ods层的处理方法及装置 - Google Patents

一种埋点数据到ods层的处理方法及装置 Download PDF

Info

Publication number
CN114443651A
CN114443651A CN202111676126.7A CN202111676126A CN114443651A CN 114443651 A CN114443651 A CN 114443651A CN 202111676126 A CN202111676126 A CN 202111676126A CN 114443651 A CN114443651 A CN 114443651A
Authority
CN
China
Prior art keywords
service
file
directory
point data
buried point
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
CN202111676126.7A
Other languages
English (en)
Other versions
CN114443651B (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.)
Beijing Discovery Bay Technology Co ltd
Original Assignee
Beijing Discovery Bay 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 Beijing Discovery Bay Technology Co ltd filed Critical Beijing Discovery Bay Technology Co ltd
Priority to CN202111676126.7A priority Critical patent/CN114443651B/zh
Publication of CN114443651A publication Critical patent/CN114443651A/zh
Application granted granted Critical
Publication of CN114443651B publication Critical patent/CN114443651B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2272Management thereof
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请涉及一种埋点数据到ODS层的处理方法及装置,方法包括:将从业务获取的埋点数据根据数据来源和业务种类分类保存在不同的业务文件;将每个业务文件预处理为kv格式;按照预设规则根据kv格式的key值生成每个业务文件的业务路径,并将value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,与历史埋点数据聚合;根据第一目录结构将每个业务的所述业务路径指定给对应数据来源的外部分区表的对应分区。本申请简化ODS层数据表的管理、提高ODS层埋点数据处理效率以及可靠性。

Description

一种埋点数据到ODS层的处理方法及装置
技术领域
本申请涉及ODS层源数据处理技术的领域,尤其是涉及一种埋点数据到ODS层的处理方法及装置。
背景技术
在使用埋点数据时,不同业务之间的数据在逻辑上是独立使用的,同时每个业务还有上线(上架)和下线(下架)的区分,如果不同业务的埋点数据不加区分就保存,则存储的埋点数据使用起来极就会为困难。
因此,在ODS(Operational Data Store,可操作型数据存储)层存储从业务获取的埋点数据时,会为每个业务进行建表,由于业务线比较多,表的数量也比较多,而且业务线增加就需要增加表,久而久之ODS层源数据的数据表数量巨大,不易管理,导致复杂的管理问题出现。
发明内容
为了在业务埋点数据同步过程中减少ODS层数据表的数量,简化ODS层源数据的数据表的管理以及提高数据埋点数据的处理效率以及安全性,本申请提供了一种埋点数据到ODS层的处理方法及装置。
本申请提供的一种埋点数据到ODS层的处理方法采用如下的技术方案:
第一方面,本申请提供一种埋点数据到ODS层的处理方法,采用如下的技术方案:
一种埋点数据到ODS层的处理方法,包括:
将从业务获取的埋点数据根据数据来源和业务种类分类保存在不同的业务文件;其中,所述数据来源包括来自前端和来自后端;
将每个所述业务文件预处理为kv格式;其中,key值为所述业务文件对应的存储路径,value值为所述业务文件中的埋点数据;
按照预设规则根据所述key值生成每个所述业务文件的业务路径,并将所述value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,与历史埋点数据聚合;
根据所述第一目录结构将每个业务的所述业务路径指定给对应数据来源的外部分区表的对应分区;其中,所述外部分区表包括前端的外部分区表和后端的外部分区表,并以业务线为每张所述外部分区表的分区键。
可选的,所述将每个所述业务文件预处理为kv格式采用sparkStreaming将所述业务文件格式预处理为kv格式。
可选的,所述业务路径包括key值和生成日期。
可选的,所述将所述value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,包括:
识别所述value值对应所述业务文件的数据来源;
识别value值对应业务的业务种类;
如果数据来源为前端,在前端的所述第一目录下查找与所述业务对应的前端子目录,并将value值存储在所述前端子目录下;
如果数据来源为后端,在后端的所述第一目录下查找与所述业务对应的后端子目录,将value值存储在所述后端子目录下。
可选的,所述方法通过重写SaveAsHadoopFile方法,将每个业务文件按照业务种类保存在对应业务的第一目录下。
可选的,在所述按照预设规则根据所述key值生成每个所述业务文件的业务路径,并将所述value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,与历史埋点数据聚合之后,还包括:
重新加载每个所述第一目录下包括所有埋点数据的文件,并对获取的文件压缩存储在指定的第二目录下。
可选的,所述方法使用hive的MSCK REPAIR TABLE完成根据每个所述第一目录结构将每个业务的所述业务路径指定给每张所述外部分区表的对应分区。
可选的,所述业务文件包括不同应用的应用文件;所述将从业务获取的埋点数据根据数据来源和业务种类分类保存在不同的业务文件,包括:
将从业务获取的埋点数据根据来源和业务种类分类保存在不同的业务文件;
将所述业务文件中的埋点数据根据应用种类分类保存在对应的所述应用文件中。
可选的,所述将每个所述业务文件预处理为kv格式包括:
将每个所述应用文件预处理为kv格式;其中,key值为所述应用文件对应的存储路径,value值为所述应用文件中的埋点数据;
将每个所述业务文件预处理为kv格式。
第二方面,本申请提供一种埋点数据到ODS层的处理装置采用如下的技术方案:
一种埋点数据到ODS层的处理装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述一种埋点数据到ODS层的处理方法。
综上所述,本申请包括以下至少一种有益技术效果:
1.本申请数据来源建立了两张外部分区表,不会再有数据表的级别变化,简化ODS层数据表的管理;
2.构建包括了所有业务的埋点数据的第一目录,再通过第一目录的结构完成自动生成外部分区表业务路径的指定,不需要手动指定,不仅有效提高ODS层埋点数据处理效率,而且与业务上线和业务下线解耦,埋点数据到ODS层的抽取不再受业务上线和业务下线的影响,提高埋点数据到ODS层处理的可靠性。
附图说明
图1是本申请实施例提供的一种埋点数据到ODS层的处理方法的流程图;
图2是本申请实施例提供的一种埋点数据到ODS层的处理装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图1-2及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请实施例公开一种埋点数据到ODS层的处理方法。参照图1,包括以下步骤:
步骤S100、将从业务获取的埋点数据根据来源和业务种类分类保存在不同的业务文件;即从业务获取的埋点数据包括A业务的埋点数据、B业务的埋点数据和C业务的埋点数据,那么此次获取的埋点数据的业务种类为A业务、B业务和C业务,将A业务的埋点数据保存至A业务文件、B业务的埋点数据保存至B业务文件、C业务的埋点数据保存至C业务文件。
步骤S200、将每个业务文件预处理为kv格式;其中,key值为业务文件对应的存储路径,value值为业务文件中的埋点数据本身。在本实施例中,使用sparkStreaming将业务文件格式预处理为kv格式。
步骤S300、根据每个业务文件的key值按照预设规则生成每个业务文件的业务路径,并将value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,与历史埋点数据聚合,实现多目录保存文件;其中,业务路径至少包括key值,在一些实施例中,业务路径还包括该业务文件的生成日期;如果预设规则为将key值和业务文件的生成日期聚合,则该业务文件的业务路径为key值+生成日期或者生成日期+key值,如业务D前端的埋点数据存储在C盘的业务D文件夹中,则key值为C:\D文件夹,生成日期为2021-12-30,业务D的业务路径为C:\D文件夹2021-12-30或者2021-12-30C:\D文件夹。
将value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,包括:
识别value值对应业务文件的来源;
识别出数据来源后,识别value值对应业务的业务种类;
如果数据来源为前端,在前端的第一目录下查找与该业务对应的前端子目录,将value值存储在前端子目录下;即第一目录下存储很多业务的业务文件,每个业务对应一个子目录,每个子目录下包括多个不同的应用。
如果数据来源为后端,在后端的第一目录下查找与该业务对应的后端子目录,将value值存储在后端子目录下。
本实施例可以通过重写SaveAsHadoopFile方法,将每个业务文件按照业务种类保存在对应业务的第一目录下,实现多目录保存文件。
本申请实施例在步骤S300之后还包括重新加载每个业务目录下的包括所有埋点数据的文件,并对获取的文件压缩存储在指定的第二目录下,该指定的第二目录与步骤S300中的第一目录不同,从而将前端和后端埋点数据的压缩文件和源文件分开,不仅方便其它操作使用,而且提高埋点数据的安全性。在本实施例中,将包括所有埋点数据的文件重加载为parquet格式文件,并进行snappy压缩合并存放至指定第二目录中。
步骤S400、根据第一目录结构将每个业务的业务路径指定给外部分区表的对应分区。在本实施例中,每日调度时使用hive的MSCK REPAIR TABLE完成根据第一目录结构将每个业务的业务路径指定给外部分区表的对应分区,这样即完成了埋点数据采集。其中,外部分区表是根据埋点数据来源分别为来自前端的埋点数据(前端日志)和来自后端的埋点数据(后端日志)构建的两张外部分区表,并以每个业务线为每张外部分区表的分区键;本实施例的埋点数据来源包括来自前端和来自后端;每张外部分区表能够根据为每个分区指定的业务路径,显示业务路径对应业务的文件目录以及文件中保存的埋点数据。在本申请的外部分区表中表头至少包括业务名称和业务路径,这样将埋点数据从数仓ODS抽取到DWD层时可以直接根据外部分区表中的业务路径划分主题,规则统一,流程清晰,便于理解。
本申请实施例根据数据来源建立了两张外部分区表,不会再有数据表的级别变化,简化ODS层数据表的管理,而且对来自业务的埋点数据按照来源分类后在按照业务种类分类,并将分类后的业务文件分别保存,然后通过构建业务路径和业务路径与对应业务文件内容的关系,为前端和后端的埋点数据分别建立一个大的第一目录,这两个第一目录下包括了所有业务的埋点数据,再通过第一目录的结构完成自动生成外部分区表业务路径的指定,不需要手动指定,不仅有效提高ODS层埋点数据处理效率,而且与业务上线和业务下线解耦,埋点数据到ODS层的抽取不再受业务上线和业务下线的影响,提高埋点数据到ODS层处理的可靠性。
在本申请实施例中,每个业务文件下还包括不同应用的应用文件;
此时步骤S100包括:
将从业务获取的埋点数据根据来源和业务种类分类保存在不同的业务文件;
将业务文件中的埋点数据根据应用种类分类保存在对应的应用文件中。
步骤S200包括:
将每个应用文件预处理为kv格式;其中,key值为应用文件对应的存储路径,value值为应用文件中的埋点数据本身;
将每个业务文件预处理为kv格式。
步骤S300还包括:
根据每个业务文件的key值和value值按照预设规则生成每个业务文件的业务路径,并将value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下;
根据每个应用文件的key值和value值按照预设规则生成每个应用文件的应用路径,并将value值按照对应应用文件的应用种类保存在对应子目录下。
步骤S400为根据第一目录结构将每个业务的业务路径和应用路径指定给外部分区表的对应分区。
另外,本申请实施例还公开了一种埋点数据到ODS层的处理装置,具体地,该装置包括:一个或多个处理器和存储器,如图2所示,以一个处理器200及存储器100为例。处理器200和存储器100可以通过总线或者其他方式连接,如以通过总线连接为例。
存储器100作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本申请实施例中的一种埋点数据到ODS层的处理方法。处理器200通过运行存储在存储器100中的非暂态软件程序以及指令,从而实现上述本申请实施例中的一种埋点数据到ODS层的处理方法。
存储器100可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储执行上述实施例中的一种埋点数据到ODS层的处理方法所需的数据等。此外,存储器100可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述实施例中的一种埋点数据到ODS层的处理方法所需的非暂态软件程序以及指令存储在存储器中,当被一个或者多个处理器执行时,执行上述实施例中的一种埋点数据到ODS层的处理方法,例如,执行以上描述的图1中的方法步骤S100至步骤S400。
以上均为本申请的较佳实施例,并非依此限制本申请的保护范围,本说明书(包括摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

Claims (10)

1.一种埋点数据到ODS层的处理方法,其特征在于:包括:
将从业务获取的埋点数据根据数据来源和业务种类分类保存在不同的业务文件;其中,所述数据来源包括来自前端和来自后端;
将每个所述业务文件预处理为kv格式;其中,key值为所述业务文件对应的存储路径,value值为所述业务文件中的埋点数据;
按照预设规则根据所述key值生成每个所述业务文件的业务路径,并将所述value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,与历史埋点数据聚合;
根据所述第一目录结构将每个业务的所述业务路径指定给对应数据来源的外部分区表的对应分区;其中,所述外部分区表包括前端的外部分区表和后端的外部分区表,并以业务线为每张所述外部分区表的分区键。
2.根据权利要求1所述的方法,其特征在于,所述将每个所述业务文件预处理为kv格式采用sparkStreaming将所述业务文件格式预处理为kv格式。
3.根据权利要求1所述的方法,其特征在于,所述业务路径包括key值和生成日期。
4.根据权利要求1所述的方法,其特征在于,所述将所述value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,包括:
识别所述value值对应所述业务文件的数据来源;
识别value值对应业务的业务种类;
如果数据来源为前端,在前端的所述第一目录下查找与所述业务对应的前端子目录,并将value值存储在所述前端子目录下;
如果数据来源为后端,在后端的所述第一目录下查找与所述业务对应的后端子目录,将value值存储在所述后端子目录下。
5.根据权利要求1所述的方法,其特征在于,所述方法通过重写SaveAsHadoopFile方法,将每个业务文件按照业务种类保存在对应业务的第一目录下。
6.根据权利要求1所述的方法,其特征在于,在所述按照预设规则根据所述key值生成每个所述业务文件的业务路径,并将所述value值按照对应业务文件的数据来源和业务种类保存在对应来源的第一目录下,与历史埋点数据聚合之后,还包括:
重新加载每个所述第一目录下包括所有埋点数据的文件,并对获取的文件压缩存储在指定的第二目录下。
7.根据权利要求1所述的方法,其特征在于,所述方法使用hive的MSCK REPAIR TABLE完成根据每个所述第一目录结构将每个业务的所述业务路径指定给每张所述外部分区表的对应分区。
8.根据权利要求1所述的方法,其特征在于,所述业务文件包括不同应用的应用文件;所述将从业务获取的埋点数据根据数据来源和业务种类分类保存在不同的业务文件,包括:
将从业务获取的埋点数据根据来源和业务种类分类保存在不同的业务文件;
将所述业务文件中的埋点数据根据应用种类分类保存在对应的所述应用文件中。
9.根据权利要求8所述的方法,其特征在于,所述将每个所述业务文件预处理为kv格式包括:
将每个所述应用文件预处理为kv格式;其中,key值为所述应用文件对应的存储路径,value值为所述应用文件中的埋点数据;
将每个所述业务文件预处理为kv格式。
10.一种埋点数据到ODS层的处理装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6中任意一项所述一种埋点数据到ODS层的处理方法。
CN202111676126.7A 2021-12-31 2021-12-31 一种埋点数据到ods层的处理方法及装置 Active CN114443651B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111676126.7A CN114443651B (zh) 2021-12-31 2021-12-31 一种埋点数据到ods层的处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111676126.7A CN114443651B (zh) 2021-12-31 2021-12-31 一种埋点数据到ods层的处理方法及装置

Publications (2)

Publication Number Publication Date
CN114443651A true CN114443651A (zh) 2022-05-06
CN114443651B CN114443651B (zh) 2023-05-05

Family

ID=81365269

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111676126.7A Active CN114443651B (zh) 2021-12-31 2021-12-31 一种埋点数据到ods层的处理方法及装置

Country Status (1)

Country Link
CN (1) CN114443651B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102207981A (zh) * 2011-07-13 2011-10-05 华为软件技术有限公司 管理文件的方法和系统
CN103136294A (zh) * 2011-12-05 2013-06-05 阿里巴巴集团控股有限公司 文件操作方法及装置
CN105574062A (zh) * 2015-07-01 2016-05-11 宇龙计算机通信科技(深圳)有限公司 一种文件检索方法、装置以及终端
CN109299037A (zh) * 2018-08-16 2019-02-01 北京炎黄盈动科技发展有限责任公司 文件处理方法和装置
WO2020029388A1 (zh) * 2018-08-07 2020-02-13 平安科技(深圳)有限公司 文件传输方法、系统、计算机设备和存储介质
CN111506569A (zh) * 2020-03-02 2020-08-07 平安科技(深圳)有限公司 数据存储方法、装置、电子装置
CN112653622A (zh) * 2020-12-14 2021-04-13 烽火通信科技股份有限公司 一种SRv6 uSID转发方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102207981A (zh) * 2011-07-13 2011-10-05 华为软件技术有限公司 管理文件的方法和系统
CN103136294A (zh) * 2011-12-05 2013-06-05 阿里巴巴集团控股有限公司 文件操作方法及装置
CN105574062A (zh) * 2015-07-01 2016-05-11 宇龙计算机通信科技(深圳)有限公司 一种文件检索方法、装置以及终端
WO2020029388A1 (zh) * 2018-08-07 2020-02-13 平安科技(深圳)有限公司 文件传输方法、系统、计算机设备和存储介质
CN109299037A (zh) * 2018-08-16 2019-02-01 北京炎黄盈动科技发展有限责任公司 文件处理方法和装置
CN111506569A (zh) * 2020-03-02 2020-08-07 平安科技(深圳)有限公司 数据存储方法、装置、电子装置
CN112653622A (zh) * 2020-12-14 2021-04-13 烽火通信科技股份有限公司 一种SRv6 uSID转发方法及装置

Also Published As

Publication number Publication date
CN114443651B (zh) 2023-05-05

Similar Documents

Publication Publication Date Title
CN109857803B (zh) 数据同步方法、装置、设备、系统及计算机可读存储介质
CN106959963A (zh) 一种数据查询方法、装置及系统
CN108614837B (zh) 文件存储和检索的方法及装置
CN106202416B (zh) 列表数据写方法和装置、列表数据读取方法和装置
CN108984177A (zh) 一种数据处理方法及系统
CN104408159A (zh) 一种数据关联、加载、查询方法及装置
CN103440243A (zh) 一种教学资源推荐方法及其装置
CN108762979B (zh) 一种基于匹配树的终端信息备份方法及备份设备
CN108446110B (zh) Lua脚本生成方法、装置、终端及计算机可读介质
CN111367857B (zh) 数据存储方法、装置、ftp服务器及存储介质
CN103177022A (zh) 一种恶意文件搜索方法及装置
CN102710447B (zh) 终端设备云修复方法和系统
CN114443651A (zh) 一种埋点数据到ods层的处理方法及装置
CN103220327B (zh) 用户信息存储方法及装置
CN109617708B (zh) 一种埋点日志的压缩方法、设备及系统
CN110807000A (zh) 一种文件修复方法、装置、电子设备和存储介质
CN107784588A (zh) 保险用户信息合并方法和装置
CN112464049B (zh) 号码详单下载方法、装置和设备
CN116089529A (zh) 数据同步方法、装置、电子设备及存储介质
CN113687852A (zh) 日志采集配置文件自动生成方法及装置
CN114676130A (zh) 时序数据的存储方法、计算设备及存储介质
CN114817256A (zh) 一种物联网快速统一存储系统
CN110688201B (zh) 一种日志管理方法及相关设备
CN113761043A (zh) 数据提取方法、装置、计算机设备和存储介质
CN110275865B (zh) 文件存储优化方法和装置

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