Invoice processing method and apparatus, computer device, and storage medium
By optimizing invoice data management through table partitioning, data synchronization, and distributed columnar storage technologies, the problem of low storage efficiency in traditional invoice management is solved, and efficient invoice data storage and retrieval are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- YGSOFT INC
- Filing Date
- 2025-07-24
- Publication Date
- 2026-08-04
AI Technical Summary
Traditional invoice management methods suffer from low data storage efficiency in a big data environment, failing to meet the needs for fast, accurate, and efficient invoice data management.
The initial invoice data is stored in the business processing layer using a table partitioning strategy. The data is then aggregated and transformed through a data synchronization channel to generate invoice processing data, which is stored in the query database of the query analysis layer. Finally, the data is stored in the target distributed columnar storage database, and the query performance is optimized by using distributed architecture and columnar storage technology.
It enables efficient storage and high-concurrency querying of over one million invoice data points, improving the storage efficiency and intelligence of invoice data and meeting enterprises' needs for rapid analysis.
Smart Images

Figure CN120910137B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to invoice processing methods, apparatus, computer equipment and storage media. Background Technology
[0002] With the rapid development of the digital economy, invoices, as an indispensable key document in economic activities, are experiencing exponential growth in data volume. Under the traditional invoice management model, the storage and management of invoice data primarily relies on traditional databases. However, traditional databases reveal numerous insurmountable shortcomings when dealing with massive amounts of invoice data, the most prominent being low data storage efficiency. Specifically, the architecture and storage mechanisms of traditional databases have limited storage capacity scalability and slow data writing and reading speeds when handling large-scale invoice data. This fails to meet the demand for efficient invoice data storage in a big data environment, severely restricting subsequent analysis and utilization of invoice data and making it difficult to adapt to the fast, accurate, and efficient requirements of invoice management in the digital economy era.
[0003] Therefore, a new technical solution is urgently needed to address the problem of low data storage efficiency in traditional invoice management methods under big data environments. Summary of the Invention
[0004] The purpose of this application is to provide an invoice processing method, apparatus, computer equipment, and storage medium to solve the technical problem of low storage efficiency in existing invoice management methods.
[0005] Firstly, an invoice processing method is provided, including:
[0006] Obtain the generated initial invoice data and store the initial invoice data in a storage table in the preset business processing layer based on the preset table partitioning storage strategy;
[0007] Based on a preset data synchronization channel, the initial invoice data in the storage table is read, and the initial invoice data is aggregated and transformed based on a preset query analysis layer to generate corresponding invoice processing data.
[0008] The invoice processing data is stored in the query database of the query analysis layer according to a preset table structure;
[0009] Based on a preset conversion strategy, the invoice processing data in the query database is converted to obtain the corresponding target invoice data;
[0010] The target distributed columnar storage database is determined based on the preset requirements information;
[0011] The target invoice data is stored in the target distributed columnar storage database.
[0012] Secondly, an invoice processing device is provided, comprising:
[0013] The first processing module is used to obtain the generated initial invoice data and store the initial invoice data in a storage table in the preset business processing layer based on a preset table partitioning storage strategy.
[0014] The second processing module is used to read the initial invoice data from the storage table based on the preset data synchronization channel, and perform aggregation operation and model transformation processing on the initial invoice data based on the preset query analysis layer to generate corresponding invoice processing data.
[0015] The first storage module is used to store the invoice processing data into the query database in the query analysis layer according to a preset table structure;
[0016] The conversion module is used to convert the invoice processing data in the query database based on a preset conversion strategy to obtain the corresponding target invoice data.
[0017] The determination module is used to determine the target distributed columnar storage database based on preset requirements information;
[0018] The second storage module is used to store the target invoice data into the target distributed columnar storage database.
[0019] Thirdly, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the above-described invoice processing method.
[0020] Fourthly, a computer-readable storage medium is provided, which stores a computer program that, when executed by a processor, implements the steps of the above-described invoice processing method.
[0021] In the above-described invoice processing method, apparatus, computer equipment, and storage medium, the generated initial invoice data is first acquired and stored in a storage table within a preset business processing layer based on a preset table partitioning strategy. Then, based on a preset data synchronization channel, the initial invoice data is read from the storage table, and aggregated operations and model transformations are performed on the initial invoice data using a preset query analysis layer to generate corresponding invoice processing data. Subsequently, the invoice processing data is stored in a query database within the query analysis layer according to a preset table structure. Following this, the invoice processing data in the query database is transformed using a preset transformation strategy to obtain corresponding target invoice data. Further, a target distributed columnar storage database is determined based on preset requirement information. Finally, the target invoice data is stored in the target distributed columnar storage database. Based on the above automated processing flow, this application obtains the generated initial invoice data and stores it in a storage table within the business processing layer using a table partitioning strategy. Then, using a data synchronization channel, it reads the initial invoice data from the storage table and performs aggregation operations and model transformations on the initial invoice data using the query analysis layer to generate corresponding invoice processing data. This invoice processing data is then stored in a query database within the query analysis layer according to the table structure. Next, a transformation strategy is used to transform the invoice processing data in the query database to obtain the target invoice data. Finally, based on the required information, the target distributed columnar storage database is determined, and the target invoice data is stored in the target distributed columnar storage database. Because the distributed architecture supports horizontal scaling, it can easily handle the storage of millions of invoice data and high-concurrency query requirements, effectively improving the storage efficiency and intelligence of invoice data. Attached Figure Description
[0022] To more clearly illustrate the solutions in this application, the accompanying drawings used in the description of the embodiments of this application will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0023] Figure 1 This is an exemplary system architecture diagram to which this application can be applied;
[0024] Figure 2 This is a flowchart of one embodiment of the invoice processing method according to this application;
[0025] Figure 3 This is a schematic diagram of the structure of one embodiment of the invoice processing apparatus according to this application;
[0026] Figure 4 This is a schematic diagram of the structure of one embodiment of the computer device according to this application. Detailed Implementation
[0027] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein in the specification of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application; the terms "comprising" and "having," and any variations thereof, in the specification, claims, and foregoing drawings of this application, are intended to cover non-exclusive inclusion. The terms "first," "second," etc., in the specification, claims, or foregoing drawings of this application are used to distinguish different objects, not to describe a particular order.
[0028] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0029] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings.
[0030] like Figure 1 As shown, system architecture 100 may include terminal device 101, network 102, and server 103. Terminal device 101 may be a laptop 1011, tablet 1012, or mobile phone 1013. Network 102 is used as a medium to provide a communication link between terminal device 101 and server 103. Network 102 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.
[0031] Users can use terminal device 101 to interact with server 103 via network 102 to receive or send messages, etc. Various communication client applications can be installed on terminal device 101, such as web browser applications, shopping applications, search applications, instant messaging tools, email clients, social media platform software, etc.
[0032] Terminal device 101 can be various electronic devices with a display screen and support web browsing. In addition to laptops 1011, tablets 1012, or mobile phones 1013, terminal device 101 can also be an e-book reader, an MP3 player (Moving Picture Experts Group Audio Layer III), an MP4 player (Moving Picture Experts Group Audio Layer IV), a laptop computer, and a desktop computer, etc.
[0033] Server 103 can be a server that provides various services, such as a backend server that provides support for the pages displayed on terminal device 101.
[0034] It should be noted that the invoice processing method provided in this application embodiment is generally executed by a server / terminal device, and correspondingly, the invoice processing device is generally set in the server / terminal device.
[0035] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0036] Continue to refer to Figure 2 A flowchart illustrating an embodiment of the invoice processing method according to this application is shown. The order of steps in the flowchart can be changed, and some steps can be omitted, depending on different requirements. The invoice processing method provided by this application embodiment can be applied to any scenario requiring invoice processing, and therefore can be applied to products in these scenarios. The invoice processing method includes the following steps:
[0037] Step S201: Obtain the generated initial invoice data and store the initial invoice data in a storage table in the preset business processing layer based on a preset table partitioning strategy.
[0038] In this embodiment, the invoice processing method operates on an electronic device (e.g., Figure 1The server / terminal device shown can obtain the generated initial invoice data via wired or wireless connection. It should be noted that the aforementioned wireless connection methods may include, but are not limited to, 3G / 4G / 5G connections, Wi-Fi connections, Bluetooth connections, Wi-Fi connections, Zigbee connections, UWB (ultra-wideband) connections, and other currently known or future wireless connection methods. The implementing entity of this application is specifically an invoice processing system, which can be simply referred to as the system. Through architectural design of the invoice processing system, a clear division between the business processing layer and the query analysis layer is established. The business processing layer is mainly responsible for the invoice issuance process, including core business logic such as invoice information entry, review, and invoice number generation; the query analysis layer focuses on subsequent data processing, such as data synchronization, aggregation operations, model transformation, and providing query services. Furthermore, clear data interaction interfaces are defined between the business processing layer and the query analysis layer. After completing the invoice issuance operation, the business processing layer transmits the invoice data to the query analysis layer through these interfaces according to the agreed format and specifications. For example, the regulations specify that the transmitted data includes basic invoice information, detailed information, and status information, and clearly define the data transmission method and frequency. Furthermore, independent operating environments, including server resources and network bandwidth, are configured for the business processing layer and the query analysis layer. This ensures that the business processing layer is not affected by the large number of query operations from the query analysis layer when processing invoice issuance, guaranteeing the efficiency and stability of the invoicing process; simultaneously, the query analysis layer can focus on data processing and query services in an independent environment, improving query performance and user experience.
[0039] Invoice issuance and initial storage are the starting points of the entire invoice data processing flow. By storing data in separate tables according to the month of issuance, the massive amount of invoice data is distributed across tables for different months, effectively reducing the data volume of a single table. This not only helps improve the efficiency of subsequent data queries, as queries can more accurately locate the relevant month's table for retrieval, reducing unnecessary data scanning, but also greatly facilitates the archiving and management of historical data. Enterprises can easily perform operations such as backup, migration, or cleanup of invoice data by month. At the same time, the dynamic expansion mechanism ensures that the system can flexibly cope with the growth of data volume, avoiding the impact of insufficient storage space on the normal operation of invoice issuance, and providing a basic guarantee for the long-term stable operation of the system.
[0040] Furthermore, the aforementioned initial invoice data refers to the invoice data generated when the invoice issuance transaction occurs. The specific implementation process of storing the initial invoice data in a preset storage table within the preset business processing layer based on a preset table partitioning strategy will be described in further detail in subsequent specific embodiments of this application, and will not be elaborated upon here.
[0041] Step S202: Based on the preset data synchronization channel, the initial invoice data in the storage table is read, and the initial invoice data is aggregated and transformed based on the preset query analysis layer to generate corresponding invoice processing data.
[0042] In this embodiment, a real-time data synchronization channel is pre-established between the business processing layer and the query database. Technologies such as message queues can be employed. Once the business processing layer completes the invoice issuance operation and generates invoice data, the data is immediately pushed to the message queue. The query analysis layer then monitors the message queue in real time. Upon receiving a new invoice data message, it immediately retrieves the data from the message queue and performs subsequent processing. Furthermore, the specific implementation process of the preset query analysis layer performing aggregation operations and model transformations on the initial invoice data to generate corresponding invoice processing data will be further described in detail in subsequent embodiments of this application and will not be elaborated upon here.
[0043] Step S203: Store the invoice processing data in the query database of the query analysis layer according to the preset table structure.
[0044] In this embodiment, after the initial invoice data is converted into structured data (invoice processing data) suitable for querying through aggregation operations and model transformation, a table structure corresponding to the structured data is established in the query database, such as a sales invoice details query table, a statistical table by invoice type, and a statistical table by tax rate dimension. Then, the processed invoice processing data is stored in the query database according to the table structure for subsequent fast querying and analysis.
[0045] Step S204: Based on a preset conversion strategy, the invoice processing data in the query database is converted to obtain the corresponding target invoice data.
[0046] In this embodiment, the specific implementation process of converting the invoice processing data in the query database based on the preset conversion strategy to obtain the corresponding target invoice data will be further described in detail in subsequent specific embodiments of this application, and will not be elaborated on here.
[0047] Step S205: Determine the target distributed columnar storage database based on the preset requirements information.
[0048] In this embodiment, a suitable distributed columnar storage database, such as ClickHouse or Apache Druid, is selected as the target distributed columnar storage database based on actual system requirements and performance specifications. By deploying database nodes on multiple servers to construct a distributed architecture and by properly configuring network connections and data distribution strategies between nodes, it can be ensured that invoice data is evenly stored across all nodes, thereby improving the overall storage capacity and query performance of the system.
[0049] Step S206: Store the target invoice data in the target distributed columnar storage database.
[0050] In this embodiment, after storing the target invoice data in the aforementioned target distributed columnar storage database, query optimization can be performed on the distributed columnar storage database based on the query characteristics of the invoice data. Common query conditions and patterns are analyzed, and appropriate indexes are created. For example, indexes are created for frequently used query fields such as invoice number and invoice date to speed up queries. Simultaneously, the execution plan of query statements is optimized to ensure the database can efficiently handle various query requests. Query optimization and index creation further improve query performance, ensuring the system can respond to user query requests quickly, providing users with efficient and accurate query services, and meeting the enterprise's need for rapid invoice data analysis.
[0051] This application first obtains the generated initial invoice data and stores it in a storage table within a preset business processing layer based on a preset table partitioning strategy. Then, based on a preset data synchronization channel, it reads the initial invoice data from the storage table and performs aggregation operations and model transformations on the initial invoice data using a preset query analysis layer to generate corresponding invoice processing data. Next, the invoice processing data is stored in a query database within the query analysis layer according to a preset table structure. Subsequently, the invoice processing data in the query database is transformed using a preset transformation strategy to obtain the corresponding target invoice data. Further, a target distributed columnar storage database is determined based on preset requirement information. Finally, the target invoice data is stored in the target distributed columnar storage database. Based on the above automated processing flow, this application obtains the generated initial invoice data and stores it in a storage table within the business processing layer using a table partitioning strategy. Then, using a data synchronization channel, it reads the initial invoice data from the storage table and performs aggregation operations and model transformations on the initial invoice data using the query analysis layer to generate corresponding invoice processing data. This invoice processing data is then stored in a query database within the query analysis layer according to the table structure. Next, a transformation strategy is used to transform the invoice processing data in the query database to obtain the target invoice data. Finally, based on the required information, the target distributed columnar storage database is determined, and the target invoice data is stored in the target distributed columnar storage database. Because the distributed architecture supports horizontal scaling, it can easily handle the storage of millions of invoice data and high-concurrency query requirements, effectively improving the storage efficiency and intelligence of invoice data.
[0052] In some optional implementations, step S201, which involves storing the initial invoice data in a preset storage table within the business processing layer based on a preset table partitioning strategy, includes the following steps:
[0053] Obtain the preset invoice month information, and construct the corresponding table partitioning rules based on the invoice month information.
[0054] In this embodiment, the system pre-sets table partitioning rules based on the invoice month. Specifically, the table partitioning rules include: stipulating that each month corresponds to an independent storage table group, which includes different types of tables such as the main sales invoice table, the sales invoice detail table, and the sales invoice status table.
[0055] Based on the table partitioning rules, a storage table corresponding to the invoice month information is constructed in the business processing layer.
[0056] In this embodiment, the execution process can be performed based on the rule content of the above-mentioned table partitioning rules to automatically construct a storage table corresponding to the invoice month information in the above-mentioned business processing layer.
[0057] Get the preset table partitioning and storage strategy.
[0058] In this embodiment, the above-mentioned table-storage strategy includes the following: when an invoice issuance occurs, the invoice processing system automatically identifies the invoice month based on the invoice date information on the invoice data, and stores various types of information from the invoice data into the corresponding tables for that month according to a preset table structure. For example, for an invoice issued in May 2024, its main table information is stored in the main table of sales invoices for May 2024, its detailed information is stored in the detailed table of sales invoices for the same month, and its status information is stored in the status table of sales invoices.
[0059] Based on the table partitioning strategy, the initial invoice data is stored in the corresponding storage table in the business processing layer.
[0060] In this embodiment, the invoice storage process of storing the initial invoice data into the storage table in the business processing layer is completed by using the strategy content of the above-mentioned table partitioning storage strategy.
[0061] Invoice issuance and initial storage are the starting points of the entire invoice data processing flow. By storing invoice data in separate tables according to the month of issuance, the massive amount of invoice data is distributed across tables for different months, effectively reducing the data volume of a single table. This not only helps improve the efficiency of subsequent data queries, as invoice queries can more accurately locate the relevant month's table for retrieval, reducing unnecessary data scanning, but also greatly facilitates the archiving and management of historical data. Enterprises can easily perform operations such as backup, migration, or cleanup of invoice data by month.
[0062] This application obtains preset invoice month information and constructs corresponding table partitioning rules based on the invoice month information. Then, based on the table partitioning rules, it constructs a storage table corresponding to the invoice month information in the business processing layer. Next, it obtains a preset table partitioning storage strategy. Subsequently, based on the table partitioning storage strategy, it stores the initial invoice data in the corresponding storage table in the business processing layer. Based on the above processing flow, this application constructs corresponding table partitioning rules based on the obtained invoice month information, then constructs a storage table corresponding to the invoice month information in the business processing layer based on the use of the table partitioning rules, and then stores the initial invoice data in the corresponding storage table in the business processing layer based on the use of the table partitioning storage strategy. This achieves table partitioning storage according to the invoice month, distributing massive amounts of invoice data across tables for different months, effectively reducing the data volume of a single table. It also helps improve the efficiency of subsequent invoice data queries.
[0063] In some optional implementations of this embodiment, step S202, which involves performing aggregation operations and model transformations on the initial invoice data based on a preset query analysis layer to generate corresponding invoice processing data, includes the following steps:
[0064] The preset operation rules are obtained based on the query analysis layer.
[0065] In this embodiment, after the query and analysis layer obtains the invoice data, it performs aggregation operations according to the preset calculation rules. Specifically, the calculation rules include: first, extracting key fields such as invoice number, invoice date, amount, and tax amount, which are important bases for subsequent queries and analysis; then, performing dimensional splitting, such as classifying the invoice data according to dimensions such as region, enterprise type, and invoice type; and finally, calculating indicators, such as calculating the total amount of invoices and total tax amount in different regions each month, and the number of different invoice types.
[0066] Based on the aforementioned calculation rules, the initial invoice data is aggregated and processed to obtain the corresponding first processed data.
[0067] In this embodiment, the initial invoice data can be aggregated and processed based on the rules of the above-mentioned calculation rules to generate the corresponding first processed data.
[0068] Based on the preset query scenario information, the first processed data is transformed using a model to obtain the corresponding second processed data.
[0069] In this embodiment, the aforementioned query scenario information refers to the information obtained after performing query scenario analysis on the initial invoice data. Furthermore, based on the obtained query scenario information, the first processed data after aggregation is transformed into structured data suitable for querying, namely the aforementioned second processed data, which serves as the final invoice processing data.
[0070] The second processed data is used as the invoice processing data.
[0071] In this embodiment, real-time synchronization and data aggregation are key links connecting invoice issuance and query analysis. The real-time synchronization mechanism ensures that the data in the query database remains consistent with the data in the business processing layer, enabling users to access the latest invoice data promptly. Data aggregation operations perform in-depth processing and organization of the raw invoice data, extracting valuable information and classifying and statistically analyzing it to provide a structured and easily analyzable data foundation for subsequent queries. Establishing a table structure suitable for query scenarios further improves query efficiency and meets diverse user query needs, such as quickly obtaining detailed information on a specific type of invoice or performing statistical analysis according to different dimensions, providing strong data support for enterprise decision-making.
[0072] This application obtains preset operation rules based on the query analysis layer; then, based on the operation rules, it performs aggregation operation processing on the initial invoice data to obtain corresponding first processed data; subsequently, based on preset query scenario information, it performs model transformation processing on the first processed data to obtain corresponding second processed data; finally, it uses the second processed data as the invoice processing data. Based on the above processing flow, this application obtains first processed data by performing aggregation operation processing on the initial invoice data based on the use of operation rules, and then performs model transformation processing on the first processed data based on the use of query scenario information. This enables the efficient and accurate construction of corresponding invoice processing data, ensuring the accuracy of the obtained invoice processing data and providing a structured and easily analyzable data foundation for subsequent invoice queries.
[0073] In some alternative implementations, step S204 includes the following steps:
[0074] The invoice processing data is organized and processed using a columnar storage method to obtain the corresponding first invoice data.
[0075] In this embodiment, invoice processing data is organized using a columnar storage method, grouping similar types of data together. For example, all invoice numbers are stored in one column, and all invoice dates are stored in another. This approach allows queries to retrieve only the necessary column data, reducing disk I / O operations and improving query speed.
[0076] Invoke the preset compression algorithm.
[0077] In this embodiment, the selection of the above compression algorithm is not specifically limited and can be determined according to the actual business needs. For example, a high-efficiency compression algorithm (such as LZ4) can be used.
[0078] The first invoice data is compressed using the compression algorithm to obtain the corresponding second invoice data.
[0079] In this embodiment, by compressing the first invoice data according to the selected compression algorithm and using the resulting second invoice data as the final target invoice data, storage space can be further saved and the storage density of invoice data can be increased.
[0080] The second invoice data is used as the target invoice data.
[0081] In this embodiment, the distributed architecture enables the system to scale horizontally, increasing storage capacity and processing power by adding server nodes, easily handling the storage and retrieval of millions of invoice data. Columnar storage and compression technologies reduce data storage space and disk I / O operations, improving query efficiency, especially in detailed and summary queries, enabling rapid location and retrieval of the required data.
[0082] This application organizes and processes invoice processing data using columnar storage to obtain corresponding first invoice data; then, a preset compression algorithm is invoked; subsequently, the first invoice data is compressed using the compression algorithm to obtain corresponding second invoice data; finally, the second invoice data is used as the target invoice data. Based on the above processing flow, this application organizes and processes invoice processing data using columnar storage to obtain first invoice data, and then compresses the first invoice data using a compression algorithm to obtain the required target invoice data. This enables efficient and accurate conversion of invoice processing data, improving the intelligence of invoice processing data conversion. Furthermore, columnar storage and compression technologies reduce data storage space and disk I / O operations, which is beneficial for improving the query efficiency of invoice data.
[0083] In some alternative implementations, after step S201, the electronic device may further perform the following steps:
[0084] Invoke the preset data monitoring tool.
[0085] In this embodiment, the aforementioned data monitoring tool is a pre-built automated tool with data monitoring functions.
[0086] The data monitoring tool monitors the amount of invoices generated in each month and determines whether there are any designated months where the amount of invoice data exceeds a preset capacity threshold.
[0087] In this embodiment, by using the aforementioned data monitoring tool, the growth of invoice data volume each month is continuously monitored. The obtained monitoring data is analyzed to determine whether there are any specific months where the invoice data volume exceeds a preset capacity threshold. The selection of the aforementioned capacity threshold is not specifically limited and can be set according to actual business needs.
[0088] If so, retrieve the specified storage table corresponding to the specified month from the storage table.
[0089] In this embodiment, a specified storage table corresponding to a specified month can be extracted from the storage table based on the one-to-one correspondence between the month and the storage table.
[0090] The capacity of the specified storage table is expanded based on a preset dynamic expansion mechanism.
[0091] In this embodiment, when the data volume for a certain month is detected to be close to or reach the current storage table's capacity limit (capacity threshold), or when a significant increase in future data volume is anticipated, the system automatically triggers a dynamic expansion process. By generating a new storage table for the corresponding month according to preset expansion rules and updating the system's data storage routing information, it ensures that subsequent invoice data for that month can be correctly stored in the newly generated table.
[0092] This application utilizes a pre-defined data monitoring tool to monitor the invoice generation data volume for each month. It then determines if a specific month has an invoice data volume exceeding a pre-defined capacity threshold. If so, it retrieves the corresponding storage table for that month from the existing storage table. Subsequently, it expands the capacity of the specified storage table based on a pre-defined dynamic expansion mechanism. Based on this process, this application monitors the invoice generation data volume for each month using a data monitoring tool. When a specific month with an invoice data volume exceeding a pre-defined capacity threshold is detected, the application retrieves the corresponding storage table from the existing storage table and expands its capacity based on a dynamic expansion mechanism. This effectively ensures the system can flexibly handle the growth of invoice data volume, preventing insufficient storage space from affecting the normal operation of invoice issuance and providing a fundamental guarantee for the long-term stable operation of the system.
[0093] In some optional implementations of this embodiment, after step S206, the electronic device may further perform the following steps:
[0094] Obtain the index usage data corresponding to the target distributed columnar storage database.
[0095] In this embodiment, index usage data, including index usage frequency and query performance, can be obtained by periodically collecting data from the indexes in the target distributed columnar storage database.
[0096] Based on the index, the target distributed columnar storage database is optimized using the index data.
[0097] In this embodiment, by analyzing the obtained index usage data (index usage frequency and query performance), unnecessary indexes are deleted, and frequently used indexes are rebuilt and adjusted, thereby completing the index optimization process for the target distributed columnar storage database. Specifically, if the query efficiency of a certain index is found to be reduced, it may be due to uneven data distribution or excessive index fragmentation. In this case, the index can be rebuilt to improve the index's query performance.
[0098] The data stored in the target distributed columnar storage database is sharded based on the preset data query requirements.
[0099] In this embodiment, the sharding process includes: sharding the data in the target distributed columnar storage database according to the characteristics of the invoice data and query requirements. Specifically, sharding can be performed according to dimensions such as region, time range, and invoice type, distributing the data across different server nodes. This allows for parallel data retrieval on multiple nodes during queries, thereby improving data query speed.
[0100] The data stored in the target distributed columnar storage database is partitioned based on a preset partitioning strategy.
[0101] In this embodiment, a partitioning strategy is employed to manage the data stored in the target distributed columnar storage database, dividing the data into different partitions according to certain rules. For example, partitioning can be done by invoice month, with each month's data stored in a separate partition. This reduces the amount of data that needs to be scanned during queries, improving query efficiency. Simultaneously, the partitioning strategy facilitates data management and maintenance, such as allowing for easy backup, recovery, or cleanup of data in a specific partition.
[0102] Furthermore, load balancing and read / write splitting strategies can be applied to the aforementioned target distributed columnar storage database. Specifically, in a distributed architecture, load balancing technology can be used to evenly distribute query requests across all server nodes, preventing performance degradation due to excessive load on any single node. Simultaneously, a read / write splitting strategy is implemented, distributing query and write operations across different nodes. Write operations are primarily concentrated on the master node, while query operations can be performed in parallel on multiple slave nodes, improving the overall concurrency and response speed of the system.
[0103] Furthermore, performance optimization and system stability assurance are crucial measures to further improve system performance and reliability based on distributed columnar storage-based query optimization. Data sharding, index optimization, and partitioning strategies can improve query efficiency, reduce query time, and enable the system to respond to user query requests more quickly. Load balancing and read / write separation strategies can rationally allocate system resources, avoid performance bottlenecks, and ensure the system maintains stable operation even under high concurrency scenarios. Through the comprehensive application of these measures, the system can provide efficient and reliable invoice data query services, meeting the growing business needs of enterprises.
[0104] This application obtains index usage data corresponding to the target distributed columnar storage database; then optimizes the index of the target distributed columnar storage database based on the index usage data; subsequently, it shards the data stored in the target distributed columnar storage database based on preset data query requirements; and finally, it partitions the data stored in the target distributed columnar storage database based on a preset partitioning strategy. Based on the above processing flow, this application, by obtaining index usage data corresponding to the target distributed columnar storage database, optimizing the index of the target distributed columnar storage database based on the index usage data, sharding the data stored in the target distributed columnar storage database based on preset data query requirements, and partitioning the data stored in the target distributed columnar storage database based on a preset partitioning strategy, achieves a combined use of data sharding, index optimization, and partitioning strategies. This effectively improves query efficiency, reduces query time, enables the system to respond to user query requests faster, and thus improves the user experience.
[0105] In some optional implementations of this embodiment, after step S206, the electronic device may further perform the following steps:
[0106] Determine whether a user-triggered invoice data query request has been received; wherein the invoice data query request carries query conditions and analysis dimensions.
[0107] In this embodiment, the aforementioned invoice data query request is a request triggered by the user based on actual needs, by customizing query conditions and analysis dimensions.
[0108] If so, extract the query conditions and the analysis dimensions from the invoice data query request.
[0109] In this embodiment, the corresponding query conditions and analysis dimensions can be extracted by parsing the above-mentioned invoice data query request.
[0110] Based on the query conditions and the analysis dimensions, the target distributed columnar storage database is queried and processed to obtain the corresponding specified invoice data.
[0111] In this embodiment, by performing data queries based on the received query conditions and analysis dimensions in the aforementioned target distributed columnar storage database, the matching specified invoice data is obtained.
[0112] A corresponding display chart is generated based on the specified invoice data.
[0113] In this embodiment, the aforementioned charts can be tables and charts generated by a real-time data analysis and visualization technology platform (specifically RealInsight) that correspond to the specified invoice data. Specifically, the chart generation process includes: Data source configuration: Based on the target distributed columnar storage database, the data source is configured on the RealInsight platform. This involves connecting to the target distributed columnar storage database, specifying the tables and fields to be queried, and setting parameters such as the frequency and method of data acquisition to ensure the platform can correctly acquire the invoice data. Table analysis and display: Using the table analysis function provided by the RealInsight platform, the queried invoice data is displayed in tables according to user needs. The columns and rows of the table can be customized, and operations such as sorting, filtering, and grouping of the data can be performed to facilitate users' viewing and analysis of detailed invoice data. For example, users can filter and sort invoice data according to conditions such as invoice type and invoice date to quickly obtain the required information. Graphical analysis and display: Through the graphical analysis function of the RealInsight platform, the queried invoice data is displayed in an intuitive chart format. It supports various chart types, such as bar charts, line charts, and pie charts. Users can choose the appropriate chart type based on the characteristics of their data and their analytical needs, transforming invoice data into intuitive graphs to facilitate the discovery of patterns and trends. For example, a bar chart can be used to compare the number of invoices in different regions, while a line chart can be used to show the monthly invoice amount trend for a specific company.
[0114] The specified invoice data and the displayed chart are processed for display.
[0115] In this embodiment, the specified invoice data and charts can be displayed using the system interface to process user-triggered invoice data query requests. The system also supports exporting the specified invoice data and charts to PDF or Excel format for further analysis and sharing by the user.
[0116] Data querying and display are the final stages of invoice data processing. Their purpose is to present the processed invoice data to users in an intuitive and easy-to-understand way, meeting their diverse query and analysis needs. Through RealInsight's real-time data analysis and visualization platform, users can easily configure data sources, perform tabular analysis, and visualize data in graphical formats to quickly obtain the information they need. Personalized query and display services better adapt to the different business needs of users, improving the user experience.
[0117] This application determines whether a user-triggered invoice data query request has been received; wherein the invoice data query request carries query conditions and analysis dimensions; if so, the query conditions and analysis dimensions are extracted from the invoice data query request; then, based on the query conditions and analysis dimensions, the target distributed columnar storage database is queried to obtain the corresponding specified invoice data; subsequently, a corresponding display chart is generated based on the specified invoice data; and finally, the specified invoice data and the display chart are displayed. Based on the above processing flow, this application extracts information from user-triggered invoice data query requests, queries the target distributed columnar storage database according to the extracted query conditions and analysis dimensions to obtain specified invoice data, generates a corresponding display chart based on the specified invoice data, and then displays the specified invoice data and the display chart, thereby providing users with personalized query and display services to better adapt to the business needs of different users and improve user experience.
[0118] In some optional implementations, the system also features data consistency and availability guarantees. The specific implementation process includes: A distributed transaction management mechanism: This mechanism employs distributed transaction management technology to ensure the consistency of invoice data during storage, synchronization, and querying. For example, using protocols such as two-phase commit (2PC) or three-phase commit (3PC), in transaction operations involving multiple nodes, it ensures that all nodes either successfully execute the transaction or roll back the transaction, avoiding data inconsistencies. When the business processing layer performs invoice issuance operations and needs to synchronize the data to the query database, the distributed transaction management mechanism ensures the synchronous update of data in both databases.
[0119] Data redundancy design: In a distributed architecture, invoice data is stored redundantly. Data is replicated across multiple nodes, so if one node fails, data can be retrieved from other healthy nodes, ensuring data availability. For example, a master-slave replication method can be used to replicate data from the master node to multiple slave nodes in real time. When the master node fails, a slave node can be quickly promoted to master to continue providing data services.
[0120] High Availability Design: Build a highly available system architecture, employing clustering technology and automatic failover to ensure the system continues to operate normally even when nodes fail. For example, use a load balancer to monitor the operating status of each node; when a node failure is detected, requests are automatically transferred to other healthy nodes, ensuring uninterrupted service. Simultaneously, regularly perform system backups and recovery drills to ensure rapid data and system recovery in the event of a severe failure.
[0121] Data consistency and availability are crucial aspects of invoice processing systems. Invoice data contains sensitive information and important business data for the enterprise, necessitating consistency across all stages to prevent business errors or decision-making mistakes due to inconsistencies. Distributed transaction management mechanisms ensure data accuracy during cross-node operations. Data redundancy and high availability design enhance system reliability; even when some nodes fail, the system continues to operate normally, ensuring the reliability and availability of invoice data. These measures provide enterprises with a stable and secure data environment, guaranteeing the normal operation of their businesses.
[0122] In some optional implementations of this embodiment, the system also includes the following functional modules: Data storage module: Supports distributed storage and uses big data storage technologies (such as Hadoop and HBase) to process massive amounts of invoice data. Provides data compression and indexing functions to improve storage efficiency and query speed. Data preprocessing module: Cleans and standardizes invoice data, unifying the data format. Extracts key fields (such as invoice number, invoice date, amount, tax, etc.) and stores them in categories. Data analysis module: Provides real-time query functions and supports multi-dimensional analysis (such as queries by time, region, and enterprise). Integrates machine learning algorithms to support advanced analysis functions such as trend prediction and anomaly detection. Data security and privacy protection module: Uses data encryption technologies (such as AES and RSA) to protect invoice data. Implements strict access control policies to ensure that sensitive data is only accessible to authorized users. Data visualization module: Provides various visualization charts (such as bar charts, line charts, pie charts, etc.) to intuitively display analysis results. Supports generating statistical reports and exporting them to PDF or Excel format.
[0123] In some alternative implementations, the user information obtained is subject to user consent and complies with relevant laws and policies.
[0124] Furthermore, any software tools or components not belonging to our company that appear in the embodiments of this application are merely illustrative examples and do not represent actual use.
[0125] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0126] It should be emphasized that, to further ensure the privacy and security of the aforementioned target invoice data, the target invoice data can also be stored in a blockchain node.
[0127] The blockchain referred to in this application is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and encryption algorithms. Essentially, a blockchain is a decentralized database, a chain of data blocks linked together using cryptographic methods. Each data block contains information about a batch of network transactions, used to verify the validity of the information (anti-counterfeiting) and generate the next block. A blockchain can include an underlying blockchain platform, a platform product service layer, and an application service layer.
[0128] The embodiments of this application can acquire and process relevant data based on artificial intelligence technology. Artificial intelligence (AI) is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.
[0129] Foundational technologies for artificial intelligence generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interactive systems, and mechatronics. AI software technologies mainly encompass computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.
[0130] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by instructing related hardware through computer-readable instructions. These computer-readable instructions can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the methods described above. The aforementioned storage medium can be a non-volatile storage medium such as a magnetic disk, optical disk, or read-only memory (ROM), or random access memory (RAM).
[0131] It should be understood that although the steps in the flowcharts of the accompanying figures are shown sequentially as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the accompanying figures may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.
[0132] Further reference Figure 3 As a response to the above Figure 2 To implement the method shown, this application provides an embodiment of an invoice processing device, which is similar to... Figure 2 Corresponding to the method embodiments shown, this device can be specifically applied to various electronic devices.
[0133] like Figure 3 As shown, the invoice processing device 300 described in this embodiment includes: a first processing module 301, a second processing module 302, a first storage module 303, a conversion module 304, a determination module 305, and a second storage module 306. Wherein:
[0134] The first processing module 301 is used to obtain the generated initial invoice data and store the initial invoice data in a storage table in the preset business processing layer based on a preset table partitioning storage strategy.
[0135] The second processing module 302 is used to read the initial invoice data from the storage table based on the preset data synchronization channel, and perform aggregation operation and model transformation processing on the initial invoice data based on the preset query analysis layer to generate corresponding invoice processing data.
[0136] The first storage module 303 is used to store the invoice processing data into the query database in the query analysis layer according to a preset table structure;
[0137] The conversion module 304 is used to convert the invoice processing data in the query database based on a preset conversion strategy to obtain the corresponding target invoice data.
[0138] The determination module 305 is used to determine the target distributed columnar storage database based on preset requirement information;
[0139] The second storage module 306 is used to store the target invoice data into the target distributed columnar storage database.
[0140] In this embodiment, the operations performed by the above-mentioned modules or units correspond one-to-one with the steps of the invoice processing method of the aforementioned embodiments, and will not be repeated here.
[0141] In some optional implementations of this embodiment, the first processing module 301 includes:
[0142] The processing submodule is used to obtain the preset invoicing month information and construct the corresponding table partitioning rules based on the invoicing month information;
[0143] A submodule is constructed to build a storage table corresponding to the invoice month information in the business processing layer based on the table partitioning rules.
[0144] The first acquisition submodule is used to acquire the preset table partitioning storage strategy;
[0145] The storage submodule is used to store the initial invoice data into the storage table in the business processing layer based on the table partitioning strategy.
[0146] In this embodiment, the operations performed by the above-mentioned modules or units correspond one-to-one with the steps of the invoice processing method of the aforementioned embodiments, and will not be repeated here.
[0147] In some optional implementations of this embodiment, the second processing module 302 includes:
[0148] The second acquisition submodule is used to acquire preset operation rules based on the query analysis layer;
[0149] The calculation submodule is used to perform aggregation calculation on the initial invoice data based on the calculation rules to obtain the corresponding first processed data;
[0150] The transformation submodule is used to perform model transformation processing on the first processed data based on preset query scenario information to obtain the corresponding second processed data;
[0151] The first determining submodule is used to use the second processed data as the invoice processing data.
[0152] In this embodiment, the operations performed by the above-mentioned modules or units correspond one-to-one with the steps of the invoice processing method of the aforementioned embodiments, and will not be repeated here.
[0153] In some optional implementations of this embodiment, the conversion module 304 includes:
[0154] The organization submodule is used to organize the invoice processing data based on columnar storage to obtain the corresponding first invoice data.
[0155] Call the submodule to invoke the preset compression algorithm;
[0156] The compression submodule is used to compress the first invoice data based on the compression algorithm to obtain the corresponding second invoice data;
[0157] The second determining submodule is used to use the second invoice data as the target invoice data.
[0158] In this embodiment, the operations performed by the above-mentioned modules or units correspond one-to-one with the steps of the invoice processing method of the aforementioned embodiments, and will not be repeated here.
[0159] In some optional implementations of this embodiment, the invoice processing device further includes:
[0160] The calling module is used to invoke preset data monitoring tools;
[0161] The first judgment module is used to monitor the data volume of invoice generation in each month based on the data monitoring tool, and to determine whether there is a specified month in which the invoice data volume is greater than a preset capacity threshold.
[0162] The first acquisition module is used to, if yes, acquire the specified storage table corresponding to the specified month from the storage table;
[0163] An extension module is used to perform capacity expansion processing on the specified storage table based on a preset dynamic expansion mechanism.
[0164] In this embodiment, the operations performed by the above-mentioned modules or units correspond one-to-one with the steps of the invoice processing method of the aforementioned embodiments, and will not be repeated here.
[0165] In some optional implementations of this embodiment, the invoice processing device further includes:
[0166] The second acquisition module is used to acquire index usage data corresponding to the target distributed columnar storage database;
[0167] The optimization module is used to perform index optimization processing on the target distributed columnar storage database based on the index usage data;
[0168] The sharding module is used to shard the data stored in the target distributed columnar storage database based on preset data query requirements;
[0169] The partitioning module is used to partition the data stored in the target distributed columnar storage database based on a preset partitioning strategy.
[0170] In this embodiment, the operations performed by the above-mentioned modules or units correspond one-to-one with the steps of the invoice processing method of the aforementioned embodiments, and will not be repeated here.
[0171] In some optional implementations of this embodiment, the invoice processing device further includes:
[0172] The second judgment module is used to determine whether a user-triggered invoice data query request has been received; wherein, the invoice data query request carries query conditions and analysis dimensions;
[0173] The extraction module is used to extract the query conditions and the analysis dimensions from the invoice data query request if the condition is met.
[0174] The query module is used to perform query processing on the target distributed columnar storage database based on the query conditions and the analysis dimensions to obtain the corresponding specified invoice data;
[0175] The generation module is used to generate corresponding display charts based on the specified invoice data;
[0176] The display module is used to display the specified invoice data and the display chart.
[0177] In this embodiment, the operations performed by the above-mentioned modules or units correspond one-to-one with the steps of the invoice processing method of the aforementioned embodiments, and will not be repeated here.
[0178] To address the aforementioned technical problems, embodiments of this application also provide a computer device. Please refer to [link / reference needed]. Figure 4 , Figure 4 This is a basic structural block diagram of the computer device in this embodiment.
[0179] The computer device 4 includes a memory 41, a processor 42, and a network interface 43 that are interconnected via a system bus. It should be noted that only the computer device 4 with components 41-43 is shown in the figure; however, it should be understood that it is not required to implement all the shown components, and more or fewer components can be implemented alternatively. Those skilled in the art will understand that the computer device described here is a device capable of automatically performing numerical calculations and / or information processing according to pre-set or stored instructions, and its hardware includes, but is not limited to, microprocessors, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), embedded devices, etc.
[0180] The computer device can be a desktop computer, laptop, handheld computer, or cloud server, etc. The computer device can interact with the user via a keyboard, mouse, remote control, touchpad, or voice control.
[0181] The memory 41 includes at least one type of readable storage medium, including flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the memory 41 may be an internal storage unit of the computer device 4, such as the hard disk or memory of the computer device 4. In other embodiments, the memory 41 may also be an external storage device of the computer device 4, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the computer device 4. Of course, the memory 41 may also include both the internal storage unit and its external storage device of the computer device 4. In this embodiment, the memory 41 is typically used to store the operating system and various application software installed on the computer device 4, such as computer-readable instructions for invoice processing methods. In addition, the memory 41 can also be used to temporarily store various types of data that have been output or will be output.
[0182] In some embodiments, the processor 42 may be a central processing unit (CPU), a controller, a microcontroller, a microprocessor, or other data processing chip. The processor 42 is typically used to control the overall operation of the computer device 4. In this embodiment, the processor 42 is used to execute computer-readable instructions stored in the memory 41 or to process data, for example, to execute computer-readable instructions for the invoice processing method.
[0183] The network interface 43 may include a wireless network interface or a wired network interface, which is typically used to establish communication connections between the computer device 4 and other electronic devices.
[0184] This application also provides another embodiment, namely, providing a computer-readable storage medium storing computer-readable instructions that can be executed by at least one processor to cause the at least one processor to perform the steps of the invoice processing method described above.
[0185] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0186] Obviously, the embodiments described above are only some embodiments of this application, not all embodiments. The accompanying drawings show preferred embodiments of this application, but do not limit the patent scope of this application. This application can be implemented in many different forms; rather, the purpose of providing these embodiments is to provide a more thorough and comprehensive understanding of the disclosure of this application. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing specific embodiments, or make equivalent substitutions for some of the technical features. Any equivalent structures made using the content of this application's specification and drawings, directly or indirectly applied to other related technical fields, are similarly within the scope of patent protection of this application.
Claims
1. An invoice processing method, characterized in that, Includes the following steps: Obtain the generated initial invoice data and store the initial invoice data in a storage table in the preset business processing layer based on the preset table partitioning storage strategy; Based on a preset data synchronization channel, the initial invoice data in the storage table is read, and the initial invoice data is aggregated and transformed based on a preset query analysis layer to generate corresponding invoice processing data. The invoice processing data is stored in the query database of the query analysis layer according to a preset table structure; Based on a preset conversion strategy, the invoice processing data in the query database is converted to obtain the corresponding target invoice data; The target distributed columnar storage database is determined based on the preset requirements information; The target invoice data is stored in the target distributed columnar storage database.
2. The invoice processing method of claim 1, wherein, The step of storing the initial invoice data into a storage table in the preset business processing layer based on a preset table partitioning strategy specifically includes: Obtain the preset invoice month information, and construct the corresponding table partitioning rules based on the invoice month information; Based on the table partitioning rules, a storage table corresponding to the invoice month information is constructed in the business processing layer; Get the preset table partitioning and storage strategy; Based on the table partitioning strategy, the initial invoice data is stored in the corresponding storage table in the business processing layer.
3. The invoice processing method of claim 1, wherein, The step of performing aggregation operations and model transformations on the initial invoice data based on a preset query analysis layer to generate corresponding invoice processing data specifically includes: The preset operation rules are obtained based on the query analysis layer; Based on the aforementioned calculation rules, the initial invoice data is aggregated and processed to obtain the corresponding first processed data; Based on the preset query scenario information, the first processed data is transformed using a model to obtain the corresponding second processed data; The second processed data is used as the invoice processing data.
4. The invoice processing method of claim 1, wherein, The step of converting the invoice processing data in the query database based on a preset conversion strategy to obtain the corresponding target invoice data specifically includes: The invoice processing data is organized and processed using a columnar storage method to obtain the corresponding first invoice data; Invoke the preset compression algorithm; The first invoice data is compressed based on the compression algorithm to obtain the corresponding second invoice data; The second invoice data is used as the target invoice data.
5. The invoice processing method of claim 1, wherein, After the step of storing the initial invoice data in a preset storage table in the business processing layer based on a preset table partitioning strategy, the method further includes: Invoke the preset data monitoring tool; Based on the data monitoring tool, the data volume of invoices generated in each month is monitored, and it is determined whether there is a specified month in which the amount of invoice data exceeds a preset capacity threshold. If so, retrieve the specified storage table corresponding to the specified month from the storage table; The capacity of the specified storage table is expanded based on a preset dynamic expansion mechanism.
6. The invoice processing method of claim 1, wherein, After the step of storing the target invoice data in the target distributed columnar storage database, the method further includes: Obtain the index usage data corresponding to the target distributed columnar storage database; Based on the index usage data, perform index optimization processing on the target distributed columnar storage database; Based on preset data query requirements, the data stored in the target distributed columnar storage database is sharded. The data stored in the target distributed columnar storage database is partitioned based on a preset partitioning strategy.
7. The invoice processing method of claim 1, wherein, After the step of storing the target invoice data in the target distributed columnar storage database, the method further includes: Determine whether a user-triggered invoice data query request has been received; wherein the invoice data query request carries query conditions and analysis dimensions; If so, extract the query conditions and the analysis dimensions from the invoice data query request; Based on the query conditions and the analysis dimensions, the target distributed columnar storage database is queried to obtain the corresponding specified invoice data. Generate corresponding display charts based on the specified invoice data; The specified invoice data and the displayed chart are processed for display.
8. An invoice processing apparatus characterized by comprising: include: The first processing module is used to obtain the generated initial invoice data and store the initial invoice data in a storage table in the preset business processing layer based on a preset table partitioning storage strategy. The second processing module is used to read the initial invoice data from the storage table based on the preset data synchronization channel, and perform aggregation operation and model transformation processing on the initial invoice data based on the preset query analysis layer to generate corresponding invoice processing data. The first storage module is used to store the invoice processing data into the query database in the query analysis layer according to a preset table structure; The conversion module is used to convert the invoice processing data in the query database based on a preset conversion strategy to obtain the corresponding target invoice data. The determination module is used to determine the target distributed columnar storage database based on preset requirements information; The second storage module is used to store the target invoice data into the target distributed columnar storage database.
9. A computer device, comprising: The method includes a memory and a processor, wherein the memory stores computer-readable instructions, and the processor executes the computer-readable instructions to implement the steps of the invoice processing method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-readable instructions, which, when executed by a processor, implement the steps of the invoice processing method as described in any one of claims 1 to 7.