CN111241121A - 一种基于elasticsearch父子关系的海量发票数据查询方法及系统 - Google Patents
一种基于elasticsearch父子关系的海量发票数据查询方法及系统 Download PDFInfo
- Publication number
- CN111241121A CN111241121A CN201911389046.6A CN201911389046A CN111241121A CN 111241121 A CN111241121 A CN 111241121A CN 201911389046 A CN201911389046 A CN 201911389046A CN 111241121 A CN111241121 A CN 111241121A
- Authority
- CN
- China
- Prior art keywords
- child
- parent
- taxpayer
- data
- query
- 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
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 206010033799 Paralysis Diseases 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
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/24—Querying
- G06F16/242—Query formulation
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/04—Billing or invoicing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/10—Tax strategies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种基于elasticsearch父子关系的海量发票数据查询方法,该方法包括以下步骤:创建父子关系表,设置维度表纳税人数据为父节点,事实表发票数据为子节点;创建父节点的具体信息、创建子节点的具体信息;在父级和子级之间创建链接,使子级文档与父级文档存储在同一分片上;采用固定的周期创建索引,通过has_child查询父级中的数据返回子级、查询子级中的数据返回父级。还包括一种基于elasticsearch父子关系的海量发票数据查询系统。本发明通过has_child实现海量发票数据多条件查询秒级返回。通过在父级与子级间建立链接,实现了事实表发票数据随着纳税人维度变更而变更,及时的调整并保证数据的准确性,解决了之前需要对每个事实表发票数据进行修改的问题,提高了工作效率,减少错误率。
Description
技术领域
本发明涉及发票数据查询技术领域,具体地说是一种基于elasticsearch父子关系的海量发票数据查询方法及系统。
背景技术
目前,关于发票数据的存储和查询都是基于传统的关系型数据库,虽然能满足一般的查询发票的业务需求,但是基于物品模糊查询、海量数据处理时,查询响应速度慢,高并发查询条件下很容易造成服务器瘫痪。虽然现在有基于elasearch的数据查询,但是对于纳税人维度频繁变更,基于税务机关或者纳税人的维度查询的只能修改历史数据。
发明内容
本发明的目的在于提供一种基于elasticsearch父子关系的海量发票数据查询方法及系统,用于解决在发票查询时,当纳税人维度频繁变更,事实表发票数据不会随着纳税人维度变更而变更,需要修改历史数据,工作量大且容易导致服务器瘫痪、错误率高的问题。
本发明解决其技术问题所采取的技术方案是:
本发明第一方面提供了一种基于elasticsearch父子关系的海量发票数据查询方法,其特征是,该方法包括以下步骤:
创建父子关系表,设置维度表纳税人数据为父节点,事实表发票数据为子节点;
创建父节点的具体信息、创建子节点的具体信息;
在父级和子级之间创建链接,使子级文档与父级文档存储在同一分片上;
采用固定的周期创建索引,通过has_child查询父级中的数据返回子级、查询子级中的数据返回父级。
结合第一方面,在第一方面第一种可能实现的方式中,在上述方法之前还包括:将维度表纳税人数据与事实表发票数据存储在greenplumn数据库中。
结合第一方面,在第一方面第二种可能实现的方式中,所述的维度表纳税人数据包括:纳税人KEY、纳税人识别号、纳税人名称、所属省份、所属地市、法定代表人名称、法人证件号码、财务联系人、税务机关、行业明细名称、经营范围、生产经营地址、从业人数、注册资本、登记注册乐行名称、开业登记日期、是否一般纳税人、认定一般纳税人日期、取消日期、电话号码、创建时间、行业KEy、地区key、纳税人电子档案号、纳税人状态代码、财务负责人证件号码、三证合一之前的纳税人识别号、开业登记日期、增值税企业类型代码、减免税审批结果标志、办税人姓名、办税人证件号码、税收管理员代码。
结合第一方面,在第一方面第三种可能实现的方式中,所述的事实表发票数据包括:开票月份、纳税人KEY、发票类别、物品名称、物品单位、物品序号、金额、税率、税额、发票代码、发票号码、dw_fact_xxfp的id、作废标志、开票日期、销方纳税人名称、购方纳税人名称、报税时间、列表序号、明细ID、销方纳税人识别号、购方纳税人识别号、税控盘号、身份证号码、单位、商品编码、购方税务机关代码、差额开票标志、Y是、N否、单价、物品数量、所属地市。
结合第一方面,在第一方面第四种可能实现的方式中,在父级和子级之间创建链接具体包括:采用纳税人KEY作为父级与子级的关联条件。
结合第一方面,在第一方面第五种可能实现的方式中,所述的创建父子关系表通过kettle调用elasticsearch-jdbc进行创建父子关系。
结合第一方面,在第一方面第六种可能实现的方式中,在创建索引时,还包括设置分词,用于数据的模糊查询、精确查询。
结合第一方面,在第一方面第七种可能实现的方式中,所述的模糊查询在设置分词时没有指定index属性,通过match_phras实现查询;所述的精确查询在设置分词时制定了index的not_analyzed属性,通过term实现查询。
本发明第二方面提供了一种基于elasticsearch父子关系的海量发票数据查询系统,其特征是,该系统包括父子关系表创建模块,用于通过kettle调用elasticsearch-jdbc创建父子关系表;或/和,
greenplumn数据库,用于存储父节点和子节点的具体信息;或/和,
关联模块,用于在父级和子级直接创建链接,使系统在不重新更新子索引的情况下能够更新父索引;或/和,
查询模块,用于创建索引,通过has_child进行快速查询。
结合第二方面,在第二方面第一种可能实现的方式中,该系统还包括分词设置模块,用于在创建索引时设置分词,实现数据的模糊查询和精确查询。
本发明第二方面的所述的系统能够实现第一方面及第一方面的各实现方式中的方法,并取得相同的效果。
由以上技术方案可知,本发明可有效的解决海量数据加工处理,通过has_child实现海量发票数据多条件查询秒级返回。通过在父级与子级之间建立链接,实现了事实表发票数据随着纳税人维度变更而变更,及时的调整并保证数据的准确性,解决了之前需要对每个事实表发票数据进行修改的问题,提高了工作效率,减少错误率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一种基于elasticsearch父子关系的海量发票数据查询方法流程示意图;
图2为本发明实施例所应用的一种基于elasticsearch父子关系的海量发票数据查询系统结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
发票数据的查询主要是应用于税局内部人员的应用,但是基于发票数据的敏感性,所以在税务机关内部是根据税务机关进行权限分离的数据查询,企业的发票数据只能有企业所管辖的税务机关进行查看,同时企业的历史数据也能同步查询,但是企业的所属税务机关等档案信息会频繁发生变更,这样对连续几年历史的事实表发票数据进行变更很消耗很长时间,很难满足实时性要求比较高的发票数据系统分析,基于事实表的数据量很大,一般维度表的数据量比较小,本发明实施例是采用父子关系提供一种海量发票数据查询方法,能过实现频繁变更相关基础维度信息数据的海量查询。如图1所示,一种基于elasticsearch父子关系的海量发票数据查询方法,该方法包括以下步骤:
S1、将维度表纳税人数据与事实表发票数据存储在greenplumn数据库中;
S2、创建父子关系表,设置维度表纳税人数据为父节点,事实表发票数据为子节点;
S3、创建父节点的具体信息、创建子节点的具体信息;
S4、在父级和子级之间创建链接,使子级文档与父级文档存储在同一分片上;
S5、采用固定的周期创建索引,通过has_child查询父级中的数据返回子级、查询子级中的数据返回父级。周期可选择按季度进行设置。
维度表纳税人数据包括:纳税人KEY、纳税人识别号、纳税人名称、所属省份、所属地市、法定代表人名称、法人证件号码、财务联系人、税务机关、行业明细名称、经营范围、生产经营地址、从业人数、注册资本、登记注册乐行名称、开业登记日期、是否一般纳税人、认定一般纳税人日期、取消日期、电话号码、创建时间、行业KEy、地区key、纳税人电子档案号、纳税人状态代码、财务负责人证件号码、三证合一之前的纳税人识别号、开业登记日期、增值税企业类型代码、减免税审批结果标志、办税人姓名、办税人证件号码、税收管理员代码。
事实表发票数据包括:开票月份、纳税人KEY、发票类别、物品名称、物品单位、物品序号、金额、税率、税额、发票代码、发票号码、dw_fact_xxfp的id、作废标志、开票日期、销方纳税人名称、购方纳税人名称、报税时间、列表序号、明细ID、销方纳税人识别号、购方纳税人识别号、税控盘号、身份证号码、单位、商品编码、购方税务机关代码、差额开票标志、Y是、N否、单价、物品数量、所属地市。
在父级和子级之间创建链接具体包括:采用纳税人KEY作为父级与子级的关联条件。
S1中,创建父子关系表通过kettle调用elasticsearch-jdbc进行创建父子关系。
S5中,在创建索引时,还包括设置分词,用于数据的模糊查询、精确查询。
模糊查询在设置分词时没有指定index属性,通过match_phras实现查询;所述的精确查询在设置分词时制定了index的not_analyzed属性,通过term实现查询。
如图2所示,一种基于elasticsearch父子关系的海量发票数据查询系统,该系统包括父子关系表创建模块,用于通过kettle调用elasticsearch-jdbc创建父子关系表;或/和,greenplumn数据库,用于存储父节点和子节点的具体信息;或/和,关联模块,用于在父级和子级直接创建链接,使系统在不重新更新子索引的情况下能够更新父索引;或/和,查询模块,用于创建索引,通过has_child进行快速查询;或/和,分词设置模块,用于在创建索引时设置分词,实现数据的模糊查询和精确查询。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于elasticsearch父子关系的海量发票数据查询方法,其特征是,该方法包括以下步骤:
创建父子关系表,设置维度表纳税人数据为父节点,事实表发票数据为子节点;
创建父节点的具体信息、创建子节点的具体信息;
在父级和子级之间创建链接,使子级文档与父级文档存储在同一分片上;
采用固定的周期创建索引,通过has_child查询父级中的数据返回子级、查询子级中的数据返回父级。
2.根据权利要求1所述的方法,其特征是,在上述方法之前还包括:将维度表纳税人数据与事实表发票数据存储在greenplumn数据库中。
3.根据权利要求2所述的方法,其特征是,所述的维度表纳税人数据包括:纳税人KEY、纳税人识别号、纳税人名称、所属省份、所属地市、法定代表人名称、法人证件号码、财务联系人、税务机关、行业明细名称、经营范围、生产经营地址、从业人数、注册资本、登记注册乐行名称、开业登记日期、是否一般纳税人、认定一般纳税人日期、取消日期、电话号码、创建时间、行业KEy、地区key、纳税人电子档案号、纳税人状态代码、财务负责人证件号码、三证合一之前的纳税人识别号、开业登记日期、增值税企业类型代码、减免税审批结果标志、办税人姓名、办税人证件号码、税收管理员代码。
4.根据权利要求2所述的方法,其特征是,所述的事实表发票数据包括:开票月份、纳税人KEY、发票类别、物品名称、物品单位、物品序号、金额、税率、税额、发票代码、发票号码、dw_fact_xxfp的id、作废标志、开票日期、销方纳税人名称、购方纳税人名称、报税时间、列表序号、明细ID、销方纳税人识别号、购方纳税人识别号、税控盘号、身份证号码、单位、商品编码、购方税务机关代码、差额开票标志、Y是、N否、单价、物品数量、所属地市。
5.根据权利要求4或3任意一项所述的方法,其特征是,在父级和子级之间创建链接具体包括:采用纳税人KEY作为父级与子级的关联条件。
6.根据权利要求1所述的方法,其特征是,所述的创建父子关系表通过kettle调用elasticsearch-jdbc进行创建父子关系。
7.根据权利要求1所述的方法,其特征是,在创建索引时,还包括设置分词,用于数据的模糊查询、精确查询。
8.根据权利要求7所述的方法,其特征是,所述的模糊查询在设置分词时没有指定index属性,通过match_phras实现查询;所述的精确查询在设置分词时制定了index的not_analyzed属性,通过term实现查询。
9.一种基于elasticsearch父子关系的海量发票数据查询系统,其特征是,该系统包括父子关系表创建模块,用于通过kettle调用elasticsearch-jdbc创建父子关系表;或/和,
greenplumn数据库,用于存储父节点和子节点的具体信息;或/和,
关联模块,用于在父级和子级直接创建链接,使系统在不重新更新子索引的情况下能够更新父索引;或/和,
查询模块,用于创建索引,通过has_child进行快速查询。
10.根据权利要求9所述的系统,其特征是,该系统还包括分词设置模块,用于在创建索引时设置分词,实现数据的模糊查询和精确查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911389046.6A CN111241121A (zh) | 2019-12-30 | 2019-12-30 | 一种基于elasticsearch父子关系的海量发票数据查询方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911389046.6A CN111241121A (zh) | 2019-12-30 | 2019-12-30 | 一种基于elasticsearch父子关系的海量发票数据查询方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111241121A true CN111241121A (zh) | 2020-06-05 |
Family
ID=70864118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911389046.6A Pending CN111241121A (zh) | 2019-12-30 | 2019-12-30 | 一种基于elasticsearch父子关系的海量发票数据查询方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111241121A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103795618A (zh) * | 2014-02-18 | 2014-05-14 | 北京腾控科技有限公司 | 智能设备的通信系统、可编程协议网关设备及其通信方法 |
CN108647339A (zh) * | 2018-05-14 | 2018-10-12 | 五八有限公司 | 一种维度建模方法、装置、设备及存储介质 |
CN108701154A (zh) * | 2016-02-26 | 2018-10-23 | 克里斯普智能私人有限公司 | 数据源系统不可知的事实类别分区信息存储库以及用于使用信息存储库插入和检索数据的方法 |
CN109614402A (zh) * | 2018-12-11 | 2019-04-12 | 北京京东金融科技控股有限公司 | 多维数据查询方法和装置 |
CN109639737A (zh) * | 2019-01-25 | 2019-04-16 | 浙江大学 | 协议发生装置、数据采集终端的协议转换方法和配置方法 |
CN110609844A (zh) * | 2018-05-29 | 2019-12-24 | 优信拍(北京)信息科技有限公司 | 一种数据更新方法,装置及系统 |
-
2019
- 2019-12-30 CN CN201911389046.6A patent/CN111241121A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103795618A (zh) * | 2014-02-18 | 2014-05-14 | 北京腾控科技有限公司 | 智能设备的通信系统、可编程协议网关设备及其通信方法 |
CN108701154A (zh) * | 2016-02-26 | 2018-10-23 | 克里斯普智能私人有限公司 | 数据源系统不可知的事实类别分区信息存储库以及用于使用信息存储库插入和检索数据的方法 |
CN108647339A (zh) * | 2018-05-14 | 2018-10-12 | 五八有限公司 | 一种维度建模方法、装置、设备及存储介质 |
CN110609844A (zh) * | 2018-05-29 | 2019-12-24 | 优信拍(北京)信息科技有限公司 | 一种数据更新方法,装置及系统 |
CN109614402A (zh) * | 2018-12-11 | 2019-04-12 | 北京京东金融科技控股有限公司 | 多维数据查询方法和装置 |
CN109639737A (zh) * | 2019-01-25 | 2019-04-16 | 浙江大学 | 协议发生装置、数据采集终端的协议转换方法和配置方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104778540B (zh) | 一种建材装备制造bom管理方法及管理系统 | |
US11062132B2 (en) | System and method for identification of missing data elements in electronic documents | |
US20080208661A1 (en) | Method and system of using anrtifacts to identify elements of a component business model | |
Hamad et al. | An enhanced technique to clean data in the data warehouse | |
CN106844320B (zh) | 一种财务报表整合方法和设备 | |
CN107168937A (zh) | 基于xbrl的财务云会计元素颗粒化及组装方法 | |
CN111897856A (zh) | 监管报文生成方法、装置、电子设备及可读存储介质 | |
Marotta et al. | Data warehouse design: A schema-transformation approach | |
CN110378569A (zh) | 产业关系链构建方法、装置、设备及存储介质 | |
CN114153860A (zh) | 业务数据管理方法及装置、电子设备、存储介质 | |
US20060143232A1 (en) | Computer-implemented method for data management | |
CN115952160B (zh) | 一种数据盘点方法 | |
CN112100267A (zh) | 一种统一社会信用代码数据的核查方法 | |
CN116561345A (zh) | 一种基于多模态数据公司情报知识图谱构建方法 | |
CN111241121A (zh) | 一种基于elasticsearch父子关系的海量发票数据查询方法及系统 | |
CN106874327B (zh) | 一种针对业务数据的计数方法及装置 | |
US20140149186A1 (en) | Method and system of using artifacts to identify elements of a component business model | |
CN112258151B (zh) | 一种基于pandas的对账方法、装置、计算机设备和存储介质 | |
CN114037304A (zh) | 一种成本资料的数据归集方法、设备及介质 | |
CN113656408A (zh) | 基于rfid结合区块链技术的航材全生命周期管理方法和系统 | |
CN102314632A (zh) | 树型原子模型结构以及应用该结构构建业务模型的方法 | |
CN108268456A (zh) | 一种建立发票数据库的方法与查询数据库内发票的方法 | |
Ingvaldsen et al. | Semantic business process mining of SAP transactions | |
JP4244997B2 (ja) | 申告用書類作成システム及び申告用書類作成プログラム | |
JP4944865B2 (ja) | 申告用書類作成システム及び申告用書類作成プログラム |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200605 |