CN112435049B - Account checking data processing method, device, computer equipment and storage medium - Google Patents

Account checking data processing method, device, computer equipment and storage medium Download PDF

Info

Publication number
CN112435049B
CN112435049B CN202011262559.3A CN202011262559A CN112435049B CN 112435049 B CN112435049 B CN 112435049B CN 202011262559 A CN202011262559 A CN 202011262559A CN 112435049 B CN112435049 B CN 112435049B
Authority
CN
China
Prior art keywords
charging
reconciliation
job
data
target
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
Application number
CN202011262559.3A
Other languages
Chinese (zh)
Other versions
CN112435049A (en
Inventor
梁永睿
郝文静
李媛
张涛
原帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dawning Information Industry Beijing Co Ltd
Dawning Information Industry Co Ltd
Original Assignee
Dawning Information Industry Beijing Co Ltd
Dawning Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dawning Information Industry Beijing Co Ltd, Dawning Information Industry Co Ltd filed Critical Dawning Information Industry Beijing Co Ltd
Priority to CN202011262559.3A priority Critical patent/CN112435049B/en
Publication of CN112435049A publication Critical patent/CN112435049A/en
Application granted granted Critical
Publication of CN112435049B publication Critical patent/CN112435049B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0283Price estimation or determination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Technology Law (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The application relates to a reconciliation data processing method, a reconciliation data processing device, computer equipment and a storage medium. The method comprises the following steps: acquiring first reconciliation data from a resource supply end and second reconciliation data from a charging end; the first account checking data comprise at least one first job identifier, first resource occupation data and unit charging values corresponding to unit resources; the second reconciliation data comprises at least one second job identifier, second resource occupancy data and a second billing value; searching a second job identifier corresponding to the first job identifier to obtain a target identifier; and comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result. The method can solve the problem of data matching between different systems or platforms.

Description

Account checking data processing method, device, computer equipment and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method and apparatus for processing reconciliation data, a computer device, and a storage medium.
Background
With the development of computer technology, various resource suppliers providing high-performance computer groups are presented, and for the computing resources provided by the resource suppliers, the user needs to pay for the resource suppliers according to the use condition of the resources, for example, charging is performed by adopting a SLURM pre-charging system. In the billing process, the provider and the user may need to reconcile the previous resource usage and the cost to ensure the accuracy of the cost. However, the conventional methods for settling and checking funds are generally applied to banks, securities, etc. involving the transaction of funds, and settling and checking are performed according to a specific transaction sequence.
However, in the reconciliation data processing method in the conventional technology, the reconciliation mode is only performed in the same system or platform, but the data types between different systems or platforms are greatly different, so that the conventional technology cannot solve the problem of data mismatch between different systems or different platforms.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a reconciliation data processing method, apparatus, computer device, and storage medium capable of matching data between different systems or different platforms.
A reconciliation data processing method, the method comprising:
acquiring reconciliation job data; the reconciliation job data comprises first reconciliation data from a resource supply end and second reconciliation data from a charging end; the first reconciliation data comprises at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second reconciliation data comprises at least one second job identifier, second resource occupation data corresponding to each second job identifier and a second charging value corresponding to each second job identifier;
for each first job identifier, searching a second job identifier corresponding to the first job identifier from the at least one second job identifier to obtain a target identifier;
comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result; the first charging value is obtained based on first resource occupation data corresponding to the first job identifier and unit charging value corresponding to unit resource.
According to the reconciliation data processing method, the first reconciliation data from the resource supply end and the second reconciliation data from the charging end are respectively acquired, for each first job identifier, the second job identifier corresponding to each first job identifier is searched from at least one second job identifier to obtain the target identifier, the first resource occupation data corresponding to the first job identifier is compared with the second resource occupation data corresponding to the target identifier, and the first charging value obtained based on the first resource occupation data corresponding to the first job identifier and the unit charging value corresponding to the unit resource is compared with the second charging value corresponding to the target identifier to obtain the reconciliation result. Therefore, the first resource occupation data of the resource supply end can be compared with the second resource occupation data of the corresponding charging end, the first charging value of the resource supply end is compared with the second charging value of the corresponding charging end, and the accounting result can solve the problem of data matching between different systems or platforms such as the resource supply end and the charging end, so that a foundation is provided for ensuring the consistency of the resource occupation and the generated cost value.
In one embodiment, the acquiring reconciliation job data includes:
And acquiring first reconciliation data and second reconciliation data in a first time interval to obtain the reconciliation job data.
In one embodiment, the comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the obtained first charging value with the second charging value corresponding to the target identifier, to obtain a reconciliation result includes:
dividing the first time interval to obtain at least one second time interval;
dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value;
executing a reconciliation task, wherein the execution process of the reconciliation task comprises the following steps: comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and comparing the first charging value with the target charging value corresponding to the target identifier to obtain the account checking result.
In the above embodiment, the first reconciliation data and the second reconciliation data in the first time interval are obtained, so as to obtain reconciliation job data; dividing the first time interval to obtain at least one second time interval, providing a basis for dividing huge reconciliation data into smaller-magnitude reconciliation job data, and respectively executing reconciliation tasks corresponding to the second time interval. Therefore, the account checking can be carried out in batches, the condition that the resources are excessively occupied in one account checking process is reduced, and the overall performance of account checking data processing is improved.
In one embodiment, the performing the reconciliation task includes:
acquiring a target time interval corresponding to a target reconciliation task; the target reconciliation task is a reconciliation task currently in progress;
detecting whether a part of the second time interval and the target time interval overlap exists;
and if the checking task does not exist, executing the checking task corresponding to the second time interval.
In the above embodiment, a target time interval corresponding to a target reconciliation task is obtained; the target reconciliation task is a reconciliation task currently in progress; detecting whether a part of the second time interval and the target time interval is overlapped or not; if the checking task does not exist, executing the checking task corresponding to the second time interval. Therefore, when checking accounts, only one checking account task can be executed at a time, the conflict of concurrent read-write data is avoided, and the accuracy of checking account results is ensured.
In one embodiment, the comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the obtained first charging value with the second charging value corresponding to the target identifier, to obtain a reconciliation result includes:
respectively determining the reconciliation result corresponding to each first job identifier to obtain at least one reconciliation result corresponding to at least one first job identifier;
and merging the at least one account checking result to obtain a target account checking result.
In one embodiment, the first resource occupation data includes corresponding first job resources and first job machines; when the second resource occupation data comprise corresponding second operation resources and second operation machines;
comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result, wherein the comparing comprises the following steps:
comparing the first job resource corresponding to the first job identifier with the second job resource corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the first job machine corresponding to the first job identifier with the second job machine corresponding to the target identifier;
Determining the first charging value according to the first operation resource, the unit charging value corresponding to the unit resource when the first operation machine is operated;
comparing the first charging value with the second charging value to obtain a charging value comparison result;
and combining the charging resource comparison result and the charging numerical value comparison result to obtain the account checking result.
In the above embodiment, the charging resource comparison result is obtained when comparing the first job resource corresponding to the first job identifier with the second job resource corresponding to the target identifier, and when comparing the second job machine corresponding to the target identifier when comparing the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the unit charging value corresponding to the unit resource when the first operation machine is operated; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a checking result. The account checking result comprises comparison of the resource occupation condition and comparison of the charging value, so that the account checking result can reflect whether the resource occupation condition and the generated cost are respectively corresponding at the same time, and dual data guarantee is provided for guaranteeing the consistency of data matching between different systems or platforms such as a resource supply end and a charging end.
In one embodiment, each first job identifier includes at least one charging switch, where the charging switch is configured to identify a charging state corresponding to the first job identifier, and the charging state includes three states including charging, non-charging and unknown charging states;
comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result, wherein the comparing comprises the following steps:
and when the charging state is charging, executing the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a checking result.
In the above embodiment, when the charging status is charging, the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the obtained first charging value with the second charging value corresponding to the target identifier are performed to obtain the reconciliation result. The phenomenon that the charging state is "charging" but charging is missed can be avoided, or the phenomenon that the error charging is carried out when the charging state is "no charging" and the charging state is unknown "can be avoided. Whether the resource occupation corresponds to the generated expense or not is reflected, and a basis is provided for ensuring the consistency of the resource occupation and the generated expense.
A reconciliation data processing apparatus, the apparatus comprising:
the data acquisition module is used for acquiring reconciliation job data; the reconciliation job data comprises first reconciliation data from a resource supply end and second reconciliation data from a charging end; the first reconciliation data comprises at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second reconciliation data comprises at least one second job identifier, second resource occupation data corresponding to each second job identifier and a second charging value corresponding to each second job identifier;
the job identifier searching module is used for searching a second job identifier corresponding to the first job identifier from the at least one second job identifier for each first job identifier to obtain a target identifier;
and the account checking module is used for comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain an account checking result. A computer device comprising a memory storing a computer program and a processor implementing the steps of any one of the methods described above when the processor executes the computer program.
A computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of any of the methods described above.
According to the reconciliation data processing method, the device, the computer equipment and the storage medium, the first reconciliation data from the resource supply end and the second reconciliation data from the charging end are respectively acquired, for each first job identifier, the second job identifier corresponding to each first job identifier is searched from at least one second job identifier to obtain the target identifier, the first resource occupation data corresponding to the first job identifier is compared with the second resource occupation data corresponding to the target identifier, and the first charging value obtained based on the first resource occupation data corresponding to the first job identifier and the unit charging value corresponding to the unit resource is compared with the second charging value corresponding to the target identifier to obtain the reconciliation result. Therefore, the first resource occupation data of the resource supply end can be compared with the second resource occupation data of the corresponding charging end, the first charging value of the resource supply end is compared with the second charging value of the corresponding charging end, and the accounting result can solve the problem of data matching between different systems or platforms such as the resource supply end and the charging end, and provides a basis for data matching between different systems or platforms.
Drawings
FIG. 1 is an application environment diagram of a reconciliation data processing method in one embodiment;
FIG. 2 is a flow diagram of a method of reconciliation data processing in one embodiment;
FIG. 3 is a flow chart of one implementation of step S300 in one embodiment;
FIG. 4 is a flow chart of one implementation of step S300 in one embodiment;
FIG. 5 is a schematic diagram of a reconciliation data processing method based on a SLURM pre-billing system in one embodiment;
FIG. 6 is a flow chart of a reconciliation data processing method based on a SLURM pre-billing system;
FIG. 7 is a flow chart of one possible embodiment of determining a reconciliation time range in an automated reconciliation manner;
FIG. 8 is a flow diagram of one embodiment of determining a reconciliation time range in a manual reconciliation mode;
FIG. 9 is a flow chart of a reconciliation data processing method based on a SLURM pre-billing system;
FIG. 10 is a flow diagram of one embodiment of a multiple job one-by-one reconciliation;
FIG. 11 is a flow diagram of one possible implementation of a single job reconciliation;
FIG. 12 is a block diagram of a reconciliation apparatus in one embodiment;
fig. 13 is an internal structural view of a computer device in one embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the present application.
The reconciliation data processing method provided by the application can be applied to an application environment shown in fig. 1. Wherein the terminal 102 communicates with the server 104 via a network. The terminal 102 obtains first accounting data from the resource supply end and second accounting data from the charging end respectively, searches a second job identifier corresponding to each first job identifier from at least one second job identifier to obtain a target identifier, compares first resource occupation data corresponding to the first job identifier in the first accounting data corresponding to the first job identifier with second resource occupation data in the second accounting data corresponding to the target identifier, and compares a first charging value obtained based on the first resource occupation data corresponding to the first job identifier and a unit charging value corresponding to the unit resource with a second charging value corresponding to the target identifier to obtain an accounting result. The terminal 102 may be, but not limited to, various personal computers, notebook computers, smartphones, tablet computers, and portable wearable devices, and the server 104 may be implemented by a stand-alone server or a server cluster composed of a plurality of servers.
In one embodiment, as shown in fig. 2, a reconciliation data processing method is provided, and the method is applied to the terminal in fig. 1 for illustration, and includes the following steps:
step S100, obtaining reconciliation job data; the reconciliation job data comprises first reconciliation data from the resource supply end and second reconciliation data from the charging end; the first account checking data comprise at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second reconciliation data comprises at least one second job identifier, second resource occupation data corresponding to each second job identifier, and a second billing value corresponding to each second job identifier.
Step S200, for each first job identifier, searching a second job identifier corresponding to the first job identifier from at least one second job identifier to obtain a target identifier.
Step S300, comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first billing value with the second billing value corresponding to the target identifier to obtain a reconciliation result; the first charging value is obtained based on first resource occupation data corresponding to the first job identifier and unit charging value corresponding to the unit resource.
The resource supply end refers to an end for providing computer resources, and may be terminal equipment, a server, a high-performance computer group (High Performance Computing, HPC), etc., where HPC is adopted in the present application, for example, a Gridview platform. The Gridview is used as one of the HPC cloud platforms, integrates simulation calculation and industrial design, unifies portals and centralizes data management, simplifies the industrial design workflow to provide one-stop service for users, can realize scheduling and distribution of high-performance computing resources, job submission, job management, state monitoring, statistics and billing and the like, supports various types of application software installation, such as manufacturing design, scientific simulation calculation and the like, and can provide a cluster integration solution. The charging end refers to an electronic charging system end, such as a GOLD charging system or a pre-charging system based on SLURM. The GOLD charging system is an open source charging system for tracking and managing resource usage on a high performance computer. The pre-charging system based on SLURM refers to a pre-charging system of an SLURM scheduling system, the system integrates the SLURM scheduling system with a GOLD charging system, so that on-machine management of a user is realized, pre-charging and post-charging of a working machine are performed when the working use resource condition is converted into on-machine, and whether the working can run is controlled according to the current on-machine condition of the user.
Specifically, the resource supply end (for example, the Gridview platform) stores data such as a resource usage situation and a resource price, and the billing end (for example, a pre-billing system based on the SLURM) stores data such as a resource usage situation and a job cost generated by the resource usage. At least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging value corresponding to unit resource are respectively obtained from a resource supply end, and at least one second job identifier, second resource occupation data corresponding to each second job identifier and second charging value corresponding to each second job identifier are obtained from a charging end. After the reconciliation job data are obtained, for each first job identifier, searching a second job identifier corresponding to each first job identifier from at least one second job identifier according to the first job identifier, and determining the searched second job identifier corresponding to the first job identifier as a target identifier. Comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, comparing a first charging value obtained based on the first resource occupation data corresponding to the first job identifier and the unit charging value corresponding to the unit resource with a second charging value corresponding to the target identifier, and determining a comparison result as an account checking result.
According to the reconciliation data processing method, the first reconciliation data from the resource supply end and the second reconciliation data from the charging end are respectively acquired, for each first job identifier, the second job identifier corresponding to each first job identifier is searched from at least one second job identifier to obtain the target identifier, the first resource occupation data corresponding to the first job identifier is compared with the second resource occupation data corresponding to the target identifier, and the first charging value obtained based on the first resource occupation data corresponding to the first job identifier and the unit charging value corresponding to the unit resource is compared with the second charging value corresponding to the target identifier to obtain the reconciliation result. Therefore, the first resource occupation data of the resource supply end can be compared with the second resource occupation data of the corresponding charging end, the first charging value of the resource supply end is compared with the second charging value of the corresponding charging end, and the accounting result can solve the problem of data matching between different systems or platforms such as the resource supply end and the charging end, so that a foundation is provided for ensuring the consistency of the resource occupation and the generated cost value.
In one embodiment, step S100, obtaining reconciliation job data includes:
And acquiring first reconciliation data and second reconciliation data in a first time interval to obtain reconciliation job data.
The first time interval is a preset time interval, for example, a day, a week, a month or a year is different, and a certain time interval is mainly set for reconciliation so as to determine data used for reconciliation, and optionally, the first time interval may be from 00:00:00 of a previous day to 00:00:00 of a next day.
Specifically, first and second reconciliation data in a first time interval are acquired, and the first and second reconciliation data in the time interval are determined as reconciliation job data. The reconciliation data is acquired in a time-limited manner, so that the data for reconciliation is determined conveniently, and a start time and an end time are determined for reconciliation, so that the reconciliation range is determined.
Optionally, as shown in fig. 3, a flowchart of an embodiment of step S300 includes the following steps:
step S311, dividing the first time interval to obtain at least one second time interval.
Step S312, dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value.
Step S313, executing the reconciliation task, wherein the execution process of the reconciliation task includes: and comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and comparing the first charging value with the target charging value corresponding to the target identifier to obtain a reconciliation result.
The second time interval is a smaller time interval than the first time interval, and is mainly a certain time interval set for reconciliation so as to determine data used for reconciliation in batches, alternatively, the second time interval may be one hour from one whole point to the next whole point or two hours from one whole point to the next whole point are different.
Specifically, the first time interval is divided into a plurality of second time intervals, for example, 00:00:00 of the previous day to 00:00:00 of the next day are divided into (00:00:00, 00:01:00 of the first day), (00:01:00, 00:02:00, … … (00:023:00, 00:00 of the next day) after the first time interval is divided into a plurality of second time intervals, a reconciliation task is executed in each second time interval one by one, first target resource occupation data corresponding to the first job identifier is compared with second target resource occupation data corresponding to the target identifier, and the first billing value is compared with the target billing value corresponding to the target identifier to obtain a reconciliation result.
In the above embodiment, the first reconciliation data and the second reconciliation data in the first time interval are obtained, so as to obtain reconciliation job data; dividing the first time interval to obtain at least one second time interval, providing a basis for dividing huge reconciliation data into smaller-magnitude reconciliation job data, and respectively executing reconciliation tasks corresponding to the second time interval. Therefore, the account checking can be carried out in batches, the condition that the resources are excessively occupied in one account checking process is reduced, and the overall performance of account checking data processing is improved.
In one embodiment, as an implementation of step S312, the method includes:
acquiring a target time interval corresponding to a target reconciliation task; the target reconciliation task is a reconciliation task currently in progress; detecting whether a part of the second time interval and the target time interval is overlapped or not; if the checking task does not exist, executing the checking task corresponding to the second time interval.
The target time interval is a time range in which the reconciliation task is currently being executed, for example, a time range corresponding to reconciliation job data from the resource supply end and the charging end used by the reconciliation task.
Specifically, if a plurality of different time-overlapping reconciliation tasks are started, the same reconciliation job data at the time-overlapping portions are processed at the same time, so that to avoid the conflict of concurrent read-write data, it is required to ensure that the reconciliation time ranges of the currently ongoing reconciliation tasks cannot overlap, and therefore, before starting one reconciliation task, it is required to detect whether there is an ongoing reconciliation task. Specifically, a target time interval corresponding to the currently-ongoing reconciliation task is obtained, whether a part of overlapping exists between the second time interval and the target time interval or not is detected, if so, the reconciliation process is exited for waiting, and if not, the reconciliation is carried out according to the reconciliation process until a reconciliation result is obtained.
Optionally, detecting whether there is a portion of overlap between the second time interval and the target time interval; if the target time interval does not exist, the second time interval is determined to be a target time interval, and the reconciliation task corresponding to the second time interval is executed.
Specifically, after the checking task is completed once, deleting the target time interval determined by the second time interval. And the overlapping of the time interval of the subsequent reconciliation task and the concurrent read-write conflict are avoided.
In the above embodiment, a target time interval corresponding to a target reconciliation task is obtained; the target reconciliation task is a reconciliation task currently in progress; detecting whether a part of the second time interval and the target time interval is overlapped or not; if the checking task does not exist, executing the checking task corresponding to the second time interval. Therefore, when checking accounts, only one checking account task can be executed at a time, the conflict of concurrent read-write data is avoided, and the accuracy of checking account results is ensured.
In one embodiment, in step S300, an implementation manner includes:
respectively determining the reconciliation result corresponding to each first job identifier to obtain at least one reconciliation result corresponding to at least one first job identifier; and merging at least one reconciliation result to obtain a target reconciliation result.
Specifically, the reconciliation data includes a plurality of first job identifiers, each first job identifier corresponds to a second job identifier, the second job identifier corresponding to the first job identifier can be regarded as a target identifier, thus each first job identifier corresponds to a small reconciliation result, and each first job identifier corresponds to a small reconciliation result and the final reconciliation result is obtained by merging the small reconciliation results.
Optionally, as shown in fig. 4, a flowchart of an embodiment of step S300 includes the following steps:
step S321, comparing the first job resource corresponding to the first job identifier with the second job resource corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the first job machine corresponding to the first job identifier with the second job machine corresponding to the target identifier.
Step S322, determining a first billing value according to the first job resource, the first job machine time and the unit billing value corresponding to the unit resource.
Step S323, comparing the first billing value with the second billing value to obtain a billing value comparison result.
Step S324, combining the charging resource comparison result and the charging numerical value comparison result to obtain a reconciliation result.
When the first resource occupation data comprise corresponding first operation resources and first operation machines; and the second resource occupation data comprise corresponding second job resources and second job machines.
Specifically, the cost of the occupied resources is generally determined by the amount of resources occupied by one job and the occupied time, and the longer the occupied amount of resources is, the more the cost is generally. Therefore, when checking, it is necessary to compare the resource occupation situation and the occupation time, respectively. Specifically, when the occupation condition of the resources is compared, the first job resources corresponding to the first job identification and the second job resources corresponding to the target identification need to be compared, and when the first job machine corresponding to the first job identification and the second job machine corresponding to the target identification are compared, a charging resource comparison result is obtained. When comparing the occupation time of the resources, the corresponding first billing value (cost) needs to be determined according to the first job resources, the first job machine time and the unit billing value (unit price) corresponding to the unit resources, for example, the first job resources are 3 unit spaces, the first job machine time is 2 hours, the resource price of the unit spaces is 0.5 yuan per hour, and the resource occupation value (cost) is 3×2×0.5 yuan=3 yuan. And finally, determining the charge resource comparison result and the charge comparison result of the charge value as the reconciliation result.
In the above embodiment, the charging resource comparison result is obtained when comparing the first job resource corresponding to the first job identifier with the second job resource corresponding to the target identifier, and when comparing the second job machine corresponding to the target identifier when comparing the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the unit charging value corresponding to the unit resource when the first operation machine is operated; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a checking result. The account checking result comprises comparison of the resource occupation condition and comparison of the charging value, so that the account checking result can reflect whether the resource occupation condition and the generated cost are respectively corresponding at the same time, and dual data guarantee is provided for guaranteeing the consistency of data matching between different systems or platforms such as a resource supply end and a charging end.
In one embodiment, in step S300, an implementation manner includes:
and when the charging state is charging, executing the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result.
And setting a charging switch for each first operation identifier, and setting a corresponding charging state according to the actual charging condition. Each first operation identifier comprises at least one corresponding charging switch, and the charging switch is used for identifying charging states corresponding to the first operation identifiers, including charging states, non-charging states and charging states unknown states.
Specifically, the resource provider includes a plurality of first job identifiers, but the plurality of first job identifiers do not necessarily all use the resources provided by the resource provider. There may be situations where a user initiates a resource usage request to a resource provider based on a first job identification, but the task scheduling system does not provide resources to the user for the first job identification. At this time, the resource provider may record the first job identifier, but the first job identifier does not participate in charging, or the charging state of the first job identifier is unknown due to abnormal operations such as manual operations, which are not normally charged. When the charging state is charging, the steps of comparing the first resource occupation data corresponding to the first operation identifier with the second resource occupation data corresponding to the target identifier, and comparing the first charging value with the second charging value corresponding to the target identifier are executed to obtain a checking result, so as to avoid the phenomenon that the charging state is charging but charging is missed or the phenomenon that the charging state is not charging and is unknown.
Optionally, when the charging status is "charging status unknown", the resource occupation data are obtained from the charging status unknown and the charging end respectively, the charging status of the first job identifier occupying the specific resource is modified to be "charging", and the charging status of the first job identifier not occupying the specific resource is modified to be "non-charging". And executing the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier until a reconciliation result is obtained.
In the above embodiment, when the charging status is charging, the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the obtained first charging value with the second charging value corresponding to the target identifier are performed to obtain the reconciliation result. The phenomenon that the charging state is "charging" but charging is missed can be avoided, or the phenomenon that the error charging is carried out when the charging state is "no charging" and the charging state is unknown "can be avoided. Whether the resource occupation corresponds to the generated expense or not is reflected, and a basis is provided for ensuring the consistency of the resource occupation and the generated expense.
In a specific embodiment, as shown in fig. 5, a schematic diagram of a reconciliation data processing method based on a SLURM pre-charging system is shown. The realization of the reconciliation data processing method based on the SLURM pre-charging system is based on the SLURM pre-charging system by taking the Gridview platform as a resource supply end, wherein the charging system in the SLURM pre-charging system is a GOLD charging system. The reconciliation task system includes a Gridview management node, a SLURM database, a Gridview data table, and a GOLD data table. Specifically, a reconciliation task (reconciliation service) is deployed at the Gridview management node. The Gridview management node may communicate with the Gridview data table, the GOLD data table, and the SLURM management node, and the Gridview management node may acquire the Gridview data table and the GOLD data table by communicating with the Gridview data table and the GOLD data table, acquire job information of the SLURM database by communicating with the SLURM management node, and reconcile the acquired job information of the Gridview data table, GOLD data table, and SLURM database with the reconciliation result stored in the Gridview data table.
Fig. 6 is a flow chart of a reconciliation data processing method based on the slarm pre-charging system, as shown in fig. 6, different reconciliation modes (automatic reconciliation and manual reconciliation) only differ in the reconciliation time range, specifically in the update timestamp step of the total flow and the "determine reconciliation time range" sub-flow. First, a reconciliation time range checkStartTime, checkEndTime is determined, where checkStartTime represents the start time of the current reconciliation total process and checkEndTime represents the end time of the current reconciliation total process. In view of the fact that starting multiple reconciliation tasks involves processing the same data table at the same time, read-write conflicts may occur, and in order to avoid concurrent read-write data conflicts, the reconciliation time ranges of the ongoing reconciliation tasks may be limited such that the respective reconciliation time ranges do not overlap. Therefore, it is necessary to check whether or not the current time range of the reconciliation task and the current time range of the reconciliation task overlap before reconciliation, and if so, the reconciliation task is ended, and after the existing reconciliation task is ended, the current reconciliation task is restarted again. If the task time ranges are not overlapped, recording the time range of the checking task, and starting checking.
Since the amount of accounting data in the overall process may be large, accounting performance may be affected, accounting data is taken out in batches for accounting in 1 hour units. startTimeFor1H represents the start time corresponding to the present lot reconciliation data, endtimef 1H represents the end time corresponding to the present lot reconciliation data. According to startTimeFor1H and endtimef 1H, accounting data within 1 hour is acquired, and accounting is performed on an hour-by-hour basis. And after the whole checking is finished, deleting the time range of the checking task, and ending the checking task.
It should be noted that, when a plurality of reconciliation tasks are started, the same data table is processed at the same time, so as to avoid the conflict of concurrent read-write data, the reconciliation time ranges of the ongoing reconciliation tasks can be limited, so that the reconciliation time ranges are not overlapped. For example, a global variable may be used to save the reconciliation time ranges of the ongoing reconciliation tasks, and when each reconciliation task is started, it is checked whether the task overlaps the reconciliation time ranges of the ongoing reconciliation tasks, and if so, it is directly exited; if not, the task time range is added to the global variable List, and then checking is started. After the accounting task finishes accounting, the accounting time range of the task is deleted from all variable Lists.
Fig. 7 is a flowchart of an embodiment of determining a checking time range in an automatic checking mode, as shown in fig. 7, if an automatic checking task is automatically executed in 2:00 a day in the early morning, the data time range of checking is normally in the time range from 00:00:00 a day before to 00:00 a day after. Firstly, detecting whether an automatic checking task is being executed, if yes, ending the checking, and if not, acquiring an automatic checking time stamp from a check log file, wherein the check log file is used for recording the starting time of the time range of the automatic checking, and updating the time stamp in the checking process. The time stamp automatically checks the newly added data of the current day to ensure that all the operations and deduction data in the system are completely checked at least once according to time sequence. The auto-checkout process involves reading and modifying the timestamp, thus allowing only one auto-checkout task to be performed at a time. If the time of the time stamp is before the current 0 point, the time stamp is considered to be a valid time stamp, the time stamp is taken as the current checking start time checkStartTime (starting time), the current checking end time checkEndTime (ending time) is set as the current 00:00:00, and checking is automatically carried out according to the determined starting time and ending time. Fig. 8 is a flow chart of an embodiment of determining a checking time range in a manual checking mode, as shown in fig. 8, the manual checking does not use a timestamp, acquires a checking start time and a checking end time set by a user from the front end, and checks whether the start time is smaller than the current time to ensure that corresponding checking data exists, and the ending time is half an hour earlier than the current time to ensure sufficient storage of the checking data and avoid inaccurate data caused by hysteresis of the checking data storage. Then, the time acquired by the front end is set as the current accounting start time checkStartTime and the end time checkEndTime, and accounting is performed.
Fig. 9 is a flow chart of a reconciliation data processing method based on the SLURM pre-charging system, as shown in fig. 9, in the reconciliation data processing method based on the SLURM pre-charging system, when reconciliation is performed within a small range of time (for example, 1 hour), relevant data required for reconciliation within 1 hour needs to be acquired. Firstly, checking whether a slurry service and a Gridview database are normal or not, if not, acquiring data required by checking account, and directly exiting the checking account, and ending the checking account. After checking normal, connecting the Gridview database, and after the Gridview database is successfully connected, inquiring the job information within a certain hour from three data sources (SLURM task scheduling system, gridview database and GOLD database) according to the job ending time. The query of the job information needs to ensure that the query conditions are completely consistent, otherwise, the data difference caused by the difference of the query conditions is treated as an error in the reconciliation process, so that the reconciliation result is inaccurate. And carrying out subsequent reconciliation according to the data queried from the SLURM task scheduling system, the Gridview database and the GOLD database. The data query is carried out on the premise of ensuring the normal work of the corresponding service, so that the error rate of the data can be reduced, and the accuracy of the accounting data is improved.
Fig. 10 is a flow chart of an embodiment of checking out a plurality of jobs one by one, and fig. 11 is a flow chart of an embodiment of checking out a single job. Wherein, the job ID (jobId) and the job ending time (endTime) uniquely identify a job, each job is checked out in turn until the jobs within the hour are all checked out. As shown in fig. 10, the reconciliation object acctcackjob object of the single job contains all information required for reconciliation. First, one job (acctcckjob object) is taken out, the job charging status is determined, if there is an open status in the charging status value, the account is checked when a single job is checked when the fee deducting machine is used, and after the account checking is completed for all jobs in this hour, the account checking for the next job is performed. As shown in fig. 11, if the number of records of the job in the scheduler is not equal to 1, it is determined that the number of records of the scheduler is abnormal, and the reconciliation is ended. If the number of records in Gridview is greater than the number of scheduler records and the job ID (jogmanager_id) of the job record in Gridview is the same, it may be determined that the entry is repeated. The job ID and the job end time uniquely identify one job, and each job is checked out in turn until the jobs within the hour are all checked out. The detection of repeated warehouse entry of fig. 11 can avoid repeated participation of the accounting data of the same job in accounting and avoid accounting errors caused by repeated participation in accounting.
Alternatively, if a job has multiple records in the Gridview table, each record contains a charging switch status, respectively, the value of each charging switch may be different. From the practical situation, the situation that a job with the same job ID and end time has a plurality of records in Gridview is rarely occurred, but the reconciliation system is used as an error correction system, and all abnormal situations should be covered as much as possible. Therefore, accurate charging is required according to the charging switch value. For example, the charging switch value is null, which indicates that the charging switch record of the job is not queried when the record is put in storage. Because the operation warehouse entry and the fee deduction are independent two processes, the charging switch is not checked during warehouse entry, and whether the charging switch record is checked during fee deduction cannot be determined, so that the fee deduction condition of the record cannot be judged. Therefore, when the charging switch value of one job is empty, checking is not performed when the charging machine is deducted, and error data is recorded. The charging switch value is true, which indicates that the operation is deducted, false indicates that the operation is not deducted, unknown indicates that the state of the charging switch is unknown when the operation is running, the operation is not allowed, and the operation is not deducted. If a record with a charging switch value of true exists in one operation, a GOLD deduction record exists, so that the number of records with the charging switch of true is counted, namely the number of billingCountInGV is counted, and checking is carried out when a deduction machine is deducted. The bill opening Guan Re is false or unown in its entirety and there should be no bill deduction record in the GOLD. When unowns are present, they are also counted as error records in the Gridview database.
Optionally, for a job with a billing switch value true, checking when a single job deducts a fee. The comparison between Gridview data table and the data of GOLD when the operation should be performed are performed when the operation is performed, and if the record is 0, the value of the operation is not needed. If the records are not 0, calculating the time when the machine is to be withheld by using the parameters such as the resource unit price, the number, the rate, the operation time and the like of each record in the Gridview according to the formula of charge when the machine is withheld= (the number of CPU and the number of GPU) and the rate when the machine is to be withheld. If there is a record in Gridview and there is no record in GOLD, then some error record files in the billing system are queried. Optionally, checking the parameters at the time of machine time for the job record which is inconsistent when the machine should be withheld in the Gridview and when the machine is withheld in the GOLD. Alternatively, if a job is manually deducted by means of a command, it is likely that the end time parameter of the job is not recorded, and this part of the time for deduction is referred to as extra time for deduction. In the manual deduction mode, due to lack of the end time, extra deduction time data cannot be detected in the previous process of acquiring the reconciliation job information, the process of acquiring the reconciliation job information is performed in an hour unit, and in order to keep consistency of the front data and the rear data, the extra deduction time data is independently processed in the process, and is stored in an independent data table in an hour unit.
In the above embodiment, the resource price of the resource supply end is compared with the operation cost of the corresponding charging end, and the accounting result can reflect whether the resource occupation corresponds to the generated cost, so as to provide a basis for ensuring the consistency of the resource occupation and the generated cost. Meanwhile, the account checking time can be subdivided, account checking is carried out in batches, the condition that resources are occupied in one account checking process is reduced, and account checking performance is improved. And the one-time account checking service can be ensured to only execute one account checking task, the conflict of concurrent read-write data is avoided, and the accuracy of account checking results is ensured. The phenomenon that charging is missed when the charging state is "charging" can be avoided, or the phenomenon that the charging is performed by mistake when the charging state is "no charging" and "the charging state is unknown" can be avoided.
It should be understood that, although the steps in the flowcharts of fig. 2-11 are shown in order as indicated by the arrows, these steps are not necessarily performed in order as indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in FIGS. 2-11 may include multiple steps or stages that are not necessarily performed at the same time, but may be performed at different times, nor does the order in which the steps or stages are performed necessarily performed in sequence, but may be performed alternately or alternately with at least a portion of the steps or stages in other steps or other steps.
In one embodiment, as shown in fig. 12, there is provided a reconciliation apparatus comprising: a data acquisition module 121, a job identification lookup module 122, and a reconciliation module 123, wherein:
a data acquisition module 121 for acquiring reconciliation job data; the reconciliation job data comprises first reconciliation data from the resource supply end and second reconciliation data from the charging end; the first account checking data comprise at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second account checking data comprise at least one second job identifier, second resource occupation data corresponding to each second job identifier and a second charging value corresponding to each second job identifier;
the job identifier searching module 122 is configured to, for each first job identifier, search, from at least one second job identifier, a second job identifier corresponding to the first job identifier, and obtain a target identifier;
the accounting module 123 is configured to compare the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and compare the obtained first billing value with the second billing value corresponding to the target identifier to obtain an accounting result; the first charging value is obtained based on first resource occupation data corresponding to the first job identifier and unit charging value corresponding to the unit resource.
In one embodiment, the data obtaining module 121 is further configured to obtain the first reconciliation data and the second reconciliation data in the first time interval, so as to obtain the reconciliation job data.
In one embodiment, the accounting module 123 is further configured to divide the first time interval to obtain at least one second time interval; dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value; the method for executing the reconciliation task comprises the following steps: and comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and comparing the first charging value with the target charging value corresponding to the target identifier to obtain a reconciliation result.
In one embodiment, the reconciliation module 123 is further configured to obtain a target time interval corresponding to the target reconciliation task; the target reconciliation task is a reconciliation task currently in progress; detecting whether a part of the second time interval and the target time interval is overlapped or not; if the checking task does not exist, executing the checking task corresponding to the second time interval.
In one embodiment, the accounting module 123 is further configured to determine an accounting result corresponding to each first job identifier, and obtain at least one accounting result corresponding to at least one first job identifier; and merging at least one reconciliation result to obtain a target reconciliation result.
In one embodiment, the accounting module 123 is further configured to compare the first job resource corresponding to the first job identifier with the second job resource corresponding to the target identifier, and obtain a charging resource comparison result when comparing the second job machine corresponding to the target identifier with the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the unit charging value corresponding to the unit resource when the first operation machine is operated; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a checking result.
In one embodiment, the accounting module 123 is further configured to perform the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier when the charging status is charging, and comparing the obtained first charging value with the second charging value corresponding to the target identifier to obtain an accounting result when the charging status is charging.
For specific limitations of the reconciliation device, reference may be made to the above limitations of the reconciliation data processing method, which are not repeated here. The various modules in the reconciliation apparatus described above may be implemented in whole or in part in software, hardware, or a combination thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
In one embodiment, a computer device is provided, which may be a terminal, and the internal structure thereof may be as shown in fig. 13. The computer device includes a processor, a memory, a communication interface, a display screen, and an input device connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The communication interface of the computer device is used for carrying out wired or wireless communication with an external terminal, and the wireless mode can be realized through WIFI, an operator network, NFC (near field communication) or other technologies. The computer program is executed by a processor to implement a reconciliation data processing method. The display screen of the computer equipment can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer equipment can be a touch layer covered on the display screen, can also be keys, a track ball or a touch pad arranged on the shell of the computer equipment, and can also be an external keyboard, a touch pad or a mouse and the like.
It will be appreciated by those skilled in the art that the structure shown in fig. 13 is merely a block diagram of a portion of the structure associated with the present application and is not limiting of the computer device to which the present application applies, and that a particular computer device may include more or fewer components than shown, or may combine some of the components, or have a different arrangement of components.
In one embodiment, a computer device is provided comprising a memory and a processor, the memory having stored therein a computer program, the processor when executing the computer program performing the steps of:
acquiring reconciliation job data; the reconciliation job data comprises first reconciliation data from the resource supply end and second reconciliation data from the charging end; the first account checking data comprise at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second account checking data comprise at least one second job identifier, second resource occupation data corresponding to each second job identifier and a second charging value corresponding to each second job identifier;
for each first job identifier, searching a second job identifier corresponding to the first job identifier from at least one second job identifier to obtain a target identifier;
Comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result; the first charging value is obtained based on first resource occupation data corresponding to the first job identifier and unit charging value corresponding to the unit resource.
In one embodiment, the processor when executing the computer program further performs the steps of: and acquiring first reconciliation data and second reconciliation data in a first time interval to obtain reconciliation job data.
In one embodiment, the processor when executing the computer program further performs the steps of: dividing the first time interval to obtain at least one second time interval; dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value; the method for executing the reconciliation task comprises the following steps: and comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and comparing the first charging value with the target charging value corresponding to the target identifier to obtain a reconciliation result.
In one embodiment, the processor when executing the computer program further performs the steps of: acquiring a target time interval corresponding to a target reconciliation task; the target reconciliation task is a reconciliation task currently in progress; detecting whether a part of the second time interval and the target time interval is overlapped or not; if the checking task does not exist, executing the checking task corresponding to the second time interval.
In one embodiment, the processor when executing the computer program further performs the steps of: respectively determining the reconciliation result corresponding to each first job identifier to obtain at least one reconciliation result corresponding to at least one first job identifier; and merging at least one reconciliation result to obtain a target reconciliation result.
In one embodiment, the processor when executing the computer program further performs the steps of: comparing the first job resource corresponding to the first job identifier with the second job resource corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the second job machine corresponding to the target identifier with the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the unit charging value corresponding to the unit resource when the first operation machine is operated; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a checking result.
In one embodiment, the processor when executing the computer program further performs the steps of: and when the charging state is charging, executing the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result.
In one embodiment, a computer readable storage medium is provided having a computer program stored thereon, which when executed by a processor, performs the steps of:
acquiring reconciliation job data; the reconciliation job data comprises first reconciliation data from the resource supply end and second reconciliation data from the charging end; the first account checking data comprise at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second account checking data comprise at least one second job identifier, second resource occupation data corresponding to each second job identifier and a second charging value corresponding to each second job identifier;
for each first job identifier, searching a second job identifier corresponding to the first job identifier from at least one second job identifier to obtain a target identifier;
Comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result; the first charging value is obtained based on first resource occupation data corresponding to the first job identifier and unit charging value corresponding to the unit resource.
In one embodiment, the computer program when executed by the processor further performs the steps of: and acquiring first reconciliation data and second reconciliation data in a first time interval to obtain reconciliation job data.
In one embodiment, the computer program when executed by the processor further performs the steps of: dividing the first time interval to obtain at least one second time interval; dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value; the method for executing the reconciliation task comprises the following steps: and comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and comparing the first charging value with the target charging value corresponding to the target identifier to obtain a reconciliation result.
In one embodiment, the computer program when executed by the processor further performs the steps of: acquiring a target time interval corresponding to a target reconciliation task; the target reconciliation task is a reconciliation task currently in progress; detecting whether a part of the second time interval and the target time interval is overlapped or not; if the checking task does not exist, executing the checking task corresponding to the second time interval.
In one embodiment, the computer program when executed by the processor further performs the steps of: respectively determining the reconciliation result corresponding to each first job identifier to obtain at least one reconciliation result corresponding to at least one first job identifier; and merging at least one reconciliation result to obtain a target reconciliation result.
In one embodiment, the computer program when executed by the processor further performs the steps of: comparing the first job resource corresponding to the first job identifier with the second job resource corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the second job machine corresponding to the target identifier with the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the unit charging value corresponding to the unit resource when the first operation machine is operated; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a checking result.
In one embodiment, the computer program when executed by the processor further performs the steps of: and when the charging state is charging, executing the steps of comparing the first resource occupation data corresponding to the first job identifier with the second resource occupation data corresponding to the target identifier, and comparing the acquired first charging value with the second charging value corresponding to the target identifier to obtain a reconciliation result.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by way of a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in embodiments provided herein may include at least one of non-volatile and volatile memory. The nonvolatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical Memory, or the like. Volatile memory can include random access memory (Random Access Memory, RAM) or external cache memory. By way of illustration, and not limitation, RAM can be in the form of a variety of forms, such as static random access memory (Static Random Access Memory, SRAM) or dynamic random access memory (Dynamic Random Access Memory, DRAM), and the like.
The technical features of the above embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The above examples merely represent a few embodiments of the present application, which are described in more detail and are not to be construed as limiting the scope of the invention. It should be noted that it would be apparent to those skilled in the art that various modifications and improvements could be made without departing from the spirit of the present application, which would be within the scope of the present application. Accordingly, the scope of protection of the present application is to be determined by the claims appended hereto.

Claims (10)

1. A reconciliation data processing method, the method comprising:
acquiring first reconciliation data and second reconciliation data in a first time interval; wherein, the first account checking data come from a resource supply end, and the second account checking data come from a charging end; the first reconciliation data comprises at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second reconciliation data comprises at least one second job identifier, second resource occupation data corresponding to each second job identifier and a second charging value corresponding to each second job identifier; when the first resource occupation data comprise corresponding first operation resources and first operation machines; when the second resource occupation data comprise corresponding second operation resources and second operation machines;
For each first job identifier, searching a second job identifier corresponding to the first job identifier from at least one second job identifier included in the second reconciliation data to obtain a target identifier;
dividing the first time interval to obtain at least one second time interval;
dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value;
comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the second job machine corresponding to the target identifier when comparing the first job machine corresponding to the first job identifier;
determining a first charging value according to the first operation resource, the first operation machine and the unit charging value corresponding to the unit resource;
comparing the first charging value with the second charging value to obtain a charging value comparison result;
and combining the charging resource comparison result and the charging numerical value comparison result to obtain a reconciliation result.
2. The reconciliation data processing method of claim 1, wherein the method further comprises:
acquiring a target time interval corresponding to a target reconciliation task; the target reconciliation task is a reconciliation task currently in progress;
detecting whether a part of the second time interval and the target time interval overlap exists;
and if the checking task does not exist, executing the checking task corresponding to the second time interval.
3. The method for processing reconciliation data according to claim 1, wherein the combining the charging resource comparison result and the charging value comparison result to obtain a reconciliation result comprises:
respectively determining the reconciliation result corresponding to each first job identifier to obtain at least one reconciliation result corresponding to at least one first job identifier;
and merging the at least one account checking result to obtain a target account checking result.
4. The reconciliation data processing method of claim 1, wherein each of the first job identifiers comprises a corresponding at least one billing switch for identifying a billing state corresponding to the first job identifier comprising three states of billing, non-billing and billing state agnostic;
Dividing the first time interval to obtain at least one second time interval; dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value; comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the second job machine corresponding to the target identifier when comparing the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the first operation machine and the unit charging value corresponding to the unit resource; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a reconciliation result, wherein the reconciliation result comprises:
when the charging state is charging, dividing the first time interval to obtain at least one second time interval; dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value; comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the second job machine corresponding to the target identifier when comparing the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the first operation machine and the unit charging value corresponding to the unit resource; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a reconciliation result.
5. A reconciliation data processing apparatus, the apparatus comprising:
the data acquisition module is used for acquiring first reconciliation data and second reconciliation data in a first time interval; wherein, the first account checking data come from a resource supply end, and the second account checking data come from a charging end; the first reconciliation data comprises at least one first job identifier, first resource occupation data corresponding to each first job identifier and unit charging values corresponding to unit resources; the second reconciliation data comprises at least one second job identifier, second resource occupation data corresponding to each second job identifier and a second charging value corresponding to each second job identifier; when the first resource occupation data comprise corresponding first operation resources and first operation machines; when the second resource occupation data comprise corresponding second operation resources and second operation machines;
the job identification searching module is used for searching a second job identification corresponding to the first job identification from at least one second job identification included in the second reconciliation data for each first job identification to obtain a target identification;
The account checking module is used for dividing the first time interval to obtain at least one second time interval; dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value; comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the second job machine corresponding to the target identifier when comparing the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the first operation machine and the unit charging value corresponding to the unit resource; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a reconciliation result.
6. The apparatus of claim 5, wherein the reconciliation module is further configured to:
acquiring a target time interval corresponding to a target reconciliation task; the target reconciliation task is a reconciliation task currently in progress;
Detecting whether a part of the second time interval and the target time interval overlap exists;
and if the checking task does not exist, executing the checking task corresponding to the second time interval.
7. The apparatus of claim 5, wherein the reconciliation module is further configured to:
respectively determining the reconciliation result corresponding to each first job identifier to obtain at least one reconciliation result corresponding to at least one first job identifier;
and merging the at least one account checking result to obtain a target account checking result.
8. The apparatus of claim 5, wherein each of the first job identifiers includes a corresponding at least one billing switch for identifying a billing state corresponding to the first job identifier, including three states of billing, non-billing and billing state unknown; the reconciliation module is used for:
when the charging state is charging, dividing the first time interval to obtain at least one second time interval; dividing the first resource occupation data, the second resource occupation data and the second charging value according to the second time interval to obtain corresponding first target resource occupation data, second target resource occupation data and target charging value; comparing the first target resource occupation data corresponding to the first job identifier with the second target resource occupation data corresponding to the target identifier, and obtaining a charging resource comparison result when comparing the second job machine corresponding to the target identifier when comparing the first job machine corresponding to the first job identifier; determining a first charging value according to the first operation resource, the first operation machine and the unit charging value corresponding to the unit resource; comparing the first charging value with the second charging value to obtain a charging value comparison result; and combining the charging resource comparison result and the charging numerical value comparison result to obtain a reconciliation result.
9. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor implements the steps of the method of any of claims 1 to 4 when the computer program is executed.
10. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 4.
CN202011262559.3A 2020-11-12 2020-11-12 Account checking data processing method, device, computer equipment and storage medium Active CN112435049B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011262559.3A CN112435049B (en) 2020-11-12 2020-11-12 Account checking data processing method, device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011262559.3A CN112435049B (en) 2020-11-12 2020-11-12 Account checking data processing method, device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112435049A CN112435049A (en) 2021-03-02
CN112435049B true CN112435049B (en) 2023-08-04

Family

ID=74700597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011262559.3A Active CN112435049B (en) 2020-11-12 2020-11-12 Account checking data processing method, device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112435049B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002175483A (en) * 2000-12-07 2002-06-21 Canon Inc Information processor, network system, accounting method and storage medium
CN101800824A (en) * 2010-03-04 2010-08-11 中兴通讯股份有限公司 Method and device for charging
CN107425989A (en) * 2017-08-07 2017-12-01 郑州云海信息技术有限公司 A kind of virtual management platform charging method and apparatus
CN108694674A (en) * 2018-06-11 2018-10-23 中国平安人寿保险股份有限公司 Reconciliation processing method, device, computer equipment and storage medium
CN109493201A (en) * 2018-09-18 2019-03-19 深圳壹账通智能科技有限公司 Account checking method, device, computer equipment and storage medium
CN109684347A (en) * 2018-11-27 2019-04-26 平安科技(深圳)有限公司 Account checking method, device, computer equipment and storage medium
CN110390586A (en) * 2019-07-23 2019-10-29 中国工商银行股份有限公司 Account checking method, device and server
CN110443690A (en) * 2019-08-15 2019-11-12 深圳乐信软件技术有限公司 A kind of method, apparatus, server and the storage medium of variance data reconciliation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7603314B2 (en) * 2004-03-25 2009-10-13 International Business Machines Corporation Automatic billing event submission reconciliation for on demand systems
US20060029200A1 (en) * 2004-08-06 2006-02-09 Sarah Tasker Method and system for improved travel transaction billing and reconciling
US8239553B2 (en) * 2008-04-24 2012-08-07 Hewlett-Packard Development Company, L.P. Providing services for multiple business consumers

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002175483A (en) * 2000-12-07 2002-06-21 Canon Inc Information processor, network system, accounting method and storage medium
CN101800824A (en) * 2010-03-04 2010-08-11 中兴通讯股份有限公司 Method and device for charging
CN107425989A (en) * 2017-08-07 2017-12-01 郑州云海信息技术有限公司 A kind of virtual management platform charging method and apparatus
CN108694674A (en) * 2018-06-11 2018-10-23 中国平安人寿保险股份有限公司 Reconciliation processing method, device, computer equipment and storage medium
CN109493201A (en) * 2018-09-18 2019-03-19 深圳壹账通智能科技有限公司 Account checking method, device, computer equipment and storage medium
CN109684347A (en) * 2018-11-27 2019-04-26 平安科技(深圳)有限公司 Account checking method, device, computer equipment and storage medium
CN110390586A (en) * 2019-07-23 2019-10-29 中国工商银行股份有限公司 Account checking method, device and server
CN110443690A (en) * 2019-08-15 2019-11-12 深圳乐信软件技术有限公司 A kind of method, apparatus, server and the storage medium of variance data reconciliation

Also Published As

Publication number Publication date
CN112435049A (en) 2021-03-02

Similar Documents

Publication Publication Date Title
CN106980636B (en) Policy data processing method and device
CN110209650A (en) The regular moving method of data, device, computer equipment and storage medium
CN107729376B (en) Insurance data auditing method and device, computer equipment and storage medium
CN111353073B (en) Terminal equipment identification information processing method and device and electronic equipment
CN108027829A (en) The system and framework of Access and control strategy of database are provided in the network with distributed data base system
CN112015647A (en) Configuration item monitoring method and device, computer equipment and storage medium
CN112100219B (en) Report generation method, device, equipment and medium based on database query processing
CN110347545A (en) A kind of test method and device of business platform cache policy
CN110633977A (en) Payment exception processing method and device and terminal equipment
US20160300203A1 (en) Settlement system, server device, terminal device, recording medium, method and program
CN113220597B (en) Test method, test device, electronic equipment and storage medium
CN112435049B (en) Account checking data processing method, device, computer equipment and storage medium
CN113064919B (en) Data processing method, data storage system, computer device and storage medium
CN113505026B (en) Method, device and equipment for verifying backup data and storage medium
CN114971926A (en) Premium calculation model test method, system, device and storage medium
CN113704114A (en) Automatic testing method, device, equipment and medium for functional interface
CN114186570A (en) Operation and maintenance method and device for integrated card reader equipment, computer equipment and storage medium
CN111639057A (en) Log message processing method and device, computer equipment and storage medium
CN107609740B (en) Method and device for distributing and managing mobile equipment based on internal application
CN113377604A (en) Data processing method, device, equipment and storage medium
CN106959888B (en) Task processing method and device in cloud storage system
CN117085336B (en) Game operation data deriving method, device, equipment and storage medium
CN112965828B (en) Multithreading data processing method, device, equipment and storage medium
CN113495918A (en) Data processing method and device
CN113495805B (en) Data processing method, node determining method, device, equipment and medium

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