CN101290622A - 数据库清洗系统及方法 - Google Patents
数据库清洗系统及方法 Download PDFInfo
- Publication number
- CN101290622A CN101290622A CNA2007102004948A CN200710200494A CN101290622A CN 101290622 A CN101290622 A CN 101290622A CN A2007102004948 A CNA2007102004948 A CN A2007102004948A CN 200710200494 A CN200710200494 A CN 200710200494A CN 101290622 A CN101290622 A CN 101290622A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- dirty
- read
- format
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种数据库清洗系统及方法,该方法包括如下步骤:设置数据转换字典,定义数据库中的脏数据及所述脏数据的修改规则;访问所述数据库,获取所述数据库的属性,从数据库中读取一行数据,并获取该行数据的属性,所述数据属性包括数据的编码格式、字符格式及字符长短;若所述读取的数据的编码格式不符合设定标准,则将该数据的编码格式变更为标准的编码格式;若所述读取的数据含有脏数据,则根据所述数据转换字典的设置,按照所述脏数据的修改规则,将所述数据中的脏数据修改为对应的新数据;对所述读取的数据进行标准化处理,将经过标准化处理后的新数据导入所述数据库中。利用本发明可以自动对数据库中的数据进行标准化处理。
Description
技术领域
本发明涉及一种数据库清洗系统及方法。
背景技术
在现今企业信息化进程的飞速发展中,企业信息系统数据库的数据量呈爆炸式的增长。如果在数据库早期的设计中没有进行科学合理的规划设计,加上后期人工大量输入数据,造成数据库中的许多核心数据经常出现残缺,编码格式混乱、乱码及数据冗余等现象。在对数据库进行升级时,造成大量数据错误出现、丢失,影响企业信息化进程。现代企业信息系统升级频率越来越高,对数据库中数据的正确性及完整性要求也越来越严格。
数据库清洗是指为了保证数据库中的数据符合标准格式,对数据进行标准化的过程,目的在于减少数据库中所存储的数据的错误和不一致性。以往设计者需要手动来进行数据库清洗,对数据库格式进行整体转换。这样的人工操作步骤繁琐、容易出错,并且效率低。
发明内容
鉴于以上内容,有必要提供一种数据库清洗系统,其可自动对数据库中的数据进行标准化处理。
鉴于以上内容,还有必要提供一种数据库清洗方法,其可自动对数据库中的数据进行标准化处理。
一种数据库清洗系统,包括主机及数据库,所述数据库中存储有数据及该数据的属性,所述数据属性包括数据的编码格式、字符格式及字符长短,所述主机设置有数据转换字典,用于定义脏数据及所述脏数据的修改规则,该主机还包括:数据读取模块,用于访问所述数据库,获取所述数据库的属性,从数据库中读取一行数据,并获取该行数据的属性;编码格式变更模块,用于在所述数据读取模块读取的数据的编码格式不符合设定标准时,将该数据的编码格式变更为标准的编码格式;脏数据修改模块,用于在所述数据读取模块读取的数据含有脏数据时,根据所述数据转换字典的设置,按照所述脏数据的修改规则,将所述数据中的脏数据修改为对应的新数据;数据标准化模块,用于对所述数据读取模块读取的数据进行标准化处理,将经过标准化处理后的新数据导入所述数据库中。
一种数据库清洗方法,包括如下步骤:设置数据转换字典,定义数据库中的脏数据及所述脏数据的修改规则;访问所述数据库,获取所述数据库的属性,从数据库中读取一行数据,并获取该行数据的属性,所述数据属性包括数据的编码格式、字符格式及字符长短;若所述读取的数据的编码格式不符合设定标准,则将该数据的编码格式变更为标准的编码格式;若所述读取的数据含有脏数据,则根据所述数据转换字典的设置,按照所述脏数据的修改规则,将所述数据中的脏数据修改为对应的新数据;对所述读取的数据进行标准化处理,将经过标准化处理后的新数据导入所述数据库中;重复所述读取数据、变更数据编码格式、修改脏数据及数据标准化的步骤,直到所述数据库中的所有数据处理完毕。
相较于现有技术,所述的数据库清洗系统及方法,可以自动将数据库中的数据编码格式转换成标准的编码格式,将脏数据修改成新数据,并对数据库中的数据进行标准化处理,避免了手动清洗数据库的繁琐步骤,提高了数据库清洗的工作效率。
附图说明
图1是本发明数据库清洗系统较佳实施例的硬件架构图。
图2是图1所示主机的功能模块图。
图3是图1所示数据转换字典的示意图。
图4是本发明数据库清洗方法较佳实施例的流程图。
具体实施方式
如图1所示,是本发明数据库清洗系统较佳实施例的系统架构图。该系统主要包括显示器1、主机2、键盘3及鼠标4,所述主机2连接有数据库5,所述数据库5为需要进行数据清洗的数据库,存储有数据及所述数据的属性,所述数据属性包括:数据编码格式、字符格式及字符长短等。所述主机2中设置有数据转换字典21,所述数据转换字典21用于定义脏数据及所述脏数据的修改规则。所述脏数据即数据库5中存储的不完整、错误的数据,该脏数据的类型可以由用户自己来定义。所述修改规则可以是一种哈希函数,通过该哈希函数,可以将所述脏数据转换成正确的新数据。如图3所示,是图1所示数据转换字典21的示意图。所述数据转换字典21中第一列的数据为脏数据,第二列的数据为新数据。通过所述哈希函数的运算,可以将数据库5中的脏数据转换成对应的新数据。假设所述哈希函数为H(X)=Y,其中H代表转换规则(即某一种数据转换函数),X代表旧数据,Y代表新数据。如果用户在数据转换字典21中定义了a@b(@代表空格)为脏数据,并且定义该脏数据的转换规则H为将所述脏a@b中的空格修改为“-”,通过该哈希函数的转换,所述数据库5中所有的脏数据a@b将修改为a-b。
所述主机2用于将所述数据库5中的数据编码格式转换成标准的编码格式,将脏数据修改成新数据,并对数据库5中的数据进行标准化处理。所述主机2连接有显示器1、键盘3及鼠标4,用作对数据库5清洗过程中的输入、输出设备。
如图2所示,是图1所示主机2的功能模块图。所述主机2包括数据读取模块210,编码格式变更模块211,脏数据修改模块212及数据标准化模块213。本发明所称的模块是完成一特定功能的计算机程序段,比程序更适合于描述软件在计算机中的执行过程,因此在本发明以下对软件描述中都以模块描述。
其中,数据读取模块210用于访问所述数据库5,获取所述数据库5的属性(数据库版本、类型等),从数据库5中读取一行数据(从第一行开始依次往下读取),并获取该行数据的属性。其中,所述数据属性包括:数据编码格式、字符格式及字符长短等。
编码格式变更模块211用于判断所述数据读取模块210读取的数据的编码格式是否符合标准。如果所述数据的编码格式不符合标准,则将该数据的编码格式变更为标准的编码格式。所述数据编码格式的标准可以由用户自己定义,例如用户定义数据编码格式的标准为UTF-8,如果数据读取模块210读取的数据编码格式不是UTF-8,则编码格式变更模块211会将该数据的编码格式变更为UTF-8。
脏数据修改模块212用于根据所述数据转换字典21的设置,判断所述数据读取模块210读取的数据是否含有脏数据。如果所述数据中含有脏数据,则根据元素化分离识别算法,将所述数据进行分解,按照所述脏数据的修改规则,将其中的脏数据修改为对应的新数据。
数据标准化模块213用于对所述数据读取模块210读取的数据进行标准化处理,将经过标准化处理后的新数据导入所述数据库5中。具体而言,如果所述数据读取模块210读取数据为字符,则数据标准化模块213判断所述字符的格式是否符合标准。如果所述字符的格式不符合标准,则将该字符格式变更为标准的字符格式。所述字符格式的标准可以由用户自己定义,例如用户定义字符格式的标准为8个字节长,如果数据读取模块210读取的数据字符格式不是8个字节长,则数据标准化模块213会将该数据的字符格式变更为8个字节长。如果所述数据读取模块210读取数据为整数,则数据标准化模块213判断所述整数的范围是否符合标准。如果所述整数的范围不符合标准,则将该整数变更为符合标准范围的整数。所述整数范围的标准可以由用户自己定义,例如用户定义整数范围的标准为0-255,如果数据读取模块210读取的整数为-1,则数据标准化模块213会将该整数-1变更为+1或其它用户定义的数值。然后,数据标准化模块213对修改后的新数据进行一致性检测与修复,并对所述修改后的新数据进行压缩,将压缩后的新数据导入所述数据库5中。
数据标准化模块213还用于判断所述数据库5中的数据是否读取完毕,如果没有读取完毕,则数据读取模块210读取数据库5中的下一行的数据。
如图4所示,是本发明数据库清洗方法较佳实施例的流程图。首先,步骤S401,数据读取模块210访问所述数据库5,获取所述数据库5的属性(数据库版本、类型等)。
步骤S402,数据读取模块210从所述数据库5中读取一行数据(从第一行开始依次往下读取),并获取该行数据的属性。其中,所述数据属性包括:数据编码格式、字符格式及字符长短等。
步骤S403,编码格式变更模块211判断所述数据读取模块210读取的数据的编码格式是否符合标准。如果所述数据的编码格式符合标准,则流程直接转到步骤S405。
如果所述数据的编码格式不符合标准,步骤S404,编码格式变更模块211将该数据的编码格式变更为标准的编码格式。所述数据编码格式的标准可以由用户自己定义,例如用户定义数据编码格式的标准为UTF-8,如果数据读取模块210读取的数据编码格式不是UTF-8,则编码格式变更模块211会将该数据的编码格式变更为UTF-8。
步骤S405,脏数据修改模块212根据所述数据转换字典21的设置,判断所述数据读取模块210读取的数据是否含有脏数据。如果所述数据中不含脏数据,则流程直接转到步骤S407。所述数据转换字典21用于定义脏数据及所述脏数据的修改规则。所述脏数据即数据库5中存储的不完整、错误的数据,该脏数据的类型可以由用户自己来定义。所述修改规则可以是一种哈希函数,通过该哈希函数,可以将所述脏数据转换成正确的新数据。如图3所示,是图1所示数据转换字典21的示意图。所述数据转换字典21中第一列的数据为脏数据,第二列的数据为新数据。通过所述哈希函数的运算,可以将数据库5中的脏数据转换成对应的新数据。假设所述哈希函数为H(X)=Y,其中H代表转换规则(即某一种数据转换函数),X代表旧数据,Y代表新数据。如果用户在数据转换字典21中定义了cde为脏数据,并且定义该脏数据的转换规则H为将所述脏数据cde修改为dec,通过该哈希函数的转换,所述数据库5中所有的脏数据cde将修改为dec。
如果所述数据中含有脏数据,步骤S406,脏数据修改模块212根据元素化分离识别算法,将所述数据进行分解,按照所述脏数据的修改规则,将其中的脏数据修改为对应的新数。
步骤S407,数据标准化模块213对所述数据读取模块210读取的数据进行标准化处理,将经过标准化处理后的新数据导入所述数据库5中。
具体而言,如果所述数据读取模块210读取数据为字符,则数据标准化模块213判断所述字符的格式是否符合标准。如果所述字符的格式不符合标准,则将该字符格式变更为标准的字符格式。所述字符格式的标准可以由用户自己定义,例如用户定义字符格式的标准为8个字节长,如果数据读取模块210读取的数据字符格式不是8个字节长,则数据标准化模块213会将该数据的字符格式变更为8个字节长。如果所述数据读取模块210读取数据为整数,则数据标准化模块213判断所述整数的范围是否符合标准。如果所述整数的范围不符合标准,则将该整数变更为符合标准范围的整数。所述整数范围的标准可以由用户自己定义,例如用户定义整数范围的标准为0-255,如果数据读取模块210读取的整数为-1,则数据标准化模块213会将该整数-1变更为+1或其它用户定义的数值。然后,数据标准化模块213对修改后的新数据进行一致性检测与修复,并对所述修改后的新数据进行压缩,将压缩后的新数据导入所述数据库5中。
步骤S408,数据标准化模块213判断所述数据库5中的数据是否读取完毕,如果没有读取完毕,则流程回到步骤S402。如果所述数据库5中的数据读取完毕,则流程结束。
Claims (8)
1.一种数据库清洗系统,包括主机及数据库,所述数据库中存储有数据及该数据的属性,所述数据属性包括数据的编码格式、字符格式及字符长短,其特征在于,所述主机设置有数据转换字典,用于定义脏数据及所述脏数据的修改规则,该主机还包括:
数据读取模块,用于访问所述数据库,获取所述数据库的属性,从数据库中读取一行数据,并获取该行数据的属性;
编码格式变更模块,用于在所述数据读取模块读取的数据的编码格式不符合设定标准时,将该数据的编码格式变更为标准的编码格式;
脏数据修改模块,用于在所述数据读取模块读取的数据含有脏数据时,根据所述数据转换字典的设置,按照所述脏数据的修改规则,将所述数据中的脏数据修改为对应的新数据;及
数据标准化模块,用于对所述数据读取模块读取的数据进行标准化处理,将经过标准化处理后的新数据导入所述数据库中。
2.如权利要求1所述的数据库清洗系统,其特征在于,所述脏数据是所述数据库中存储的不完整、错误的数据。
3.如权利要求2所述的数据库清洗系统,其特征在于,所述修改规则是一种将所述脏数据转换成正确的新数据的哈希函数。
4.如权利要求1所述的数据库清洗系统,其特征在于,所述标准化处理是指将数据的字符格式及范围变更为标准的字符格式和范围。
5.一种数据库清洗方法,其特征在于,该方法包括如下步骤:
设置数据转换字典,定义数据库中的脏数据及所述脏数据的修改规则;
访问所述数据库,获取所述数据库的属性,从数据库中读取一行数据,并获取该行数据的属性,所述数据属性包括数据的编码格式、字符格式及字符长短;
若所述读取的数据的编码格式不符合设定标准,则将该数据的编码格式变更为标准的编码格式;
若所述读取的数据含有脏数据,则根据所述数据转换字典的设置,按照所述脏数据的修改规则,将所述数据中的脏数据修改为对应的新数据;
对所述读取的数据进行标准化处理,将经过标准化处理后的新数据导入所述数据库中;
重复所述读取数据、变更数据编码格式、修改脏数据及数据标准化的步骤,直到所述数据库中的所有数据处理完毕。
6.如权利要求5所述的数据库清洗方法,其特征在于,所述脏数据是所述数据库中存储的不完整、错误的数据。
7.如权利要求6所述的数据库清洗方法,其特征在于,所述修改规则是一种将所述脏数据转换成正确的新数据的哈希函数。
8.如权利要求5所述的数据库清洗方法,其特征在于,所述步骤对所述读取的数据进行标准化处理是指将所述读取的数据的字符格式及范围变更为标准的字符格式和范围。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007102004948A CN101290622A (zh) | 2007-04-20 | 2007-04-20 | 数据库清洗系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007102004948A CN101290622A (zh) | 2007-04-20 | 2007-04-20 | 数据库清洗系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101290622A true CN101290622A (zh) | 2008-10-22 |
Family
ID=40034881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007102004948A Pending CN101290622A (zh) | 2007-04-20 | 2007-04-20 | 数据库清洗系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101290622A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593352A (zh) * | 2012-08-15 | 2014-02-19 | 阿里巴巴集团控股有限公司 | 一种海量数据清洗方法及装置 |
CN104508660A (zh) * | 2012-06-04 | 2015-04-08 | 惠普发展公司,有限责任合伙企业 | 数据到数据库上的用户定义加载 |
CN105808604A (zh) * | 2014-12-31 | 2016-07-27 | 航天信息股份有限公司 | 数据合规管理方法及系统 |
CN109299183A (zh) * | 2018-11-20 | 2019-02-01 | 北京锐安科技有限公司 | 一种数据处理方法、装置、终端设备和存储介质 |
CN110019169A (zh) * | 2017-12-29 | 2019-07-16 | 中国移动通信集团陕西有限公司 | 一种数据处理的方法及装置 |
CN111078639A (zh) * | 2019-12-03 | 2020-04-28 | 望海康信(北京)科技股份公司 | 数据标准化方法、装置以及电子设备 |
CN112199366A (zh) * | 2019-04-28 | 2021-01-08 | 杭州数梦工场科技有限公司 | 数据表处理方法、装置及设备 |
CN112925769A (zh) * | 2021-03-08 | 2021-06-08 | 浪潮云信息技术股份公司 | 一种数字民政内部数据汇聚共享方法 |
-
2007
- 2007-04-20 CN CNA2007102004948A patent/CN101290622A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104508660A (zh) * | 2012-06-04 | 2015-04-08 | 惠普发展公司,有限责任合伙企业 | 数据到数据库上的用户定义加载 |
US10474658B2 (en) | 2012-06-04 | 2019-11-12 | Micro Focus Llc | User-defined loading of data onto a database |
CN103593352A (zh) * | 2012-08-15 | 2014-02-19 | 阿里巴巴集团控股有限公司 | 一种海量数据清洗方法及装置 |
CN103593352B (zh) * | 2012-08-15 | 2016-10-12 | 阿里巴巴集团控股有限公司 | 一种海量数据清洗方法及装置 |
CN105808604A (zh) * | 2014-12-31 | 2016-07-27 | 航天信息股份有限公司 | 数据合规管理方法及系统 |
CN105808604B (zh) * | 2014-12-31 | 2021-02-05 | 航天信息股份有限公司 | 数据合规管理方法及系统 |
CN110019169A (zh) * | 2017-12-29 | 2019-07-16 | 中国移动通信集团陕西有限公司 | 一种数据处理的方法及装置 |
CN110019169B (zh) * | 2017-12-29 | 2021-04-13 | 中国移动通信集团陕西有限公司 | 一种数据处理的方法及装置 |
CN109299183A (zh) * | 2018-11-20 | 2019-02-01 | 北京锐安科技有限公司 | 一种数据处理方法、装置、终端设备和存储介质 |
CN112199366A (zh) * | 2019-04-28 | 2021-01-08 | 杭州数梦工场科技有限公司 | 数据表处理方法、装置及设备 |
CN111078639A (zh) * | 2019-12-03 | 2020-04-28 | 望海康信(北京)科技股份公司 | 数据标准化方法、装置以及电子设备 |
CN112925769A (zh) * | 2021-03-08 | 2021-06-08 | 浪潮云信息技术股份公司 | 一种数字民政内部数据汇聚共享方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101290622A (zh) | 数据库清洗系统及方法 | |
CN110795455A (zh) | 依赖关系解析方法、电子装置、计算机设备及可读存储介质 | |
CN110659282B (zh) | 数据路由的构建方法、装置、计算机设备和存储介质 | |
CN108388640B (zh) | 一种数据转换方法、装置以及数据处理系统 | |
CN101859303A (zh) | 元数据管理方法及管理系统 | |
CN107092554A (zh) | 一种应用程序的故障代码确认方法及装置 | |
CN110059129A (zh) | 数据存储方法、装置及电子设备 | |
CN101984411A (zh) | 一种核电站生成虚拟数字控制系统组态文件的方法及装置 | |
CN112199302A (zh) | 测试数据生成方法、系统及相应设备和存储介质 | |
CN114443656A (zh) | 一种可定制的自动化数据模型分析工具及其使用方法 | |
CN110647577A (zh) | 数据立方体的分区方法、装置、计算机设备及存储介质 | |
CN116029080A (zh) | 芯片存储装置设计及验证方法、装置及电子设备 | |
CN111984673B (zh) | 一种电网电能量计量系统树形结构模糊检索方法和装置 | |
CN113626464A (zh) | 基于ClickHouse数据库内存数据的查询支持方法及系统 | |
CN111898351B (zh) | 基于Aviator的Excel数据自动导入方法、装置、终端设备及存储介质 | |
CN113407565A (zh) | 跨库数据查询方法、装置和设备 | |
WO2018138205A1 (en) | Model search method and device based on semantic model framework | |
CN108255819A (zh) | 一种基于分析工具spark的增值税数据整合方法及系统 | |
CN113343646A (zh) | 数据转换方法和装置 | |
TWI402697B (zh) | 資料庫更新系統及方法 | |
CN113535938A (zh) | 基于内容识别的标准数据构建方法、系统、设备及介质 | |
CN109284128A (zh) | 转换数据的方法、装置、存储介质及移动终端 | |
CN115168399B (zh) | 基于图形化界面的数据处理方法、装置、设备及存储介质 | |
Li et al. | Study on efficiency of full-text retrieval based on lucene | |
CN116595101B (zh) | 数据同步方法、装置、设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20081022 |