CN106776512A - 一种通用的文本数据处理方法 - Google Patents
一种通用的文本数据处理方法 Download PDFInfo
- Publication number
- CN106776512A CN106776512A CN201611094779.3A CN201611094779A CN106776512A CN 106776512 A CN106776512 A CN 106776512A CN 201611094779 A CN201611094779 A CN 201611094779A CN 106776512 A CN106776512 A CN 106776512A
- Authority
- CN
- China
- Prior art keywords
- file
- processing method
- data processing
- text data
- collection
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 19
- 230000002159 abnormal effect Effects 0.000 claims abstract description 6
- 238000005194 fractionation Methods 0.000 claims description 5
- 230000011218 segmentation Effects 0.000 claims description 5
- 239000002245 particle Substances 0.000 claims description 3
- 235000013399 edible fruits Nutrition 0.000 claims description 2
- 238000012423 maintenance Methods 0.000 abstract description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003472 neutralizing effect Effects 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种通用的文本数据处理方法,其实现过程为:将采集的文本进行对象化解析,采用统一的配置文件描述来定义文本解析的内容;对文件采集和处理过程进行监控,及时发现文本异常,当文件出现异常时发出告警。该通用的文本数据处理方法与现有技术相比,具有通用性,通过对采集文件的对象化,使得对文本解析处理过程,对新增和调整文件只需对配置文件进行添加或者修改就可以完成,极大的降低了对维护人员的技术要求,以及维护成本和出错的概率,实用性强,适用范围广泛,易于推广。
Description
技术领域
本发明涉及计算机技术领域,具体地说是一种实用性强、通用的文本数据处理方法。
背景技术
传统的文本数据接口,因为字段调整或者增加,以及分割符的不同,部分字段需解析过程进行转换处理,所以需经常对代码经常改动,维护比较复杂,并且会因为不恰当的调整影响其他文本文件入库。
在以往文本处理接口,经常因为文件提供方问题,导致数据文件内容缺失,或者文件没有送达,导致相关应用出问题。
此外,现有技术还存在以下缺陷:
代码经常调整,容易互相干扰,维护成本高:因为字段的添加和对字段的特殊处理,需要频繁代码改动,容易因为测试不全而导致其他文件处理出现问题。
无法对异常情况进行告警,或者有告警不全面:因为没有对采集文件进行监控,导致文件内容和数量出现问题无法及时发现。通过邮寄附件的方式,可以更直观的查看所有接口运行情况。
基于此,现提供一种通用的文本数据处理方法,可有效解决上述缺陷。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、通用的文本数据处理方法。
一种通用的文本数据处理方法,其实现过程为:
将采集的文本进行对象化解析,采用统一的配置文件描述来定义文本解析的内容;
对文件采集和处理过程进行监控,及时发现文本异常,当文件出现异常时发出告警。
将采集的文本进行对象化解析的过程为:
一、首先读取配置文件,组织定义配置文件的信息:确定文件标题名称、分隔符以及输出和处理方式;
二、获取一行数据,查看是否有备份,如果有则拼接备份,然后进入下一步,没有则直接进入下一步;
三、按分隔符拆分,查看分割数组和定义是否相同,相同则根据定义的输出进行数据处理,自动生成入库控制文件。
在组织定义配置文件的信息中,根据文件标题名称获取相应的配置文件,然后对配置文件用xml包解析,获取我们需要的文件标题、分隔符、输出字段排序、以及每个字段来源和相应的处理函数。
所述配置文件,包含文本自身字段和后期处理字段,并且包含文件的ftp来源信息,其中后期处理字段为处理、拆分或者合并的字段,即根据文件类型的字段个数来处理数据换行问题,非文件来源的按里面填写的函数和参数来处理。
步骤三的具体过程为:
A、打开配置文件开始解析,每读一行line,根据分隔符拆分,判断分割数组长度是否和文件标题一致并且包含结尾符;
B、如果拆分长度不一致或者没有发现结尾符,转到A;
C、拆分长度一致并包含结尾符,加载输出排序列表,根据字段对应的函数进行后期处理,然后根据文件记录数约束写入入库数据文件和入库控制文件。
对文件采集和处理过程进行监控时,按文件采集粒度对文件进行监控,按粒度来进行数据和文件大小比对,及时发现采集文件异常。
对文件采集和处理过程进行监控的具体过程为:
遍历接口列表,根据时间粒度对前后文件的数量和记录数进行比对,对有偏差的数据写入告警文件;
当接口列表遍历结束,生成所有采集接口报告,判断告警文件大小,如果不为空,则根据配置对相应人员进行告警提醒。
有偏差的数据获取并告警过程为:
首先获取一个接口信息,根据接口编号读取当前粒度文件日志;
检查文件记录数,等于0则写入告警文件;
把当前粒度与上一粒度记录进行比对,偏差过大则写入告警文件;
统计当前粒度文件类型数与上一文件数,如果不相等则写入告警文件。
所述粒度偏差是指采集数据文件大小偏差超过0.05~5%时,写入告警文件。
遍历接口列表的过程为:
根据接口ID,获得当前的文件数,上一次采集时间和采集总数;
根据当前时间和上次采集时间对文件两次同一类型文件采集的数量进行对比和计算;
如果当前采集总文件数为0,写入告警文件;循环判断每个类型文件大小异常情况,如果偏差大于0.05%,将相关信息写入告警文件。
本发明的一种通用的文本数据处理方法,具有以下优点:
本发明的一种通用的文本数据处理方法,具有通用性,通过对采集文件的对象化,使得对文本解析处理过程,对新增和调整文件只需对配置文件进行添加或者修改就可以完成,极大的降低了对维护人员的技术要求,以及维护成本和出错的概率;具有可扩展性,灵活的配置采集文件类型和采集粒度,从而达到相应的采集需求和监控粒度,具有时效性,根据时间粒度对文件进行补充采集和相关告警的邮件提醒,提前发现采集异常情况,从而能最快解决,实用性强,适用范围广泛,易于推广。
附图说明
附图1为本发明采集文件对象化解析实现示意图。
附图2为本发明对采集文件的粒度进行监控过程示意图。
附图3为本发明配置文件示意图。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
本发明的一种通用的文本数据处理方法,其实现过程包括以下两个步骤:
一、将采集文件对象化解析。
二、按文件采集粒度对文件进行监控,按粒度来进行数据和文件大小比对,及时发现采集文件异常。
如附图3所示,在配置文件里对文件要入库的表名,文件分隔符,来源和本地存放位置进行定义。在字段说明里,字段可以比采集文件多,但是前面的字段一定和数据文件一样。后面多的字段可以是经常处理,拆分或者合并的字段。根据file类型的字段个数来处理数据换行问题。非file来源的按里面填写的函数和参数来处理。
所述的对象模型配置文件,包含文本自身字段和后期处理字段,并且包含文件的ftp来源信息。
首先根据文件名称获取相应的配置文件,对配置文件用xml包解析,获取我们需要的文件标题、分隔符、输出字段排序、以及每个字段来源和相应的处理函数。
其中,如附图1所示,将采集的文本进行对象化解析的过程为:
1、首先读取配置文件,组织定义配置文件的信息:确定文件标题名称、分隔符以及输出和处理方式;
2、获取一行数据,查看是否有备份,如果有则拼接备份,然后进入下一步,没有则直接进入下一步;
3、按分隔符拆分,查看分割数组和定义是否相同,相同则根据定义的输出进行数据处理,自动生成入库控制文件。
步骤3的具体过程为:
A.打开文件开始解析,每读一行line,根据分隔符拆分,判断分割数组长度是否和文件标题一致并且包含结尾符。
B.如果拆分长度不一致或者没有发现结尾符,判断line_bak是否为空,line_bak为空,line_bak=line, 转到A,否则line_bak=line.line_bak,转到A.
C.拆分长度一致并包含结尾符,加载输出排序列表,根据字段对应的函数进行后期处理,然后根据文件记录数约束写入入库数据文件和入库控制文件。
我们通过正则解析来解决乱码中断问题,通过对每行的数据检查来保证数据的完整性,通过单一文件最大记录数拆分文件,从而保证数据能快速的加载入库。通过一个配置文件来描述解析的文件,保证了主体代码的稳定性,使得维护简单。
如附图2所示,提供定时任务对采集文件的粒度进行监控具体为:
首先对所有采集到的文件数据数量和采集状态进行记录。
根据采集标志对采集数量为-1的进行补充采集。根据时间粒度对前后文件的数量和记录数进行比对。对有偏差的数据进行邮件通知。
对文件采集和处理过程进行监控的具体过程为:
遍历接口列表,根据时间粒度对前后文件的数量和记录数进行比对,对有偏差的数据写入告警文件;
当接口列表遍历结束,生成所有采集接口报告,判断告警文件大小,如果不为空,则根据配置对相应人员进行告警提醒。
有偏差的数据获取并告警过程为:
首先获取一个接口信息,根据接口编号读取当前粒度文件日志;
检查文件记录数,等于0则写入告警文件;
把当前粒度与上一粒度记录进行比对,偏差过大则写入告警文件;
统计当前粒度文件类型数与上一文件数,如果不相等则写入告警文件。
所述粒度偏差是指采集数据文件大小偏差超过0.05~5%时,写入告警文件。
遍历接口列表:
a.根据接口ID,获得当天的文件数,上一次采集时间和采集总数。
b.根据当天时间和上次采集时间对文件2天同一类型文件采集的数量进行对比和计算。
c.如果当前采集总文件数为0,写入告警文件。循环判断每个类型文件大小异常情况,如果偏差大于0.05%,将我们关注的信息写入告警文件。
当接口列表遍历结束,一份所有采集接口报告就生成。判断告警文件大小,如果不为空,则根据配置对相应人员进行邮件提醒(对于比较重要接口出问题的时候还可以进行短信提醒)。
所述的邮件提醒,其中的接口是可配置的,告警形式是可定义的,收件人是可以根据告警级别派发的。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种通用的文本数据处理方法的权利要求书的且任何所述技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
Claims (10)
1.一种通用的文本数据处理方法,其特征在于,其实现过程为:
将采集的文本进行对象化解析,采用统一的配置文件描述来定义文本解析的内容;
对文件采集和处理过程进行监控,及时发现文本异常,当文件出现异常时发出告警。
2.根据权利要求1所述的一种通用的文本数据处理方法,其特征在于,将采集的文本进行对象化解析的过程为:
一、首先读取配置文件,组织定义配置文件的信息:确定文件标题名称、分隔符以及输出和处理方式;
二、获取一行数据,查看是否有备份,如果有则拼接备份,然后进入下一步,没有则直接进入下一步;
三、按分隔符拆分,查看分割数组和定义是否相同,相同则根据定义的输出进行数据处理,自动生成入库控制文件。
3.根据权利要求2所述的一种通用的文本数据处理方法,其特征在于,在组织定义配置文件的信息中,根据文件标题名称获取相应的配置文件,然后对配置文件用xml包解析,获取我们需要的文件标题、分隔符、输出字段排序、以及每个字段来源和相应的处理函数。
4.根据权利要求2所述的一种通用的文本数据处理方法,其特征在于,所述配置文件,包含文本自身字段和后期处理字段,并且包含文件的ftp来源信息,其中后期处理字段为处理、拆分或者合并的字段,即根据文件类型的字段个数来处理数据换行问题,非文件来源的按里面填写的函数和参数来处理。
5.根据权利要求2所述的一种通用的文本数据处理方法,其特征在于,步骤三的具体过程为:
A、打开配置文件开始解析,每读一行line,根据分隔符拆分,判断分割数组长度是否和文件标题一致并且包含结尾符;
B、如果拆分长度不一致或者没有发现结尾符,转到A;
C、拆分长度一致并包含结尾符,加载输出排序列表,根据字段对应的函数进行后期处理,然后根据文件记录数约束写入入库数据文件和入库控制文件。
6.根据权利要求1所述的一种通用的文本数据处理方法,其特征在于,对文件采集和处理过程进行监控时,按文件采集粒度对文件进行监控,按粒度来进行数据和文件大小比对,及时发现采集文件异常。
7.根据权利要求6所述的一种通用的文本数据处理方法,其特征在于,对文件采集和处理过程进行监控的具体过程为:
遍历接口列表,根据时间粒度对前后文件的数量和记录数进行比对,对有偏差的数据写入告警文件;
当接口列表遍历结束,生成所有采集接口报告,判断告警文件大小,如果不为空,则根据配置对相应人员进行告警提醒。
8.根据权利要求7所述的一种通用的文本数据处理方法,其特征在于,有偏差的数据获取并告警过程为:
首先获取一个接口信息,根据接口编号读取当前粒度文件日志;
检查文件记录数,等于0则写入告警文件;
把当前粒度与上一粒度记录进行比对,偏差过大则写入告警文件;
统计当前粒度文件类型数与上一文件数,如果不相等则写入告警文件。
9.根据权利要求8所述的一种通用的文本数据处理方法,其特征在于,所述粒度偏差是指采集数据文件大小偏差超过0.05~5%时,写入告警文件。
10.根据权利要求7所述的一种通用的文本数据处理方法,其特征在于,遍历接口列表的过程为:
根据接口ID,获得当前的文件数,上一次采集时间和采集总数;
根据当前时间和上次采集时间对文件两次同一类型文件采集的数量进行对比和计算;
如果当前采集总文件数为0,写入告警文件;循环判断每个类型文件大小异常情况,如果偏差大于0.05%,将相关信息写入告警文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611094779.3A CN106776512A (zh) | 2016-12-02 | 2016-12-02 | 一种通用的文本数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611094779.3A CN106776512A (zh) | 2016-12-02 | 2016-12-02 | 一种通用的文本数据处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106776512A true CN106776512A (zh) | 2017-05-31 |
Family
ID=58883686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611094779.3A Pending CN106776512A (zh) | 2016-12-02 | 2016-12-02 | 一种通用的文本数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106776512A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108021540A (zh) * | 2017-11-09 | 2018-05-11 | 中国科学院信息工程研究所 | 一种面向Hadoop的通用文本格式的解析方法及工具 |
CN108460006A (zh) * | 2018-02-06 | 2018-08-28 | 福建星瑞格软件有限公司 | 一种文件数据表结构的自动生成的方法及计算机设备 |
CN110851400A (zh) * | 2018-07-25 | 2020-02-28 | 北京国双科技有限公司 | 文本数据的处理方法及装置 |
CN110879801A (zh) * | 2019-11-21 | 2020-03-13 | 中国银行股份有限公司 | 一种数据读取方法及装置 |
CN110908729A (zh) * | 2019-10-12 | 2020-03-24 | 杭州安恒信息技术股份有限公司 | 基于正则匹配的命令行输出信息处理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678090A (zh) * | 2013-12-11 | 2014-03-26 | 北京国双科技有限公司 | 数据处理的监控方法和装置 |
CN104092659A (zh) * | 2014-06-03 | 2014-10-08 | 珠海格力电器股份有限公司 | 一种通用协议数据解析方法 |
-
2016
- 2016-12-02 CN CN201611094779.3A patent/CN106776512A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678090A (zh) * | 2013-12-11 | 2014-03-26 | 北京国双科技有限公司 | 数据处理的监控方法和装置 |
CN104092659A (zh) * | 2014-06-03 | 2014-10-08 | 珠海格力电器股份有限公司 | 一种通用协议数据解析方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108021540A (zh) * | 2017-11-09 | 2018-05-11 | 中国科学院信息工程研究所 | 一种面向Hadoop的通用文本格式的解析方法及工具 |
CN108021540B (zh) * | 2017-11-09 | 2023-05-02 | 中国科学院信息工程研究所 | 一种面向Hadoop的通用文本格式的解析方法及工具 |
CN108460006A (zh) * | 2018-02-06 | 2018-08-28 | 福建星瑞格软件有限公司 | 一种文件数据表结构的自动生成的方法及计算机设备 |
CN110851400A (zh) * | 2018-07-25 | 2020-02-28 | 北京国双科技有限公司 | 文本数据的处理方法及装置 |
CN110908729A (zh) * | 2019-10-12 | 2020-03-24 | 杭州安恒信息技术股份有限公司 | 基于正则匹配的命令行输出信息处理方法 |
CN110908729B (zh) * | 2019-10-12 | 2023-05-23 | 杭州安恒信息技术股份有限公司 | 基于正则匹配的命令行输出信息处理方法 |
CN110879801A (zh) * | 2019-11-21 | 2020-03-13 | 中国银行股份有限公司 | 一种数据读取方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106776512A (zh) | 一种通用的文本数据处理方法 | |
US11210158B2 (en) | Automated problem diagnosis on logs using anomalous telemetry analysis | |
US9898604B2 (en) | Dynamic graph anomaly detection framework and scalable system architecture | |
CN106708815B (zh) | 数据处理方法、装置和系统 | |
US11042525B2 (en) | Extracting and labeling custom information from log messages | |
CN109542733A (zh) | 一种高可靠的实时日志收集及可视化检索方法 | |
US20100031076A1 (en) | Configuration Management System for power monitoring and protection system devices | |
CN110826740A (zh) | 一种电力电网线路设备故障检测分析系统 | |
CN110517084B (zh) | 车辆功能活跃度分析方法及系统 | |
CN111078455A (zh) | 基于时间轴的异常行为序列关联处理方法以及装置、设备、存储介质 | |
CN115981984A (zh) | 一种设备故障检测方法、装置、设备及存储介质 | |
CN103581951A (zh) | 一种基站检测方法及装置 | |
CN111898068A (zh) | 一种基于pert算法及仪表用量分析的异常检测方法 | |
US20140159907A1 (en) | Systems and Methods for Integrating Alarm Processing and Presentation of Alarms for a Power Generation System | |
CN108390782A (zh) | 一种集中式应用系统性能问题综合分析方法 | |
CN108073705B (zh) | 一种分布式海量数据聚合采集方法 | |
JP7207009B2 (ja) | 異常検知装置、異常検知方法および異常検知プログラム | |
CN105721719A (zh) | 呼叫中心的故障检测系统及方法 | |
CN108304293A (zh) | 一种基于大数据技术的软件系统监控方法 | |
CN113938306B (zh) | 一种基于数据清洗规则的可信认证方法及系统 | |
CN113239007B (zh) | 多层次异构日志事务分析方法、系统、设备和存储介质 | |
CN104503982B (zh) | 一种cmdb配置项调和的方法 | |
CN111625410A (zh) | 信息处理方法、设备及计算机存储介质 | |
CN115765153A (zh) | 电力一次设备物联网与在线监测数据融合监测方法及系统 | |
CN116149947A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170531 |