CN106649797A - 一种文本数据集解析方法和装置 - Google Patents
一种文本数据集解析方法和装置 Download PDFInfo
- Publication number
- CN106649797A CN106649797A CN201611239555.7A CN201611239555A CN106649797A CN 106649797 A CN106649797 A CN 106649797A CN 201611239555 A CN201611239555 A CN 201611239555A CN 106649797 A CN106649797 A CN 106649797A
- Authority
- CN
- China
- Prior art keywords
- resolved
- field
- text data
- data set
- sequence number
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
- G06F16/1794—Details of file format conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种文本数据集解析方法和装置。该方法在获取到待解析的文本数据集后,首先基于预设解析规则中包含的字段名和字段格式将文本数据集中部分待解析字段进行格式转换。对于不能被上述解析规则解析的字段,可通过调动自定义解析器实现格式的转换。与现有技术相比,本发明可基于预设解析规则和自定义解析器实现对文本数据集的格式转换,在实际应用中可通过修改预设解析规则实现不同文本数据集的解析,更具有通用性的扩展性,降低了程序人员的工作量。
Description
技术领域
本申请涉及列数据处理领域,更具体地说,涉及一种文本数据集解析方法和装置。
背景技术
在许多分布式大数据处理的应用程序开发中,输入数据通常是按行存储的文本数据集。
对于不同应用场景,文本数据格式不尽相同。在现有的技术下,为了解析不同格式的文本数据,需要开发不同的应用程序,增加了程序人员的工作量。
发明内容
有鉴于此,本申请提供一种文本数据集解析方法和装置,旨在使用一套代码实现不同格式的文本数据集解析,以降低程序人员的工作量。
为了实现上述目的,现提出的方案如下:
一种文本数据集解析方法,包括:
获取待解析文本数据集;
基于预设解析规则中包含的字段名确定所述文本记录中的待解析字段;
基于所述预设解析规则中包含的字段格式对所述待解析字段进行格式转换;
对于未被所述预设解析规则解析的文本记录,调用自定义解析器将所述文本记录中的字段转换为预设格式字段。
优选的,所述获取待解析文本数据集,包括:
当所述待解析文本数据集存储于本地磁盘时,基于所述本地磁盘的路径获取所述待解析文本数据集;
当所述待解析文本数据集存储于分布式文件系统时,基于所述分布式文件系统的URI获取所述待解析文本数据集;
当所述待解析文本数据集存储于数据库时,基于所述数据库的地址、端口、用户名密码、表名和字段名获取所述待解析文本数据集。
优选的,所述基于所述预设解析规则中包含的字段格式对所述待解析字段进行格式转换之后,还包括:对进行格式转换后的字段编写相应的序号。
优选的,所述调用自定义解析器将所述文本记录中的字段转换为预设格式字段之后,还包括:对进行格式转换后的字段编写相应的序号。
优选的,还包括:将进行格式转换后的字段存放在HashMap中。
一种文本数据集解析装置,包括:
数据采集单元,用于获取待解析文本数据集;
第一解析单元,用于基于预设解析规则中包含的字段名确定所述文本记录中的待解析字段,并基于所述预设解析规则中包含的字段格式对所述待解析字段进行格式转换;
第二解析单元,用于对于未被所述预设解析规则解析的文本记录,调用自定义解析器将所述文本记录中的字段转换为预设格式字段。
优选的,所述数据采集单元包括:
第一数据采集子单元,用于当所述待解析文本数据集存储于本地磁盘时,基于所述本地磁盘的路径获取所述待解析文本数据集;
第二数据采集子单元,用于当所述待解析文本数据集存储于分布式文件系统时,基于所述分布式文件系统的URI获取所述待解析文本数据集;
第三数据采集子单元,用于当所述待解析文本数据集存储于数据库时,基于所述数据库的地址、端口、用户名密码、表名和字段名获取所述待解析文本数据集。
优选的,还包括:序号编写单元,用于对进行格式转换后的字段编写相应的序号。
优选的,还包括:存储单元,用于将进行格式转换后的字段存放在HashMap中。
经由上述技术方案可知,本申请公开了一种文本数据集解析方法和装置。本申请公开了一种文本数据集解析方法和装置。该方法在获取到待解析的文本数据集后,首先基于预设解析规则中包含的字段名和字段格式将文本数据集中部分待解析字段进行格式转换。对于不能被上述解析规则解析的字段,可通过调动自定义解析器实现格式的转换。与现有技术相比,本发明可基于预设解析规则和自定义解析器实现对文本数据集的格式转换,在实际应用中可通过修改预设解析规则实现不同文本数据集的解析,更具有通用性的扩展性,降低了程序人员的工作量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1示出了本发明一个实施例公开的一种文本数据集的解析方法的流程示意图;
图2示出了本发明另一个实施例公开的一种文件数据集解析装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1示出了本发明一个实施例公开的一种文本数据集的解析方法的流程示意图。
由图1可知,该方法包括:
S101:获取待解析文本数据集。
文本数据集通常会存储到本地磁盘、分布式文件系统(比如HDFS)、NoSQL数据库(比如Cassandra)、或者关系数据库(比如MySQL、Oracle)中。对于本地磁盘要指定数据导出的路径,对于分布式文件系统要指定该分布式系统的URI;对于数据库,需要指定地址、端口、用户名密码和表名、字段名等信息,从而获取该文本数据集。
S102:基于预设解析规则中包含的字段序号确定所述文本数据集中的第一待解析字段。
在对文本数据集进行解析时,依次读取单条文本记录,并基于该文本记录的分隔符确定该文件记录中包含的多个字段。若文本记录中的某个字段的字段序号与预设解析规则中包含的字段序号相匹配,则将该字段作为第一待解析字段;若文本记录中的某个字段的字段序号与预设解析规则中包含的字段序号不匹配,则将该字段作为第二待解析字段。
可选的,在实际应用中,对于某些字段不仅有字段格式的要求,取值范围的约束,因而在设定预设解析规则时,对于定长数据字段,还需要指定字段的长度,每个字段还可以指定取值范围。
S103:基于所述预设解析规则中包含的字段格式对所述第一待解析字段进行格式转换。
对于第一待解析字段,采用预设规则解析规则中与第一待解析字段的字段序号相对应的字段格式进行转换。
S104:对于与所述预设解析规则中包含的字段序号不匹配的第二解析字段,调用自定义解析器对所述第二待解析字段进行格式转换。
由以上实施例可知,本实施例公开了一种文本数据集解析方法。该方法在获取到待解析的文本数据集后,首先基于预设解析规则中包含的字段名和字段格式将文本数据集中部分待解析字段进行格式转换。对于不能被上述解析规则解析的字段,可通过调动自定义解析器实现格式的转换。与现有技术相比,本发明可基于预设解析规则和自定义解析器实现对文本数据集的格式转换,在实际应用中可通过修改预设解析规则实现不同文本数据集的解析,更具有通用性的扩展性,降低了程序人员的工作量。。
需要说明的是,在上述实施例中需要对进行格式转换后的字段编写相应的序号,并将转换后的字段存储在java.util.HashMap中,从而组成完成的数据结构。
参见图2示出了本发明另一个实施例公开的一种文件数据集解析装置的结构示意图。
在本实施例中,该装置包括:数据采集单元1、第一解析单元2和第二解析单元3。
其中,数据采集单元1用于获取待解析文本数据集。
具体的,该数据采集单元包括:第一数据采集子单元11、第二数据采集子单元12和第三数据采集子单元13。
其中,第一数据采集子单元,用于当所述待解析文本数据集存储于本地磁盘时,基于所述本地磁盘的路径获取所述待解析文本数据集。
第二数据采集子单元,用于当所述待解析文本数据集存储于分布式文件系统时,基于所述分布式文件系统的URI获取所述待解析文本数据集。
第三数据采集子单元,用于当所述待解析文本数据集存储于数据库时,基于所述数据库的地址、端口、用户名密码、表名和字段名获取所述待解析文本数据集。
第一解析单元2,用于基于预设解析规则中包含的字段序号确定所述文本数据集中的第一待解析字段,并基于所述预设解析规则中包含的字段格式对所述第一待解析字段进行格式转换。
其中,所述第一待解析字段的字段序号与所述预设解析规则中包含的字段序号相匹配。
第二解析单元3,用于对于与所述预设解析规则中包含的字段序号不匹配的第二待解析字段,调用自定义解析器对所述第二待解析字段进行格式转换。
另外需要说明的是,在本发明公开的其他实施例中该装置还包括存储单元4。
存储单元,用于将进行格式转换后的字段存放在java.util.HashMap中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种文本数据集解析方法,其特征在于,包括:
获取待解析文本数据集;
基于预设解析规则中包含的字段序号确定所述文本数据集中的第一待解析字段,其中所述第一待解析字段的字段序号与所述预设解析规则中包含的字段序号相匹配;
基于所述预设解析规则中包含的字段格式对所述第一待解析字段进行格式转换;
对于与所述预设解析规则中包含的字段序号不匹配的第二待解析字段,调用自定义解析器对所述第二待解析字段进行格式转换。
2.根据权利要求1所述的方法,其特征在于,所述获取待解析文本数据集,包括:
当所述待解析文本数据集存储于本地磁盘时,基于所述本地磁盘的路径获取所述待解析文本数据集;
当所述待解析文本数据集存储于分布式文件系统时,基于所述分布式文件系统的URI获取所述待解析文本数据集;
当所述待解析文本数据集存储于数据库时,基于所述数据库的地址、端口、用户名密码、表名和字段名获取所述待解析文本数据集。
3.根据权利要求1所述的方法,其特征在于,还包括:将进行格式转换后的字段存放在java.util.HashMap中。
4.一种文本数据集解析装置,其特征在于,包括:
数据采集单元,用于获取待解析文本数据集;
第一解析单元,用于基于预设解析规则中包含的字段序号确定所述文本数据集中的第一待解析字段,并基于所述预设解析规则中包含的字段格式对所述第一待解析字段进行格式转换;
其中,所述第一待解析字段的字段序号与所述预设解析规则中包含的字段序号相匹配;
第二解析单元,用于对于与所述预设解析规则中包含的字段序号不匹配的第二解析字段,调用自定义解析器对所述第二待解析字段进行格式转换。
5.根据权利要求4所述的装置,其特征在于,所述数据采集单元包括:
第一数据采集子单元,用于当所述待解析文本数据集存储于本地磁盘时,基于所述本地磁盘的路径获取所述待解析文本数据集;
第二数据采集子单元,用于当所述待解析文本数据集存储于分布式文件系统时,基于所述分布式文件系统的URI获取所述待解析文本数据集;
第三数据采集子单元,用于当所述待解析文本数据集存储于数据库时,基于所述数据库的地址、端口、用户名密码、表名和字段名获取所述待解析文本数据集。
6.根据权利要求4所述的装置,其特征在于,还包括:存储单元,用于将进行格式转换后的字段存放在java.util.HashMap中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611239555.7A CN106649797A (zh) | 2016-12-28 | 2016-12-28 | 一种文本数据集解析方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611239555.7A CN106649797A (zh) | 2016-12-28 | 2016-12-28 | 一种文本数据集解析方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106649797A true CN106649797A (zh) | 2017-05-10 |
Family
ID=58835338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611239555.7A Pending CN106649797A (zh) | 2016-12-28 | 2016-12-28 | 一种文本数据集解析方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106649797A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460005A (zh) * | 2018-03-12 | 2018-08-28 | 中国银行股份有限公司 | 数据文本生成装置和方法 |
CN110727691A (zh) * | 2019-10-22 | 2020-01-24 | 北京明略软件系统有限公司 | 一种数据解析校验方法及装置 |
CN113568677A (zh) * | 2021-07-14 | 2021-10-29 | 上海淇玥信息技术有限公司 | 一种数据对象解析方法、装置和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458705A (zh) * | 2008-12-29 | 2009-06-17 | 阿里巴巴集团控股有限公司 | 一种不同应用系统间的数据核对方法、装置及系统 |
CN102768636A (zh) * | 2011-05-05 | 2012-11-07 | 阿里巴巴集团控股有限公司 | 一种日志解析方法及装置 |
CN103093001A (zh) * | 2013-02-27 | 2013-05-08 | 人民搜索网络股份公司 | 微博数据解析方法及装置 |
CN104572122A (zh) * | 2015-01-28 | 2015-04-29 | 中国工商银行股份有限公司 | 一种软件应用数据的生成装置及方法 |
CN105447099A (zh) * | 2015-11-11 | 2016-03-30 | 中国建设银行股份有限公司 | 日志结构化信息提取方法及装置 |
WO2017117024A1 (en) * | 2015-12-31 | 2017-07-06 | Acxiom Corporation | Salting text in database tables, text files, and data feeds |
-
2016
- 2016-12-28 CN CN201611239555.7A patent/CN106649797A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458705A (zh) * | 2008-12-29 | 2009-06-17 | 阿里巴巴集团控股有限公司 | 一种不同应用系统间的数据核对方法、装置及系统 |
CN102768636A (zh) * | 2011-05-05 | 2012-11-07 | 阿里巴巴集团控股有限公司 | 一种日志解析方法及装置 |
CN103093001A (zh) * | 2013-02-27 | 2013-05-08 | 人民搜索网络股份公司 | 微博数据解析方法及装置 |
CN104572122A (zh) * | 2015-01-28 | 2015-04-29 | 中国工商银行股份有限公司 | 一种软件应用数据的生成装置及方法 |
CN105447099A (zh) * | 2015-11-11 | 2016-03-30 | 中国建设银行股份有限公司 | 日志结构化信息提取方法及装置 |
WO2017117024A1 (en) * | 2015-12-31 | 2017-07-06 | Acxiom Corporation | Salting text in database tables, text files, and data feeds |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460005A (zh) * | 2018-03-12 | 2018-08-28 | 中国银行股份有限公司 | 数据文本生成装置和方法 |
CN110727691A (zh) * | 2019-10-22 | 2020-01-24 | 北京明略软件系统有限公司 | 一种数据解析校验方法及装置 |
CN113568677A (zh) * | 2021-07-14 | 2021-10-29 | 上海淇玥信息技术有限公司 | 一种数据对象解析方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9600507B2 (en) | Index structure for a relational database table | |
USRE48030E1 (en) | Computer-implemented system and method for tagged and rectangular data processing | |
Rys | XML and relational database management systems: inside Microsoft® SQL Server™ 2005 | |
US7114123B2 (en) | User controllable data grouping in structural document translation | |
US8615526B2 (en) | Markup language based query and file generation | |
EP3089054A1 (en) | Data constraints for polyglot data tiers | |
Meurer | Corpuscle–a new corpus management platform for annotated corpora | |
CN106649797A (zh) | 一种文本数据集解析方法和装置 | |
US20160117410A1 (en) | Exi format to represent json documents | |
US20080189302A1 (en) | Generating database representation of markup-language document | |
US8762398B2 (en) | Method of integrating data of XML document with database on web | |
US20060167907A1 (en) | System and method for processing XML documents | |
CN105589813B (zh) | 一种电子文档版本变化跟踪方法 | |
US20150324480A1 (en) | Lock-free parallel dictionary encoding | |
CN111581212B (zh) | 关系型数据库的数据存储方法、系统、服务器和存储介质 | |
Helman | The Science of Database Management | |
Fierro | Processing USPTO patent data | |
US10073821B2 (en) | Representation of multiple markup language files that differ in structure and content in one file for the production of new markup language files | |
Geyken et al. | The DTA'base format': A TEI-subset for the compilation of interoperable corpora. | |
US11868362B1 (en) | Metadata extraction from big data sources | |
US20190155875A1 (en) | Device and method for processing a binary-coded structure document | |
Müldner et al. | XSAQCT: XML queryable compressor | |
TWM578817U (zh) | 用於轉換資料系統之資料為關聯式資料格式之處理系統 | |
US7562295B1 (en) | Representing spelling and grammatical error state in an XML document | |
Tosaka | Analyzing Library Metadata for Web-Based Metadata Reuse Services: A Case-Study Examination of WorldCat. org and RefWorks |
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 |
Application publication date: 20170510 |
|
RJ01 | Rejection of invention patent application after publication |