Data entry classification updating method, apparatus, medium, and electronic device
By identifying and combining the billing data of target enterprises and banks, this technology solves the problem of labor-intensive manual verification in existing technologies, achieving automated and efficient bill matching and improved accuracy, and is suitable for automatic reconciliation of financial businesses.
Patent Information
- Application Number
- CN202410640764.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-22
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2044-05-22
AI Technical Summary
In existing technologies, when two parties reconcile accounts, if the bill is not issued or reconciliation cannot be completed temporarily due to system bugs or other reasons, manual verification is required, which is labor-intensive and inefficient.
This paper provides a data entry classification and update method. By acquiring and matching the bill lists of target enterprises and banks, the method identifies identical bills and groups them into fixed data entries. Bills that have not yet been matched are stored in a temporary data entry list for subsequent matching with historical data. This avoids matching failures caused by delays and improves accuracy and efficiency.
It improves the accuracy and efficiency of reconciliation, saves manpower, avoids bill matching failures due to data source delays, and achieves automated and efficient reconciliation processing.
Smart Images

Figure CN118587021B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of data processing, and in particular to a data entry classification updating method and device, a medium and an electronic device. BACKGROUND
[0002] In recent years, with the continuous development of electronic payment, the amount of online transactions gradually increases, resulting in various reconciliation scenarios. Reconciliation is an indispensable process in financial business to check the transaction, to check the correctness of the transaction in financial business, and to give the final reconciliation conclusion, thereby providing the basis for subsequent work, such as clearing.
[0003] In two-party reconciliation, there are various reconciliation results, including successful reconciliation and failed reconciliation. The failed reconciliation may be due to system bug or other reasons causing data error, or it may be due to some reasons causing one party's bill not to be out, so that the other party's part of the bill cannot be reconciled successfully temporarily, but it can be reconciled successfully with other bills subsequently. In related technologies, for this kind of situation, manual checking is basically used, which consumes manpower. Therefore, an automatic reconciliation method is urgently needed, which can automatically identify the reconciled bills, and can automatically process the bills with failed reconciliation according to the actual reconciliation situation, to realize accurate and efficient automatic reconciliation. SUMMARY
[0004] To solve the above technical problems, the present application provides a data entry classification updating method, device, medium and electronic device, which at least partially solves the problems in the prior art.
[0005] In the first aspect of the present application, a data entry classification updating method is provided, which comprises the following steps:
[0006] S100, obtaining a first data entry list YZ=(YZ1, YZ2, …, YZn) and a second data entry list EZ=(EZ1, EZ2, …, EZm); i=1, 2, …, n; and j=1, 2, …, m; wherein n is the number of first data entries; YZi is the ith first data entry; YZi=(YZD, YZM); YZD is the unique identification code corresponding to the ith first data entry; YZM is the target attribute value corresponding to the ith first data entry; m is the number of second data entries; EZj is the jth second data entry. i n j m i i i i i i j is the jth second data entry; EZ j = (EZD j , EZM j ); EZD j is the unique identification code corresponding to the jth second data entry; EZM j is the target attribute value corresponding to the jth second data entry; the data source corresponding to the above first data entry list and the data source corresponding to the second data entry list are different;
[0007] S200, according to YZ i traverse EZ, if YZD i = EZD j , then combine YZ i and EZ j to obtain a first fixed data entry group, and add it to the first fixed data entry list;
[0008] S300, YZ i and EZ j are deleted from the corresponding YZ and EZ respectively to obtain a first target temporary data entry list YL = (YL1, YL2, …, YL p , …, YL q ); p = 1, 2, …, q; wherein q is the number of first target temporary data entries; YL p is the pth first target temporary data entry; YL p = (YLD p , YLM p ); YLD p is the unique identification code corresponding to the pth first target temporary data entry; YLM p is the target attribute value corresponding to the pth first target temporary data entry; wherein the unique identification codes corresponding to any two first target temporary data entries are different;
[0009] S400, according to YL p traverse the first historical temporary data entry list, if there is a first target historical temporary data entry in the first historical temporary data entry list, then combine YL p and the first target historical temporary data entry to obtain a first historical fixed data entry group, and add it to the first fixed data entry list; wherein the above first target historical temporary data entry is the first historical temporary data entry with the same unique identification code as YLD p ; the first historical temporary data entry list is used to store the first data entry list corresponding to the data source and the second data entry list corresponding to the data source in the target time window with different unique identification codes of the first data entry or the second data entry.
[0010] In a second aspect of this application, a data entry classification and updating apparatus is provided, the apparatus comprising:
[0011] The data entry acquisition unit is used to acquire the first data entry list YZ = (YZ1, YZ2, ..., YZ...). i , ..., YZ n i = 1, 2, ..., n; and the second data entry list EZ = (EZ1, EZ2, ..., EZn). j , ..., EZ m ); j = 1, 2, ..., m; where n is the number of the first data entries; YZ i For the i-th first data entry; YZ i =(YZD i YZM i ); YZD i YZM is the unique identifier corresponding to the i-th first data entry. i The target attribute value is the i-th first data entry; m is the number of second data entries; EZ j For the j-th second data entry; EZ j =(EZD) j EZM j EZD j EZM is the unique identifier corresponding to the j-th second data entry. j This is the target attribute value corresponding to the j-th second data entry; the data source corresponding to the above first data entry list is different from the data source corresponding to the second data entry list.
[0012] Traversing units, used to determine the order of YZ i Iterate through EZ, if YZD i =EZD j Then YZ i and EZ j Combine them to obtain the first fixed data entry group, and add it to the first fixed data entry list;
[0013] Temporary list retrieval unit, used to retrieve YZ i and EZ j Delete from the corresponding YZ and EZ respectively to obtain the first target temporary data entry list YL = (YL1, YL2, ..., YL...). p , ..., YL q ); p = 1, 2, ..., q; where q is the number of temporary data entries for the first target; YL p YL is the p-th temporary data entry for the first target; p =(YLD) p YLM p YLD pYLD p YLD
[0014] an updating unit, configured to update YLD p traverse the first historical temporary data entry list, and if there is a first target historical temporary data entry in the first historical temporary data entry list, combine YLD p and the first target historical temporary data entry to obtain a first historical fixed data entry group, and add the first historical fixed data entry group to the first fixed data entry list; the first target historical temporary data entry is a first historical temporary data entry with a same YLD p ; the first historical temporary data entry list is configured to store a first data entry or a second data entry with different YLD
[0015] In a third aspect of the present application, a non-transitory computer readable storage medium is provided, and the storage medium stores at least one instruction or at least one program, the at least one instruction or the at least one program is loaded and executed by a processor to implement the above data entry classification updating method.
[0016] In a fourth aspect of the present application, an electronic device is provided, which includes a processor and the above non-transitory computer readable storage medium.
[0017] The present application has at least the following beneficial effects:
[0018] The data entry classification updating method provided by the present application first acquires a first data entry list and a second data entry list, i.e., acquires a first bill list of a target enterprise and a second bill list of a bank party, and then traverses the second bill list of the bank party according to each bill data of the target enterprise, and if the corresponding certain bills of the two bill lists match successfully (the bill numbers are the same), the bills are added to the first fixed data entry list. However, due to the delay of each data source and other reasons, the corresponding part of the bills may not be updated in time. At this time, YLD i and EZ jDelete from the corresponding YZ and EZ respectively, to obtain the first target temporary data entry list YL, YL temporarily stores the temporarily unmatched successful billing data (the billing data of the same billing number is not found), and then, according to each billing data in YL, match with the billing data stored in the first historical temporary data entry list, the first historical temporary data entry list stores the corresponding temporary billing data that cannot be reconciled in the target time window of the data source (target enterprise) corresponding to the first data entry list (first billing list) and the data source (the bank corresponding to the target enterprise) corresponding to the second data entry list (second billing list), according to the billing number of each temporary unmatched successful billing data in the first data entry list and the second data entry list, traverse the first historical temporary data entry list, if the data has the same billing number, combine the two into a first historical fixed data entry group, and add to the first fixed data entry list, so that the first fixed data entry list is updated. Here, considering that there may be delays and other situations in each data source, the temporarily unmatched data entries are temporarily stored in the first historical temporary data entry list, which are matched with the subsequent generated billing data, avoiding the billing matching failure caused by the delay of the data source and other situations, and the first historical temporary data entry list is set for temporarily storing the temporarily unmatched data entries, instead of directly determining the temporarily unmatched data entries as abnormal data entries, improving the accuracy and efficiency of the reconciliation, and saving manpower. BRIEF DESCRIPTION OF DRAWINGS
[0019] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0020] Figure 1 The data entry classification updating method flowchart provided by the embodiments of the present application;
[0021] Figure 2 The structural block diagram of the data entry classification updating device provided by the embodiments of the present application. DETAILED DESCRIPTION
[0022] The technical solutions in the embodiments of the present application will be described clearly and completely in the following with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, not all. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present application.
[0023] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or server that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or devices.
[0024] It should be noted that the following description covers various aspects of embodiments within the scope of the appended claims. It will be apparent that the aspects described herein can be embodied in a wide variety of forms, and any particular structure and / or function described herein is merely illustrative. Based on this application, those skilled in the art will understand that one aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number of aspects set forth herein can be used to implement the device and / or practice the method. Additionally, this device and / or method can be implemented using structures and / or functionalities other than one or more of the aspects set forth herein.
[0025] Please refer to Figure 1 As shown, embodiments of this application provide a data entry classification and updating method, the method comprising:
[0026] S100, Obtain the first data entry list YZ = (YZ1, YZ2, ..., YZ...) i , ..., YZ n i = 1, 2, ..., n; and the second data entry list EZ = (EZ1, EZ2, ..., EZn). j , ..., EZ m ); j = 1, 2, ..., m; where n is the number of the first data entries; YZ i For the i-th first data entry; YZ i =(YZD i YZM i ); YZD i YZM is the unique identifier corresponding to the i-th first data entry. i The target attribute value is the i-th first data entry; m is the number of second data entries; EZ j For the j-th second data entry; EZ j =(EZD) j EZMj ) ; EZD j is a unique identification code corresponding to the jth second data entry; EZM j is a target attribute value corresponding to the jth second data entry; the data source corresponding to the first data entry list is different from the data source corresponding to the second data entry list.
[0027] Specifically, the first data entry list can be a first bill list corresponding to a target enterprise (the data source corresponding to the first data entry list), which includes n bill data; the unique identification code can be a bill number (serial number) ; the target attribute value can be a bill amount; the second data entry list can be a second bill list generated by at least one bank (the data source corresponding to the second data entry list) having business dealings with the target enterprise, if there are multiple banks, then the bill data in different formats of the multiple banks are converted into the same standard format to obtain the corresponding second bill list; which includes m bill data, each bill data including a bill number and a bill amount.
[0028] S200, according to YZ i traverse EZ, if YZD i = EZD j , then combine YZ i and EZ j to obtain a first fixed data entry group, and add it to the first fixed data entry list.
[0029] Specifically, according to each first data entry (YZ i ) in the first data entry list, traverse the second data entry list, if the unique identification code (bill number) of any second data entry in the second data entry list is the same as that of the first data entry, then it is determined that the two bills are corresponding data of the same bill in different data sources. Then determine it as a first fixed data entry group, and add it to the first fixed data entry list.
[0030] Further, the first fixed data entry list includes a first fixed data entry first sub-list and a first fixed data entry second sub-list; each first fixed data entry group in the first fixed data entry first sub-list corresponds to the same target attribute value; each first fixed data entry group in the first fixed data entry second sub-list corresponds to different target attribute values.
[0031] If the unique identification code (invoice number) of any second data entry in the second data entry list is the same as that of the first data entry, it means that the two invoices are corresponding data of the same invoice in different data sources. Here, if the invoice amounts corresponding to the two invoices are different, it means that the two invoices fail to reconcile due to system bugs or other reasons, and there is a real difference. Here, it is added to the second sub-list of the first fixed data entry; the failure reason needs to be determined subsequently. In another case, if the invoice amounts corresponding to the two invoices are the same, it means that the two invoices reconcile successfully, and no further processing is required. It is added to the first sub-list of the first fixed data entry.
[0032] S300, YZ i and EZ j are deleted from the corresponding YZ and EZ respectively to obtain the first target temporary data entry list YL=(YL1, YL2, …, YL p , …, YL q ); p=1, 2, …, q; where q is the number of first target temporary data entries; YL p is the pthfirst target temporary data entry; YL p =(YLD p , YLM p ); YLD p is the unique identification code corresponding to the pthfirst target temporary data entry; YLM p is the target attribute value corresponding to the pthfirst target temporary data entry; where the unique identification codes corresponding to any two first target temporary data entries are different.
[0033] Specifically, after the bill data corresponding to the above two invoice numbers (which may be successful reconciliation or failed reconciliation, but all form fixed data entry groups with the same invoice number) are deleted from the corresponding lists, the remaining bill data in each list is the bill data that does not correspond to any invoice number. It is added to the first target temporary data entry list. Since the bill data with the same invoice number in the two lists has been deleted, the unique identification codes corresponding to any two first target temporary data entries are different. That is, all the first target temporary data entries stored in the first target temporary data entry list are bills that cannot be reconciled temporarily. Here, it may be due to the delay of each data source and other reasons, or it may be due to other reasons.
[0034] S400, according to YL p , traverse the first historical temporary data entry list, if there is a first target historical temporary data entry in the first historical temporary data entry list, then YL pcombining the first target historical temporary data entry with the first historical temporary data entry to obtain a first historical fixed data entry group, and adding the first historical fixed data entry group to the first fixed data entry list; wherein the first target historical temporary data entry is a first historical temporary data entry corresponding to the same unique identifier code YLD p The first historical temporary data entry list is used to store the first data entry or the second data entry corresponding to the unique identifier code different from the data source corresponding to the first data entry list and the data source corresponding to the second data entry list in the target time window.
[0035] Specifically, the first historical temporary data entry list is arranged, and the first historical temporary data entry list stores the bill data that cannot be reconciled temporarily in the target time window of the data source (a target enterprise) corresponding to the first data entry list (a first bill list) and the data source (a bank corresponding to the target enterprise) corresponding to the second data entry list (a second bill list). Here, the end time of the target time window can be the time of obtaining the first data entry list, and the length of the target time window can be 7 days. The first historical temporary data entry list is traversed according to the bill number of each bill data that has not been successfully matched in the first data entry list and the second data entry list. If the data has the same bill number, the two are combined into a first historical fixed data entry group, and are added to the first fixed data entry list, so that the first fixed data entry list is updated. Here, considering that there can be delays and the like in each data source, the data entry that has not been successfully matched is temporarily stored in the first historical temporary data entry list, and is matched with the subsequent bill data, avoiding the bill matching failure and the like caused by the delay and the like of the data source, and the first historical temporary data entry list is arranged to temporarily store the data entry that has not been successfully matched, instead of directly determining the data entry that has not been successfully matched as an abnormal data entry, improving the accuracy and efficiency of reconciliation, and saving manpower.
[0036] In an exemplary embodiment of the present application, after step S400, the method further comprises:
[0037] S1000, YL p and the first target historical temporary data entry are deleted from YL and the first historical temporary data entry list, respectively.
[0038] Specifically, in order to keep the first historical temporary data entry list updated dynamically, when YL p and the first target historical temporary data entry (i.e., two matched bills) are deleted from the first historical temporary data entry list, that is, the unique identifier codes (bill numbers) of any two data entries in the first historical temporary data entry list are different.
[0039] In an example embodiment of the present application, after step S300, the above method further comprises:
[0040] S500, according to YL p traversing the first historical temporary data entry list, if the first target historical temporary data entry does not exist in the first historical temporary data entry list, YL p is added to the first historical temporary data entry list.
[0041] Specifically, according to YL p traversing the first historical temporary data entry list, if the first target historical temporary data entry does not exist in the first historical temporary data entry list, it means that there is no data entry with the same bill number as YL p in the first historical temporary data entry list for the time being, at this time, YLp is added to the first historical temporary data entry list, and subsequent bill data is also matched with it.
[0042] In an example embodiment of the present application, after step S500, the above method further comprises:
[0043] S600, every interval of a preset time period, traverse the above first historical temporary data entry list, add the key historical temporary data entry in the first historical temporary data entry list to the first fixed data entry second sub-list, and delete it from the first historical temporary data entry list; the above key historical temporary data entry is a first historical temporary data entry corresponding to a storage time greater than a preset storage time threshold.
[0044] Specifically, the first historical temporary data entry list stores bill data in the target time window that cannot be reconciled temporarily, and is detected once every interval of a preset time period. If there is a key historical temporary data entry that has been stored in the list for a long time, it is added to the first fixed data entry second sub-list, and subsequent reason analysis is performed. Here, if a historical temporary data entry exists in the list for a long time without matching bill data, it is likely to be abnormal data, so it is added to the first fixed data entry second sub-list. The processing method of the key historical temporary data entry in this embodiment not only avoids long-term occupation of the space of the first historical temporary data entry list, but also enables timely reason analysis of bill data that has not been matched successfully within a set time.
[0045] In an example embodiment of the present application, the target enterprise not only needs to reconcile with the corresponding bank party, but also needs to reconcile with the corresponding business party (merchant, etc.). After step S400, the above method further comprises:
[0046] S700, obtaining a third data entry list SZ=(SZ1, SZ2, …, SZ x , …, SZ y ); x=1, 2, …, y; y is the number of third data entries; SZ x is the xth third data entry; SZ x =(SZD x , SZM x ); SZD x is the unique identification code corresponding to the xth third data entry; SZM x is the target attribute value corresponding to the xth third data entry; the data source corresponding to the above first data entry list, the data source corresponding to the second data entry list, and the data source corresponding to the third data entry list are all different.
[0047] Specifically, the third data entry list can be a third bill list, and the data source corresponding to the third data entry list can be a business party.
[0048] S800, updating the second fixed data entry list and the second historical temporary data entry list according to YZ, SZ, and a preset update rule; the above second fixed data entry list includes a second fixed data entry first sub-list and a second fixed data entry second sub-list, and the target attribute values corresponding to each second fixed data entry group in the above second fixed data entry first sub-list are the same; the target attribute values corresponding to each second fixed data entry group in the above second fixed data entry second sub-list are different.
[0049] Specifically, step S800 includes:
[0050] S810, traversing SZ according to YZ i , if YZD i =SZD x , then combining YZ i and SZ x to obtain a second fixed data entry group, and adding the second fixed data entry group to the second fixed data entry list.
[0051] S820, deleting YZ i and SZ x from the corresponding YZ and SZ respectively to obtain a second target temporary data entry list EL=(EL1, EL2, …, EL r , …, EL s ); r=1, 2, …, s; wherein, s is the number of second target temporary data entries; EL r is the rth second target temporary data entry; EL r =(ELD r , ELM r ); ELDr is a unique identification code corresponding to the rth second target temporary data entry; ELD r is a target attribute value corresponding to the rth second target temporary data entry; wherein, the unique identification codes corresponding to any two second target temporary data entries are different.
[0052] S830, according to ELD r traversing the second historical temporary data entry list, if there is a second target historical temporary data entry in the second historical temporary data entry list, then combining ELD r and the second target historical temporary data entry to obtain a second historical fixed data entry group, and adding it to the second fixed data entry list, and respectively deleting ELD r and the second target historical temporary data entry from the ELD and the second historical temporary data entry list; wherein, the second target historical temporary data entry is a second historical temporary data entry with the same ELD r ; the second historical temporary data entry list is used to store the first data entry list corresponding to the data source and the third data entry list corresponding to the data source in the target time window. The unique identification codes of the first data entry or the third data entry are different.
[0053] Specifically, according to YZ, SZ and the preset update rule, the second fixed data entry list and the second historical temporary data entry list are updated in the same way as the update method of steps 200-400, which will not be repeated here.
[0054] S900, every time a preset time point is reached, according to the first fixed data entry first sub-list and the second fixed data entry first sub-list, determine the current already balanced data entry; the current already balanced data entry is the first data entry, the second data entry and the third data entry corresponding to the first fixed data entry group and the second fixed data entry group with the same unique identification code and target attribute value in the first fixed data entry first sub-list and the second fixed data entry first sub-list.
[0055] Specifically, after the target enterprise and the business party successfully reconcile, the target enterprise needs to reconcile with the corresponding bank party again, and then the target enterprise is determined as a reconciliation event, that is, the corresponding first data item, second data item and third data item are determined as the current reconciled data item. In the embodiment, the first fixed data item first sub-list and the first historical temporary data item list are set between the target enterprise and the bank party, and they are updated in real time according to the matching of the bill data; and the second fixed data item first sub-list and the second historical temporary data item list are set between the target enterprise and the business party, and they are also updated in real time according to the matching of the bill data; therefore, in order to update the reconciliation event for the business party, the new current reconciled data items generated between the last preset time point and the current preset time point are obtained as the reconciliation event record every time the preset time point is reached. In the embodiment, in order to realize the three-party reconciliation event of the target enterprise, the bank party and the business party, the first historical temporary data item list of the target enterprise and the bank party and the second historical temporary data item list of the target enterprise and the business party are set, and the matching of the bill data of the target enterprise and the bank party and the matching of the bill data of the target enterprise and the business party are updated in real time. Therefore, the three-party reconciliation event is updated according to the actual reconciliation of the target enterprise and the bank party and the target enterprise and the business party every time the preset time point is reached, the reconciliation event is updated in a timely manner, and the actual reconciliation of the bill data between the data sources is clearly displayed and recorded, which facilitates subsequent historical bill data tracing.
[0056] In an exemplary embodiment of the present application, after step S400, the above method further comprises:
[0057] S1100, the first fixed data item list and the first historical temporary data item list are determined as the to-be-stored data item list, and T=(T1, T2, …, T a , …, T b ) is obtained; a=1, 2, …, b; b is the number of to-be-stored data item lists corresponding to the target database; b=2; T a is the a-th to-be-stored data item list corresponding to the target database; each to-be-stored data item list has a corresponding storage location in the target database.
[0058] Specifically, after the first fixed data item list and the first historical temporary data item list are updated according to the above method, they need to be stored in the corresponding target database, and each list has a corresponding storage location in the corresponding target database.
[0059] S1200, dividing each to-be-stored data entry list into data entries to obtain a set of to-be-stored data block lists TM=(TM1, TM2, …, TM a , …, TM b ); TM a is the a-th to-be-stored data block list corresponding to the target database; TM a =(TM a1 , TM a2 , …, TM ac , …, TM af(a) ); c=1, 2, …, f(a); wherein f(a) is the number of to-be-stored data blocks included in the a-th to-be-stored data block list corresponding to the target database; TM ac is the c-th to-be-stored data block in the a-th to-be-stored data block list corresponding to the target database; the to-be-stored data block includes a plurality of to-be-stored data entries; each to-be-stored data block has a corresponding data block identifier.
[0060] Specifically, each to-be-stored data entry list is divided into a plurality of to-be-stored data blocks, and each to-be-stored data block includes a plurality of to-be-stored data entries; in this embodiment, each to-be-stored data block of the same to-be-stored data entry list includes an equal number of data entries.
[0061] S1300, in the process of storing each to-be-stored data entry list in the target database according to TM and a preset storage order, in response to receiving a storage exception signal fed back by the target database, the storage is paused; the storage exception signal includes a data block identifier corresponding to an abnormal data block; the first storage module takes each data block as a single storage unit.
[0062] Specifically, the preset storage order includes a storage order of each to-be-stored data entry list, a storage order of a to-be-stored data block corresponding to each to-be-stored data entry list, and a storage order of a data entry included in each to-be-stored data entry list. The first storage module can be any framework in the art that can realize the storage function, function, etc., and a person skilled in the art can set it according to the actual situation, but it needs to be noted that the first storage module is a batch storage module, i.e., the first storage module takes each data block as a single storage unit. If any data entry in the data block is an abnormal data entry, all data entries in the data block will fail to be stored.
[0063] When the storage exception signal of the target database feedback is received, the storage is paused. The storage exception signal includes the data block identifier corresponding to the abnormal data block. According to the data block identifier, the corresponding to-be-stored data entry list and the corresponding to-be-stored data block can be quickly located, but at this time, it cannot be determined which data entry of the to-be-stored data block is abnormal to cause the storage failure of the to-be-stored data block.
[0064] S1400, according to the data block identifier corresponding to the abnormal data block and the preset storage order, the second storage module is called in sequence to store the corresponding to-be-stored data block; the second storage module takes each data entry as a single storage unit.
[0065] S1500, in the process of storing the corresponding to-be-stored data block with each data entry as a single storage unit, the target abnormal data entry is determined according to the abnormal data entry prompt of the target database; the target abnormal data entry is the same as any data entry in the target database.
[0066] Specifically, according to the data block identifier corresponding to the abnormal data block and the preset storage order, the second storage module is called in sequence to store the corresponding to-be-stored data block. The second storage module is a single storage module, that is, the second storage module takes each data entry as a single storage unit. If any data entry in the data block is an abnormal data entry, the data entry will fail to be stored, thereby determining the target abnormal data entry. The target abnormal data entry is a duplicate data entry, which is the same as any data entry in the target database.
[0067] S1600, the target abnormal data entry is deleted, and the storage is continued.
[0068] Specifically, after the target abnormal data entry is determined, it is deleted, and for the remaining data entries in the to-be-stored data block where the target abnormal data entry is located, the second storage module can be called in sequence according to the preset storage order to store the remaining data entries in the corresponding to-be-stored data block; the subsequent other to-be-stored data blocks are continued to be stored according to the preset storage order in sequence by calling the first storage module. In this embodiment, for the to-be-stored data block that fails in the current batch storage, the second storage module is called to upload it piece by piece, so as to quickly locate the target abnormal data entry, ignore it, and continue to complete the uploading. The time wasted by manual detection of abnormal data entries is shortened, the storage speed is guaranteed, and human resources are saved.
[0069] Please refer to Figure 2 As shown in FIG. 1,
[0070] Data entry acquisition unit 110 is used to acquire the first data entry list YZ = (YZ1, YZ2, ..., YZ...). i , ..., YZ n i = 1, 2, ..., n; and the second data entry list EZ = (EZ1, EZ2, ..., EZn). j , ..., EZ m ); j = 1, 2, ..., m; where n is the number of the first data entries; YZ i For the i-th first data entry; YZ i =(YZD i YZM i ); YZD i YZM is the unique identifier corresponding to the i-th first data entry. i The target attribute value is the i-th first data entry; m is the number of second data entries; EZ j For the j-th second data entry; EZ j =(EZD) j EZM j EZD j EZM is the unique identifier corresponding to the j-th second data entry. j This is the target attribute value corresponding to the j-th second data entry; the data source corresponding to the first data entry list and the second data entry list are different.
[0071] Traverse unit 120, used to determine YZ i Iterate through EZ, if YZD i =EZD j Then YZ i and EZ j The first fixed data entry group is obtained by combining the data and added to the first fixed data entry list.
[0072] Temporary list retrieval unit 130, used to retrieve YZ i and EZ j Delete from the corresponding YZ and EZ respectively to obtain the first target temporary data entry list YL = (YL1, YL2, ..., YL...). p , ..., YL q ); p = 1, 2, ..., q; where q is the number of temporary data entries for the first target; YL p YL is the p-th temporary data entry for the first target; p =(YLD) p YLM p YLD p YLM is the unique identifier corresponding to the p-th temporary data entry of the first target. pThe target attribute value corresponding to the pth first target temporary data entry; wherein the unique identification codes of any two first target temporary data entries are different.
[0073] The updating unit 140 is configured to update YL p The first history temporary data entry list is traversed, and if the first target history temporary data entry exists in the first history temporary data entry list, YL p The first target history temporary data entry is combined with the first target history temporary data entry to obtain a first history fixed data entry group, and is added to the first fixed data entry list; wherein the first target history temporary data entry is a first history temporary data entry with the same unique identification code as YLD p The first history temporary data entry list is configured to store the first data entry or the second data entry with different unique identification codes of the data source corresponding to the first data entry list and the data source corresponding to the second data entry list in the target time window.
[0074] Embodiments of the present application also provide a computer program product, which comprises program codes for causing an electronic device to perform the steps of the methods according to the various exemplary embodiments of the present application described in the specification when the program product is run on the electronic device.
[0075] In addition, although the various steps of the methods in the present application are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps can be omitted, a plurality of steps can be combined into one step, and / or one step can be divided into a plurality of steps, etc.
[0076] From the above description of the embodiments, those skilled in the art can easily understand that the example embodiments described herein can be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solutions according to the embodiments of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a U disk, a mobile hard disk, etc.) or a network, and includes a plurality of instructions to make a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) execute the methods according to the embodiments of the present application.
[0077] In the exemplary embodiments of the present application, an electronic device capable of implementing the above method is also provided.
[0078] Those skilled in the art can understand that various aspects of the present application can be implemented as a system, a method or a program product. Therefore, various aspects of the present application can be embodied in the form of a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software aspects, which can be collectively referred to herein as "circuitry", "module" or "system".
[0079] The electronic device according to this embodiment of the present application. The electronic device is merely an example and should not bring any limitation to the function and use range of the embodiments of the present application.
[0080] The electronic device is in the form of a general computing device. The components of the electronic device can include, but are not limited to, the at least one processor described above, the at least one storage described above, and a bus connecting different system components, including the storage and the processor.
[0081] The storage stores program codes which can be executed by the processor, so that the processor executes the steps according to various exemplary embodiments of the present application described in the "Exemplary Method" section of the present specification.
[0082] The storage can include a readable medium in the form of a volatile storage, such as a random access memory (RAM) and / or a cache memory, and can further include a read-only memory (ROM).
[0083] The storage can further include programs / utilities with a set of (at least one) program modules, such as an operating system, one or more application programs, other program modules, and program data, each of which or some combination of which can include the implementation of a network environment.
[0084] The bus can represent one or more of several types of bus structures, including a storage bus or storage controller, a peripheral bus, a graphics acceleration port, a processor or a local bus using any of a variety of bus structures.
[0085] The electronic device can also be in communication with one or more external devices such as a keyboard or a pointing and / or selection device, and / or any devices (e.g., routers, modems, etc.) that enable the electronic device to communicate with one or more other computing devices. Such communication can occur via Input / Output (I / O) interface. Still yet, the electronic device can communicate with one or more networks such as a local area network (LAN), a wide area network (WAN), and / or the Internet through a network adapter. As depicted, the network adapter is in communication with the other components of the electronic device through a bus. It should be appreciated that the bus can be one of any suitable type, and that the bus can include any suitable components of such type. It should also be appreciated that many of the components depicted in the figure can have a plurality of the same components, and that any one component can be in electrical communication with more than one other component.
[0086] From the above description of the embodiments, those skilled in the art will readily perceive that the example embodiments described herein can be implemented by software and / or by software in combination with the requisite hardware. Accordingly, the technical solutions of the embodiments of the present application can be embodied in the form of a software product. The software product can be stored in an non-volatile storage medium (e.g., a CD-ROM, a USB flash disk, a mobile hard disk, etc.) or on a network, and includes a plurality of instructions for causing a computing device (e.g., a personal computer, a server, a terminal device, or a network device, etc.) to perform the methods according to the embodiments of the present application.
[0087] In the example embodiments of the present application, a computer readable storage medium is also provided, which stores the program product capable of implementing the above-mentioned methods of the present specification. In some possible embodiments, various aspects of the present application can also be implemented in the form of a program product, which includes program codes for causing a terminal device to perform the steps according to various example embodiments of the present application described in the above-mentioned "example method" section of the present specification when the program product is run on the terminal device.
[0088] The program product can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium may, for example, be but is not limited to an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or apparatus, or any combination of the above. More specific examples (non-exhaustive list) of the readable storage medium include an electrical connection having one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0089] Computer readable signal media can include a propagated data signal with instructions embodied in data signals. Such propagated signal can take a wide variety of forms, including but not limited to electro-magnetic signals, optical signals, and so forth. Such computer readable storage media further includes any tangible storage media that is not yet in use by a brain of an individual.
[0090] Program code embodied on a computer readable medium can be transmitted using any appropriate medium, including but not limited to wireless, wired, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0091] Program code, used by or in connection with the routines described herein, can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computing device, partly on the user's computing device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server. In the latter scenario, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computing device, such as through the Internet using an Internet Service Provider. The application is not limited to a particular programming language. The program code can be transmitted using any programmed medium, including transmission through a wireless, wired, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0092] Moreover, the above-described diagrams merely illustrate a possible implementation of a method according to an example embodiment of the application and are not intended to limit the application. It is readily appreciated that the processes depicted in the above-described diagrams do not imply or represent any required order among or between the processes. Additionally, it is readily appreciated that the processes can be executed synchronously or asynchronously, for example, in multiple modules.
[0093] It should be noted that, although several modules or units for the device for action execution are mentioned in the above detailed description, such a division is not mandatory. Indeed, according to an implementation of the application, the features and functionalities of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functionalities of one module or unit described above can be further divided into several modules or units embodied.
[0094] The above merely provides the specific implementation of the present application, but the protection scope of the present application is not limited to this. Any changes or replacements that are easily thought of by those skilled in the art within the technical scope disclosed by the present application should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. A method of updating a classification of a data entry, the method comprising: The method comprises: S100, obtaining a first data entry list YZ=(YZ1, YZ2, …, YZ i , …, YZ n ); i=1, 2, …, n; and a second data entry list EZ=(EZ1, EZ2, …, EZ j , …, EZ m ); j=1, 2, …, m; wherein n is the number of first data entries; YZ i is the ith first data entry; YZ i =(YZD i , YZM i ); YZD i is the unique identification code corresponding to the ith first data entry; YZM i is the target attribute value corresponding to the ith first data entry; m is the number of second data entries; EZ j is the jth second data entry; EZ j =(EZD j , EZM j ); EZD j is the unique identification code corresponding to the jth second data entry; EZM j is the target attribute value corresponding to the jth second data entry; the data source corresponding to the first data entry list and the data source corresponding to the second data entry list are different; S200, according to YZ i traverse EZ, if YZD i =EZD j , combine YZ i and EZ j to obtain a first fixed data entry group, and add to a first fixed data entry list; the first fixed data entry list includes a first fixed data entry first sub-list and a first fixed data entry second sub-list; each first fixed data entry group in the first fixed data entry first sub-list corresponds to the same target attribute value; each first fixed data entry group in the first fixed data entry second sub-list corresponds to different target attribute values; S300, YZ i and EZ j are deleted from the corresponding YZ and EZ respectively to obtain a first target temporary data entry list YL=(YL1, YL2, …, YL p , …, YL q ); p=1, 2, …, q; wherein q is the number of the first target temporary data entries; YL p is the pth first target temporary data entry; YL p = (YLD p , YLM p ); YLD p is the unique identification code corresponding to the pth first target temporary data entry; YLM p is the target attribute value corresponding to the pth first target temporary data entry; wherein the unique identification codes corresponding to any two first target temporary data entries are different; S400, according to YL p traversing the first historical temporary data entry list, if the first target historical temporary data entry exists in the first historical temporary data entry list, combining YL p and the first target historical temporary data entry to obtain a first historical fixed data entry group, and adding the first historical fixed data entry group to the first fixed data entry list; wherein the first target historical temporary data entry is a first historical temporary data entry with the same unique identification code as YLD p The first historical temporary data entry list is used for storing the first data entry or the second data entry with the different unique identification code in the target time window, which corresponds to the data source of the first data entry list and the data source of the second data entry list. The method further comprises: Every interval preset time period, traversing the first historical temporary data entry list, adding the key historical temporary data entry in the first historical temporary data entry list to the first fixed data entry second sub-list, and deleting from the first historical temporary data entry list; the key historical temporary data entry is the first historical temporary data entry corresponding to the storage duration greater than the preset storage duration threshold.
2. The data entry classification updating method according to claim 1, characterized by, After step S300, the method further comprises: S500, according to YL p traversing the first historical temporary data entry list, if the first target historical temporary data entry does not exist in the first historical temporary data entry list, adding YL p to the first historical temporary data entry list.
3. The data entry classification updating method according to claim 1, characterized by, After step S400, the method further comprises: S700, Get the third data entry list SZ=(SZ1, SZ2, ..., SZ... x SZ y ); x = 1, 2, ..., y; y is the number of third data entries; SZ x For the xth third data entry; SZ x =(SZD x SZM x ); SZD x SZM is the unique identifier corresponding to the xth third data entry. x This represents the target attribute value corresponding to the xth third data entry; the data sources corresponding to the first data entry list, the second data entry list, and the third data entry list are all different. S800, according to YZ, SZ and the preset update rule, update the second fixed data entry list and the second historical temporary data entry list; the second fixed data entry list comprises a second fixed data entry first sub-list and a second fixed data entry second sub-list, each second fixed data entry group in the second fixed data entry first sub-list corresponds to the same target attribute value; each second fixed data entry group in the second fixed data entry second sub-list corresponds to different target attribute values; S900, every preset time point, according to the first fixed data entry first sub-list and the second fixed data entry first sub-list, determine the current fixed data entry; the current fixed data entry is the first fixed data entry group and the second fixed data entry group corresponding to the first data entry, the second data entry and the third data entry corresponding to the unique identifier code and the target attribute value in the first fixed data entry first sub-list and the second fixed data entry first sub-list.
4. The data entry classification updating method according to claim 3, characterized by, The step S800 comprises: S810, according to YZ i traverse SZ, if YZD i = SZD x , combine YZ i and SZ x to obtain a second fixed data entry group, and add to the second fixed data entry list; S820, delete YZ i and SZ x from the corresponding YZ and SZ respectively to obtain a second target temporary data entry list EL=(EL1, EL2, …, EL r , …, EL s ); r=1, 2, …, s; wherein s is the number of second target temporary data entries; EL r is the rth second target temporary data entry; EL r = (ELD r , ELM r ); ELD r is the unique identification code corresponding to the rth second target temporary data entry; ELM r is the target attribute value corresponding to the rth second target temporary data entry; wherein the unique identification codes corresponding to any two second target temporary data entries are different. S830, according to the EL r traversing the second historical temporary data entry list, if there is a second target historical temporary data entry in the second historical temporary data entry list, combining the EL r and the second target historical temporary data entry to obtain a second historical fixed data entry group, and adding the second historical fixed data entry group to the second fixed data entry list, and deleting the EL r and the second target historical temporary data entry from the EL and the second historical temporary data entry list respectively; wherein the second target historical temporary data entry is a second historical temporary data entry with the same unique identification code as the EL r D; the second historical temporary data entry list is used to store first data entries or third data entries with different unique identification codes in the target time window corresponding to the data sources of the first data entry list and the data sources of the third data entry list.
5. The method of claim 1, wherein, After step S400, the method further comprises: S1000, delete the YL p and the first target historical temporary data entry from the YL and the first historical temporary data entry list, respectively.
6. A data entry classification updating apparatus characterized by comprising: The device comprises: The data entry acquisition unit is used to acquire the first data entry list YZ=(YZ1, YZ2, ..., YZ...). i , ..., YZ n i = 1, 2, ..., n; and the second data entry list EZ = (EZ1, EZ2, ..., EZn). j , ..., EZ m ); j = 1, 2, ..., m; where n is the number of the first data entries; YZ i For the i-th first data entry; YZ i =(YZD i YZM i ); YZD i YZM is the unique identifier corresponding to the i-th first data entry. i The target attribute value is the i-th first data entry; m is the number of second data entries; EZ j For the j-th second data entry; EZ j =(EZD j EZM j ); EZD j EZM is the unique identifier corresponding to the j-th second data entry. j The target attribute value corresponding to the j-th second data entry; the data source corresponding to the first data entry list and the data source corresponding to the second data entry list are different; Traversing units, used to determine the order of YZ i Iterate through EZ, if YZD i =EZD j Then YZ i and EZ j The first fixed data entry group is obtained by combining the data and added to the first fixed data entry list. The first fixed data entry list includes a first sublist of first fixed data entries and a second sublist of first fixed data entries. The target attribute value corresponding to each first fixed data entry group in the first sublist of first fixed data entries is the same. The target attribute value corresponding to each first fixed data entry group in the second sublist of first fixed data entries is different. a temporary list obtaining unit, configured to delete YZ i and EZ j from corresponding YZ and EZ respectively to obtain a first target temporary data entry list YL=(YL1, YL2, …, YL p , …, YL q ); p=1, 2, …, q; wherein q is the number of the first target temporary data entries; YL p is the pth first target temporary data entry; YL p =(YLD p , YLM p ); YLD p is the unique identification code corresponding to the pth first target temporary data entry; YLM p is the target attribute value corresponding to the pth first target temporary data entry; wherein the unique identification codes corresponding to any two first target temporary data entries are different. an updating unit, configured to update YL according to YL p traverse the first historical temporary data entry list, and if there is a first target historical temporary data entry in the first historical temporary data entry list, combine YL p and the first target historical temporary data entry to obtain a first historical fixed data entry group, and add the first historical fixed data entry group to the first fixed data entry list; wherein the first target historical temporary data entry is a first historical temporary data entry with a same unique identification code as YLD p The first historical temporary data entry list is configured to store first data entries or second data entries with different unique identification codes of data sources corresponding to the first data entry list and the second data entry list in a target time window. In the device, the update unit is further configured to traverse the first historical temporary data entry list every interval preset time period, add the key historical temporary data entry in the first historical temporary data entry list to the first fixed data entry second sub-list, and delete from the first historical temporary data entry list; the key historical temporary data entry is the first historical temporary data entry corresponding to the storage duration greater than the preset storage duration threshold.
7. A non-transitory computer-readable storage medium, comprising: The storage medium stores at least one instruction or at least one program, and the at least one instruction or the at least one program is loaded and executed by the processor to realize the method in any one of claims 1-5.
8. An electronic device, comprising: The device comprises a processor and a non-transitory computer readable storage medium as claimed in claim 7. The device comprises a processor and a non-transitory computer readable storage medium as claimed in claim 7.
Citation Information
Patent Citations
Storage system
CN103098015A
Data processing method, system and apparatus
CN107885612A