CN106599267B - 一种删除数据的方法及装置 - Google Patents
一种删除数据的方法及装置 Download PDFInfo
- Publication number
- CN106599267B CN106599267B CN201611199406.2A CN201611199406A CN106599267B CN 106599267 B CN106599267 B CN 106599267B CN 201611199406 A CN201611199406 A CN 201611199406A CN 106599267 B CN106599267 B CN 106599267B
- Authority
- CN
- China
- Prior art keywords
- data
- deleting
- sql
- deleted
- rule
- 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.)
- Active
Links
Images
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- 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/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/162—Delete operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24561—Intermediate data storage techniques for performance improvement
Abstract
本发明实施例公开了一种删除数据的方法及装置。该方法包括:读取配置文件,并判断运行模式是否正确;若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;按表名分组,并判断是否存在待删除数据分组;若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据;若超过每次最大提交数,则分批次删除数据。本发明将要删除的数据的查询SQL配置到文件中,有助于解决在使用hadoop、solr等大数据存储技术时,删除数据步骤复杂的难题,大幅缩减了手工删除数据的工作量,提高工作效率;将SQL保存到文件中,当有新的清除规则时,只需要维护文件即可,避免重复性工作。
Description
技术领域
本发明实施例涉及数据处理的技术领域,尤其涉及一种删除数据的方法及装置。
背景技术
随着现代化科学技术的发展,信息系统在越来越多的大中型企业、政府中得到了更加广泛的应用,由此也积累了大量的历史数据。随着业务数据的增长、业务的复杂程度提升,数据质量问题也日益凸显。当人们意识到数据质量问题需要解决的重要性时,研究人员便制定出了一系列对数据质量问题进行检测和清洗的框架及思想。许多数据库厂商基于这些框架及思想开发出了各自的数据清洗工具。随着清洗工具和清洗理论的实施与应用,对于数据质量的提升起到了很好的作用,由此便体现出了数据清洗的重要性。
当建立一个信息系统的时候,即使进行了良好的设计和规划,也不能保证在所有情况下,所存放数据的质量都能满足用户的要求。用户录入错误、企业合并以及企业环境随着时间的推移而改变,这些都会影响所存放数据的质量,在单个数据源中可能存在质量问题。例如,某个字段是一个自由格式的字符串类型,比如地址信息、手机号等;错误的字段值,由于录入错误或者其他原因,数据库中一个人的年龄为485等。考虑多个数据源的情形,比如数据仓库系统或者是基于Web的信息系统,问题更加复杂。来自不同数据源的数据,对同一个概念有不同的表示方法。在集成多个数据源时,还有相似重复记录的问题,需要检测出并且合并这些记录,解决这些问题的过程称为数据清洗过程。数据清洗(data cleaning,data cleansing或者data scrubbing)的目的是检测数据中存在的错误和不一致,剔除或者改正它们,这样就提高了数据的质量。在基于solr、hbase的数据中心中,由于历史遗留问题等原因,导致系统中存在一些垃圾数据,由于数据量巨大,尤其是在不能确定数据所在表时,不可能进行人工处理。
发明内容
本发明实施例的目的在于提出一种删除数据的方法及装置,旨在解决海量数据中垃圾数据清除时需要手工寻找表及数据删除步骤复杂的问题。
为达此目的,本发明实施例采用以下技术方案:
第一方面,一种删除数据的方法,所述方法包括:
读取配置文件,并判断运行模式是否正确;
若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;
按表名分组,并判断是否存在待删除数据分组;
若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;
若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。
优选地,所述读取配置文件,包括:
读取config.properties获取dbConnInfo.json、bucketInfo.json存放路径、查询系统接口、每次最大数据删除数;
读取所述dbConnInfo.json并获取solr、hbase的zookeeper链接;
读取所述bucketInfo.json并获取数据存储规则。
优选地,所述选择SQL数据清洗规则,包括:
当以SQL模式进行数据清洗时,通过调用海量数据查询系统接口查询rowkey数据。
优选地,所述按表名分组,包括:
根据所述配置文件中的数据存储规则,将rowkey数据按照表名进行分组保存并去重。
优选地,所述方法还包括:若所述运行模式不正确,则退出数据删除流程。
第二方面,一种删除数据的装置,所述装置包括:
读取模块,用于读取配置文件;
第一判断模块,用于判断运行模式是否正确;
选择模块,用于若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;
分组模块,用于按表名分组;
第二判断模块,用于判断是否存在待删除数据分组;
处理模块,用于若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。
优选地,所述读取模块,具体用于:
读取config.properties获取dbConnInfo.json、bucketInfo.json存放路径、查询系统接口、每次最大数据删除数;
读取所述dbConnInfo.json并获取solr、hbase的zookeeper链接;
读取所述bucketInfo.json并获取数据存储规则。
优选地,所述选择模块,具体用于:
当以SQL模式进行数据清洗时,通过调用海量数据查询系统接口查询rowkey数据。
优选地,所述分组模块,用于:
根据所述配置文件中的数据存储规则,将rowkey数据按照表名进行分组保存并去重。
优选地,所述装置还包括:
退出模块,用于若所述运行模式不正确,则退出数据删除流程。
本发明实施例提供的一种删除数据的方法及装置,读取配置文件,并判断运行模式是否正确;若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;按表名分组,并判断是否存在待删除数据分组;若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。本发明将要删除的数据的查询SQL配置到文件中,有助于解决在使用hadoop、solr等大数据存储技术时,删除数据步骤复杂的难题,大幅缩减了手工删除数据的工作量,提高工作效率;将SQL保存到文件中,当有新的清除规则时,只需要维护文件即可,避免重复性工作。
附图说明
图1是本发明实施例提供的一种删除数据的方法的流程示意图;
图2是本发明实施例提供的另一种删除数据的方法的流程示意图;
图3是本发明实施例提供的一种删除数据的装置的功能模块示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
参考图1,图1是本发明实施例提供的一种删除数据的方法的流程示意图。
如图1所示,所述删除数据的方法包括:
步骤101,读取配置文件,并判断运行模式是否正确;
优选地,所述读取配置文件,包括:
读取config.properties获取dbConnInfo.json、bucketInfo.json存放路径、查询系统接口、每次最大数据删除数;
读取所述dbConnInfo.json并获取solr、hbase的zookeeper链接;
读取所述bucketInfo.json并获取数据存储规则。
步骤102,若所述运行模式正确,则选择结构化查询语言(Structured QueryLanguage,SQL)数据清洗规则或者rowkey数据清洗规则;
优选地,所述选择SQL数据清洗规则,包括:
当以SQL模式进行数据清洗时,通过调用海量数据查询系统接口查询rowkey数据。
步骤103,按表名分组,并判断是否存在待删除数据分组;
优选地,所述按表名分组,包括:
根据所述配置文件中的数据存储规则,将rowkey数据按照表名进行分组保存并去重。
步骤104,若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;
步骤105,若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。
本发明实施例提供的一种删除数据的方法,读取配置文件,并判断运行模式是否正确;若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;按表名分组,并判断是否存在待删除数据分组;若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。本发明将要删除的数据的查询SQL配置到文件中,有助于解决在使用hadoop、solr等大数据存储技术时,删除数据步骤复杂的难题,大幅缩减了手工删除数据的工作量,提高工作效率;将SQL保存到文件中,当有新的清除规则时,只需要维护文件即可,避免重复性工作。
参考图2,图2是本发明实施例提供的另一种删除数据的方法的流程示意图。
如图2所示,所述删除数据的方法包括:
步骤201,读取配置文件,并判断运行模式是否正确;
步骤202,若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;
步骤203,按表名分组,并判断是否存在待删除数据分组;
步骤204,若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;
步骤205,若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组;
步骤206,若所述运行模式不正确,则退出数据删除流程。
参考图3,图3是本发明实施例提供的一种删除数据的装置的功能模块示意图。
如图3,所述装置包括:
读取模块301,用于读取配置文件;
优选地,所述读取模块301,具体用于:
读取config.properties获取dbConnInfo.json、bucketInfo.json存放路径、查询系统接口、每次最大数据删除数;
读取所述dbConnInfo.json并获取solr、hbase的zookeeper链接;
读取所述bucketInfo.json并获取数据存储规则。
第一判断模块302,用于判断运行模式是否正确;
选择模块303,用于若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;
优选地,所述选择模块303,具体用于:
当以SQL模式进行数据清洗时,通过调用海量数据查询系统接口查询rowkey数据。
分组模块304,用于按表名分组;
优选地,所述分组模块304,用于:
根据所述配置文件中的数据存储规则,将rowkey数据按照表名进行分组保存并去重。
第二判断模块305,用于判断是否存在待删除数据分组;
处理模块306,用于若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。
优选地,所述装置还包括:
退出模块,用于若所述运行模式不正确,则退出数据删除流程。
本发明实施例提供的一种删除数据的装置,读取配置文件,并判断运行模式是否正确;若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则;按表名分组,并判断是否存在待删除数据分组;若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。本发明将要删除的数据的查询SQL配置到文件中,有助于解决在使用hadoop、solr等大数据存储技术时,删除数据步骤复杂的难题,大幅缩减了手工删除数据的工作量,提高工作效率;将SQL保存到文件中,当有新的清除规则时,只需要维护文件即可,避免重复性工作。
以上结合具体实施例描述了本发明实施例的技术原理。这些描述只是为了解释本发明实施例的原理,而不能以任何方式解释为对本发明实施例保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明实施例的其它具体实施方式,这些方式都将落入本发明实施例的保护范围之内。
Claims (8)
1.一种删除数据的方法,其特征在于,所述方法包括:
读取配置文件,并判断运行模式是否正确,所述配置文件包括数据存储规则;
若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则,所述SQL数据清洗规则包括配置到文件中的将要删除的数据的查询SQL;
根据所述配置文件中的数据存储规则,将rowkey数据按照表名进行分组保存并去重,并判断是否存在待删除数据分组;
若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;
若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。
2.根据权利要求1所述的方法,其特征在于,所述读取配置文件,包括:
读取config.properties获取dbConnInfo.json、bucketInfo.json存放路径、查询系统接口、每次最大数据删除数;
读取所述dbConnInfo.json并获取solr、hbase的zookeeper链接;
读取所述bucketInfo.json并获取数据存储规则。
3.根据权利要求1所述的方法,其特征在于,所述选择SQL数据清洗规则,包括:
当以SQL模式进行数据清洗时,通过调用海量数据查询系统接口查询rowkey数据。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:若所述运行模式不正确,则退出数据删除流程。
5.一种删除数据的装置,其特征在于,所述装置包括:
读取模块,用于读取配置文件,所述配置文件包括数据存储规则;
第一判断模块,用于判断运行模式是否正确;
选择模块,用于若所述运行模式正确,则选择SQL数据清洗规则或者rowkey数据清洗规则,所述SQL数据清洗规则包括配置到文件中的将要删除的数据的查询SQL;
分组模块,根据所述配置文件中的数据存储规则,将rowkey数据按照表名进行分组保存并去重;
第二判断模块,用于判断是否存在待删除数据分组;
处理模块,用于若存在待删除数据分组,则判断是否超过每次最大提交数,若否,则删除数据,并返回继续判断是否存在待删除数据分组;若超过每次最大提交数,则分批次删除数据,并返回继续判断是否存在待删除数据分组。
6.根据权利要求5所述的装置,其特征在于,所述读取模块,具体用于:
读取config.properties获取dbConnInfo.json、bucketInfo.json存放路径、查询系统接口、每次最大数据删除数;
读取所述dbConnInfo.json并获取solr、hbase的zookeeper链接;
读取所述bucketInfo.json并获取数据存储规则。
7.根据权利要求5所述的装置,其特征在于,所述选择模块,具体用于:
当以SQL模式进行数据清洗时,通过调用海量数据查询系统接口查询rowkey数据。
8.根据权利要求5至7任意一项所述的装置,其特征在于,所述装置还包括:
退出模块,用于若所述运行模式不正确,则退出数据删除流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611199406.2A CN106599267B (zh) | 2016-12-22 | 2016-12-22 | 一种删除数据的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611199406.2A CN106599267B (zh) | 2016-12-22 | 2016-12-22 | 一种删除数据的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106599267A CN106599267A (zh) | 2017-04-26 |
CN106599267B true CN106599267B (zh) | 2020-12-08 |
Family
ID=58600854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611199406.2A Active CN106599267B (zh) | 2016-12-22 | 2016-12-22 | 一种删除数据的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106599267B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107679171A (zh) * | 2017-09-29 | 2018-02-09 | 北京酷我科技有限公司 | 一种数据库删除表优化算法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593352A (zh) * | 2012-08-15 | 2014-02-19 | 阿里巴巴集团控股有限公司 | 一种海量数据清洗方法及装置 |
CN103714137A (zh) * | 2013-12-19 | 2014-04-09 | 大唐移动通信设备有限公司 | 一种数据文件的删除方法和系统 |
CN104361022A (zh) * | 2014-10-22 | 2015-02-18 | 浪潮软件集团有限公司 | 一种基于采集数据统计以及前台展现的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101431818A (zh) * | 2008-12-10 | 2009-05-13 | 上海闻泰电子科技有限公司 | 一种实现手机数据保护功能的方法 |
CN104731791A (zh) * | 2013-12-18 | 2015-06-24 | 东阳艾维德广告传媒有限公司 | 一种市场销售分析数据集市系统 |
CN104615725B (zh) * | 2015-02-09 | 2018-03-16 | 武汉众廉科技有限公司 | 一种基于Web的在线自定义报表实现方法 |
-
2016
- 2016-12-22 CN CN201611199406.2A patent/CN106599267B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593352A (zh) * | 2012-08-15 | 2014-02-19 | 阿里巴巴集团控股有限公司 | 一种海量数据清洗方法及装置 |
CN103714137A (zh) * | 2013-12-19 | 2014-04-09 | 大唐移动通信设备有限公司 | 一种数据文件的删除方法和系统 |
CN104361022A (zh) * | 2014-10-22 | 2015-02-18 | 浪潮软件集团有限公司 | 一种基于采集数据统计以及前台展现的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106599267A (zh) | 2017-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017162083A1 (zh) | 数据清洗方法和装置 | |
US10915508B2 (en) | Data linking | |
CN108132957B (zh) | 一种数据库处理方法及装置 | |
CN101902505B (zh) | 一种分布式dns查询日志的实时统计装置及方法 | |
US20170279840A1 (en) | Automated event id field analysis on heterogeneous logs | |
US8626835B1 (en) | Social identity clustering | |
WO2020087082A1 (en) | Trace and span sampling and analysis for instrumented software | |
US20160299827A1 (en) | Generating a visualization of a metric at a level of execution | |
AU2013201725B2 (en) | Foreign key identification in database management systems | |
CN104699796A (zh) | 一种基于数据仓库的数据清洗方法 | |
WO2019120093A1 (en) | Cardinality estimation in databases | |
JP6553816B2 (ja) | ユーザデータ共有方法及び装置 | |
CN106156170B (zh) | 舆情分析方法及装置 | |
CN106599189A (zh) | 基于云计算的动态Skyline查询装置 | |
CN108073720A (zh) | 应用于大数据系统的数据质量管理系统及方法 | |
CN112052134A (zh) | 一种业务数据的监控方法及装置 | |
CN102364475A (zh) | 基于身份识别对检索结果排序的系统及方法 | |
CN106599267B (zh) | 一种删除数据的方法及装置 | |
CN108776660B (zh) | 一种基于ArcGIS的批量匹配道路属性的方法 | |
CN104965846B (zh) | MapReduce平台上的虚拟人建立方法 | |
CN107871055A (zh) | 一种数据分析方法和装置 | |
WO2012088761A1 (zh) | 基于数据分析的安全性信息交互监测系统及方法 | |
EP2710493A1 (en) | System and method for configuration policy extraction | |
US20140025369A1 (en) | System and method for phrase matching with arbitrary text | |
CN110019152A (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 |