WO2019223092A1 - 交叉表导出方法、装置、计算机设备和存储介质 - Google Patents

交叉表导出方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
WO2019223092A1
WO2019223092A1 PCT/CN2018/096907 CN2018096907W WO2019223092A1 WO 2019223092 A1 WO2019223092 A1 WO 2019223092A1 CN 2018096907 W CN2018096907 W CN 2018096907W WO 2019223092 A1 WO2019223092 A1 WO 2019223092A1
Authority
WO
WIPO (PCT)
Prior art keywords
cross
export
worksheet
cache
identifier
Prior art date
Application number
PCT/CN2018/096907
Other languages
English (en)
French (fr)
Inventor
李泳章
张川
方小伟
吴壮伟
Original Assignee
平安科技(深圳)有限公司
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 平安科技(深圳)有限公司 filed Critical 平安科技(深圳)有限公司
Publication of WO2019223092A1 publication Critical patent/WO2019223092A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Definitions

  • the present application relates to a cross-table derivation method, device, computer equipment, and storage medium.
  • the current work platform stores a large number of working data tables.
  • the platform receives multiple cross-table export requests at the same time and centrally processes the export requests, it often encounters a large amount of data blocking the system, resulting in very high processing efficiency Low and may cause system downtime.
  • a cross-table derivation method, apparatus, computer device, and storage medium are provided.
  • a cross-table export method includes:
  • a cross-table derivation device includes:
  • An export request receiving module configured to receive a cross-table export request sent by the first terminal, where the cross-table export request carries a workbook identifier
  • a first search module configured to search a first worksheet corresponding to the workbook identifier
  • a matching module configured to match the first work table with an exported cache cross table in a cache queue
  • a second lookup module configured to extract a first cache cross table that successfully matches the first work table from the cache queue, and find a unsuccessful match from the first work table to the cache cross table The second worksheet;
  • a duration estimation module configured to calculate an estimated export duration according to the second worksheet
  • a thread allocation module configured to obtain the processing time of each processing thread, calculate the processing task length of each processing thread according to the estimated derived time and the processing time, and allocate and correspond to each processing thread Assign a second work table with a matching task duration to obtain a derived cross-tab corresponding to the second work table generated by each processing thread;
  • a file generating module is configured to generate a cross-tab file according to the first cache cross-tab and the derived cross-tab, and return the cross-tab file to the first terminal.
  • a computer device includes a memory and one or more processors.
  • the memory stores computer-readable instructions.
  • the one or more processors are executed. The following steps:
  • One or more non-volatile computer-readable storage media storing computer-readable instructions.
  • the one or more processors execute the following steps:
  • FIG. 1 is an application scenario diagram of a cross-table derivation method according to one or more embodiments.
  • FIG. 2 is a schematic flowchart of a cross-table derivation method according to one or more embodiments.
  • FIG. 3 is a schematic flowchart of a cross table derivation method in another embodiment.
  • FIG. 4 is a block diagram of a cross-table deriving device according to one or more embodiments.
  • FIG. 5 is a block diagram of a computer device according to one or more embodiments.
  • the cross-table derivation method provided in this application can be applied to the application environment shown in FIG. 1.
  • the terminal communicates with the server through the network.
  • the server receives the cross-table export request sent by the terminal, reads the workbook identifier from the cross-table export request, finds the first worksheet corresponding to the workbook identifier, and the server crosses the first worksheet with the exported cache in the local cache queue.
  • Match table and extract from the cache team a first cache cross table that successfully matches the first work table, and find a second work table that does not successfully match the cache cross table from the first work table, and calculate the second The estimated export duration in the worksheet, to obtain the processing time of each processing thread at the current time, and allocate the second worksheet to each processing thread according to the estimated export duration and the processing time, to obtain the second worksheet generated by each processing thread.
  • the server Corresponding derived crosstab, the server generates a crosstab file according to the extracted first cached crosstab and the generated derived crosstab, and returns the crosstab file to the terminal.
  • the terminal may be, but is not limited to, various personal computers, notebook computers, smart phones, tablet computers, and portable wearable devices.
  • the server may be implemented by an independent server or a server cluster composed of multiple servers.
  • a cross-table export method is provided.
  • the method is applied to the server in FIG. 1 as an example, and includes the following steps:
  • Step 210 Receive a cross-table export request sent by the first terminal, where the cross-table export request carries a workbook identifier.
  • a workbook is a file used to store and process work data, such as an excel file.
  • the workbook identifier is used to uniquely identify the workbook.
  • the workbook identifier can be, but is not limited to, the file name, code, and number.
  • a workbook can consist of multiple worksheets.
  • a worksheet is a data table displayed in a workbook window. Each worksheet also has a worksheet identifier that uniquely identifies it. The work of all worksheets corresponding to the same workbook.
  • the table ID is associated with the corresponding workbook ID.
  • a crosstab is a data report generated based on a worksheet. The crosstab sorts and summarizes the data in the worksheet to facilitate user data query. Therefore, users often have the need to export the data in the workbook as a crosstab.
  • the user can perform the batch export of cross-reports on the workbook on the first terminal, and the user can select the workbook that needs to export the cross-tab.
  • the first terminal generates a cross-table export request according to the workbook identifier carried in the workbook selected by the user, and sends the cross-table export request to the server.
  • the server After receiving the cross-table export request sent by the first terminal, the server reads the workbook identifier carried in the cross-table export request.
  • Step 220 Find a first worksheet corresponding to the workbook identifier.
  • the server stores all workbook data, and the server may find a first worksheet identifier corresponding to the workbook identifier, and find a first worksheet corresponding to the first worksheet identifier.
  • the first worksheet consists of multiple worksheets, including all worksheets in the workbook corresponding to the workbook identification.
  • Step 230 Match the first work table with the exported cache cross table in the cache queue.
  • the cache cross-tab is a cross-table stored in the cache queue that has been obtained through the export operation.
  • the cache cross-tab is stored in association with the worksheet identifier of the corresponding worksheet.
  • the server looks up from the cache queue whether there is a cache cross table corresponding to the first work table identifier. When the cache cross table corresponding to the first work table identifier is found, the match is successful, otherwise, the match fails.
  • step 240 a first cache cross table that successfully matches the first work table is extracted from the cache queue, and a second work table that does not successfully match the cache cross table is found from the first work table.
  • the server extracts the successfully matched first cache cross table corresponding to the first work table from the cache queue, and filters the second work table from the first work table where there is no matching cache cross table.
  • the second worksheet is a subset of the first worksheet, and the second worksheet is a worksheet that needs to continue the export operation.
  • Step 250 Calculate the estimated export duration according to the second worksheet.
  • the server After the server filters out the second worksheet, it can estimate the second worksheet based on the number of second worksheets, the amount of data contained in the data, the data type, and other factors, as well as the duration of unit export of various worksheets obtained from experience. The total time it takes to export all worksheets.
  • Step 260 Obtain the processing time of each processing thread, calculate the assigned task length of each processing thread according to the estimated derived time and the pending time, and assign a second work table in each processing thread that matches the corresponding assigned task time to obtain A derived crosstab corresponding to the second worksheet generated by each processing thread.
  • the server is provided with multiple processing threads for cross-table export operations, and each processing thread is assigned with a cross-table export task.
  • the server counts the amount of data in the work tables that are currently allocated to each processing thread for export processing.
  • the amount of data in the processed worksheet calculates the processing time of the processing thread.
  • the server allocates the second work table to each processing thread for cross-table export processing according to the waiting time of each processing thread and the estimated export time of the second work table, and makes the processing thread after the second work table is allocated The overall processing time is maintained balanced, so that the processing threads can work together.
  • the server calculates the processing task allocation time of each processing thread, it can calculate the processing time ratio of the processing time of each processing thread, and then calculate the distribution ratio of the amount of tasks that can be allocated by each processing thread according to the processing time ratio, and the distribution ratio and processing time.
  • the ratio is negatively correlated.
  • the server uses the product of each allocation ratio and the estimated export time as the corresponding assignment task duration for each processing time, that is, the total duration of the work table export task that can be assigned in each processing thread.
  • the server combines the second worksheets according to the estimated export time of each second worksheet, so that the total estimated export time of the combined second worksheets matches the value of the assigned task duration of the processing thread, and
  • the second worksheet is allocated to processing threads that match the duration of the assigned tasks. .
  • all the second worksheets can be labeled uniformly, for example, using the corresponding workbook identifier for marking, so that the export task of the second worksheet and the The export tasks corresponding to other workbooks are shown for differentiation.
  • Each processing thread exports the second worksheet according to a preset export rule of the crosstab to generate an export crosstab. Different types of worksheets may correspond to different preset export rules. After each processing thread has exported all the second worksheets, it can perform an export prompt.
  • Step 270 Generate a crosstab file according to the first cached crosstab and the derived crosstab, and return the crosstab file to the first terminal.
  • the server When the server detects that the second work table in all processing threads has been exported, the server obtains the generated export cross-tabs from each processing thread, and extracts the first cache cross-tab and the derived cross-tabs obtained from each processing thread.
  • the tables are summarized to generate a crosstab file, and the generated crosstab file is returned to the first terminal.
  • the server when the server receives a cross-table export request, it first searches the cache queue to see if there is an exported cache cross-tab that matches the worksheet to be exported, and can directly match the matched cache cross-tab. It is extracted to reduce the workload of export processing, and the estimated export processing time is calculated based on the mismatched worksheets. Based on the estimated export time and the waiting time of tasks in each processing thread, the mismatched worksheets are reasonably allocated to multiple Processing threads generate cross-tabulations. Multi-threaded collaborative processing can improve the processing efficiency of cross-tab export work and can effectively reduce data blocking.
  • the method further includes the following steps:
  • Step 212 Obtain a login account from the cross-table export request.
  • the first terminal When generating the cross-table export request, the first terminal obtains the login account of the current user, and adds the login account to the cross-table export request. After receiving the cross-table export request, the server reads the login account from the cross-table export request.
  • Step 214 Find the export authority corresponding to the login account. When the export authority is lower than the preset authority level, find the administrator account corresponding to the login account.
  • the mapping relationship between the login account of each user and the permissions for viewing, editing, and exporting permissions is stored in the server in advance. After the server reads the login account, it looks for Export permissions corresponding to the login account. Export permissions are divided into different permission levels.
  • the preset permission level is a level at which export permissions of a cross-table export operation can be performed, and is stored in the server in advance. The server compares the found user's export permissions with the preset permission level. When the export permission is equal to or higher than the preset permission level, the process may continue to step 220; when the export permission is lower than the preset permission level, the server Find the administrator account corresponding to the login account.
  • the administrator account has higher account permissions than ordinary user accounts. User accounts can be managed in groups. The same administrator account can manage multiple user accounts.
  • Step 216 Generate a cross-table export approval request according to the workbook identifier, and send the cross-table export approval request to the second terminal corresponding to the administrator account.
  • the cross-tab approval request carries the corresponding workbook identifier of the workbook that needs to be exported.
  • the server sends the cross-tab export request to the second terminal corresponding to the administrator account, so that the administrator user can
  • the workbook identifier determines whether the user corresponding to the login account can perform the cross-table export of the corresponding workbook.
  • the second terminal generates an approval notification according to the administrator's approval decision, and returns the approval notification to the server.
  • Step 220 may include: when receiving the approval pass notification returned by the second terminal, searching for the first worksheet corresponding to the workbook identifier.
  • the server When the server receives the approval approval notification returned by the second terminal, the server reads the approval result from the approval approval notification. When the approval result passes the approval, the server searches for the first worksheet corresponding to the workbook identifier. When the approval result is that the approval fails, the server may generate a prompt that the current user does not have export permission, and return the prompt to the first terminal.
  • the server before performing the cross-table export operation, the server first determines whether the user who issued the export request has export permissions, and then performs the export operation when it has export permissions, thereby ensuring the security of the data.
  • after obtaining the derived crosstab corresponding to the second worksheet generated by each processing thread it includes: counting the first group and the extraction frequency corresponding to each cache crosstab in the cache queue; according to the first group And sorting each cache cross-table by the extraction frequency; find the second group corresponding to the derived cross-table; insert the exported cross-table into the sorted cache queue according to the second group.
  • the server performs group management on workbooks and worksheets.
  • the server may perform group management according to the data category to which the workbook and worksheet belong, or group users according to the user to which the user who created the workbook belongs.
  • group management you can also use other methods for group management.
  • the cross-tab generated from the worksheet is also grouped according to the grouping of the worksheet.
  • the server counts the first group corresponding to each cache cross table in the current cache queue. Since different cache cross tables may correspond to different groups, the first group may include multiple groups.
  • the server sorts the cache cross-tabs according to the first group, and sorts the classified groups. The server can randomly sort, and each group can set different processing priorities. The server can set the processing priority of each group. Sort the cache crosstabs for each group. In each group after classification, the server counts the number of extractions of each cache cross-table in the group due to export requirements, and calculates the extraction frequency of each cache cross-table within a preset time based on the number of extractions. The server Sort each cache crosstab in the same group according to the frequency of extraction.
  • the server After obtaining the derived cross-tab generated by each processing thread, the server looks for the second group corresponding to the exported cross-tab, and finds whether there is a cache cross-table consistent with the second group in the cache queue. When it exists, it will export the cross-tab. The table is inserted into the tail of the second group of cache crosstabs; when it does not exist, the derived crosstab is inserted into the tail of the entire cache queue. In one embodiment, when the number of derived cross-tables obtained by the server is greater than the number of free positions in the cache queue, the number of cache overflows is calculated according to the number of exported cross-tables and the number of free positions, and priority is given to each group. Cache crosstab with the number of tail deletions consistent with the number of buffer overflows. In other embodiments, the server may also directly delete the cache cross-tab that is consistent with the number of cache overflows from the tail of the cache queue. After deletion, the derived handover table is inserted into the cache queue according to the insertion rule in the above embodiment
  • the cross-tab export method further includes: calculating the data capacity of the cross-tab folder; when the data capacity is greater than a preset capacity threshold, reading a login account from the cross-tab export request; The folder is compressed to obtain a crosstab compression package.
  • the crosstab compression package is generated according to the crosstab compression package to get the crosstab link and return the crosstab link; when the data capacity is less than or equal to the preset capacity threshold, the execution continues to return the crosstab file to the first Terminal steps.
  • the server After the server generates the crosstab file, it calculates the data capacity of the crosstab file and obtains a preset capacity threshold.
  • the preset capacity threshold is used to set the maximum data transfer capacity of the largest file.
  • the preset capacity threshold is stored in the server in advance.
  • the server compares the calculated data capacity with a preset capacity threshold. When the data capacity is greater than the preset capacity threshold, the server reads the login account from the cross-table export request, finds the compression encryption password corresponding to the login account, and performs compression encryption
  • the cross-tab folder is compressed and encrypted with a password to generate a cross-tab compressed package.
  • the first terminal may send the file encryption password and login account of each user to the server in advance, and the server stores the file encryption password and the login account in correspondence.
  • the server stores the cross-table compressed package to a specified storage location, or uploads the cross-table compressed package to a cloud disk for storage.
  • the server generates a cross-table obtained link based on the storage location of the cross-table compressed package, and the cross-table obtained link is the After downloading the access address, the server returns the cross-table acquisition link to the first terminal.
  • the user of the first terminal can open the cross-table acquisition link and download the cross-table compression package on its own.
  • the server continues to perform step 270 of returning the cross-tab file to the first terminal.
  • the server when the server detects that the number of cross-tab folders generated is too large, it generates a cross-tab compression package according to the cross-tab file, and generates a cross-tab acquisition link based on the cross-tab compression package, and only obtains the cross-tab acquisition link Return to the first terminal, thereby avoiding data transmission congestion and improving data transmission efficiency.
  • the method further includes: performing a data format check on the data in the second work table, and checking the data according to the data format. The result determines whether the second worksheet meets the cross-table export conditions; when the second worksheet does not meet the cross-table export conditions, a format verification failure notification is generated based on the worksheet identifier of the second worksheet that does not meet the cross-table export conditions, and The format verification failure notification is returned to the first terminal.
  • the server finds the second worksheet, it checks the data format of the second worksheet to determine whether the second worksheet satisfies the condition that the crosstab can be derived. Specifically, the server determines whether the data in the second worksheet is aggregated data, and determines whether the data in the second worksheet is discrete data. It should be noted that, in this embodiment, the execution order of the two determination steps is It is not limited here. When the data in the second worksheet is aggregated data and discrete data, the data format verification of the second worksheet is successful; and step 250 of calculating the estimated export duration according to the second worksheet is continued.
  • the data in the second worksheet is non-aggregated data or continuous data
  • the data format verification in the second worksheet fails.
  • the execution result of the first judgment step by the server is that the verification fails, the execution of the other judgment step is not continued.
  • the second worksheet continues the cross-table export operation because it does not meet the cross-table export conditions.
  • the server generates a format verification failure notification based on the worksheet identifier of the second worksheet, and returns the format verification failure notification. To the first terminal, so that the first terminal obtains the related information of the worksheet that does not satisfy the cross-table export condition.
  • calculating the estimated export duration according to the second worksheet includes: counting the number of worksheets of the second worksheet; reading the data format identifier from the crosstab export request; and when the data format identifier is a format When the identifier is retained, the first export time unit corresponding to the format retention identifier is obtained, and the estimated export duration is calculated according to the number of worksheets and the first export time unit.
  • the data format identifier is the format exclusion identifier
  • the second corresponding to the format exclusion identifier is acquired.
  • Export time unit calculate the estimated export time based on the number of worksheets and the second export time unit.
  • the server when the estimated export duration is calculated according to the second worksheet, the server counts the number of worksheets of the second worksheet.
  • the user can select and set the data format of the cross-table.
  • the first terminal generates a data format identifier according to the data format set by the user, and adds the data format identifier to the cross-table export request. .
  • the server reads the data format identifier from the cross-table export request.
  • the data format identifier is divided into two types, including a format retention identifier and a data exclusion identifier.
  • exporting a worksheet as a cross-tab requires retaining the data format of the data in the original worksheet, such as data color, data font, etc., and excluding formatting
  • the identified cross-tab export request is processed, only the data values need to be retained, and the data format does not need to be retained. Therefore, the cross-tab export processing on the worksheets whose format is excluded is faster.
  • the server determines that the data format identifier is a format retention identifier
  • the server obtains a first export time unit corresponding to the format retention identifier
  • the first export time unit is a statistical average of a cross-table format retention export process on a worksheet. Duration, the estimated export duration is calculated based on the counted number of worksheets and the first export time unit.
  • the server determines that the data format identifier is a format exclusion identifier
  • the server obtains a second export time unit corresponding to the format exclusion identifier
  • the second export time unit is a statistical average of the cross-table format exclusion export processing on a worksheet. Duration, the estimated export duration is calculated based on the counted number of worksheets and the second export time unit.
  • the estimated export duration is calculated by classification according to the data export format of the crosstab, and the calculation result is more accurate.
  • the method before allocating the second worksheet to each processing thread according to the estimated export duration and the pending duration, the method further includes: obtaining the first task timestamp from the cross-table export request, and combining the second worktable with the The first task timestamp is associated with the record.
  • the method further includes: obtaining a second task timestamp corresponding to each worksheet in the processing thread to which the second worksheet is assigned; in the processing thread Sort each worksheet based on the second task timestamp.
  • the server obtains the first task timestamp from the cross-table export request before thread allocation of the second work table, and the first task time may be the time when the cross-table export request is issued for the first terminal.
  • the server records task time for the second work table according to the first task time stamp.
  • the server assigns the second worksheet to each processing thread
  • the server obtains the second task timestamps corresponding to all the worksheets in the processing thread to which the second worksheet is assigned, and the second task timestamp includes the associated worksheet records
  • the server sorts each worksheet according to the corresponding task timestamp from front to back. After sorting, the worksheet cross-table export processing is performed in each processing thread, so that the request is processed first. Export tasks to avoid users waiting too long and improve user experience.
  • steps in the flowchart of FIG. 2-3 are sequentially displayed according to the directions of the arrows, these steps are not necessarily performed sequentially in the order indicated by the arrows. Unless explicitly stated in this document, the execution of these steps is not strictly limited, and these steps can be performed in other orders. Moreover, at least part of the steps in Figure 2-3 may include multiple sub-steps or stages. These sub-steps or stages are not necessarily performed at the same time, but may be performed at different times. These sub-steps or stages The execution order of is not necessarily performed in sequence, but may be performed in turn or alternately with other steps or at least a part of the sub-steps or stages of other steps.
  • a cross-table derivation device including: an export request receiving module 410, a first search module 420, a matching module 430, a second search module 440, and a duration estimation module. 450. Thread allocation module 460 and file generation module 470, where:
  • the export request receiving module 410 is configured to receive a cross-table export request sent by the first terminal, where the cross-table export request carries a workbook identifier.
  • the first search module 420 is configured to search a first worksheet corresponding to the workbook identifier.
  • the matching module 430 is configured to match the first work table with the exported cache cross table in the cache queue.
  • a second lookup module 440 is configured to extract a first cache cross table that successfully matches the first work table from the cache queue, and find a second work table that does not successfully match the cache cross table from the first work table.
  • the duration estimation module 450 is configured to calculate an estimated export duration according to the second worksheet.
  • the thread allocation module 460 is configured to obtain the processing time of each processing thread, calculate the processing task length of each processing thread according to the estimated derived time and the processing time, and allocate and correspond to the processing threads.
  • a file generating module 470 is configured to generate a crosstab file according to the first cache crosstab and the derived crosstab, and return the crosstab file to the first terminal.
  • the cross-table deriving device further includes:
  • a login account acquisition module is used to obtain a login account from a cross-table export request.
  • the administrator account search module is used to find the export permission corresponding to the login account. When the export permission is lower than the preset permission level, the administrator account corresponding to the login account is found.
  • the approval sending module is configured to generate a cross-tab export approval request according to the workbook identifier, and send the cross-tab export approval request to the second terminal corresponding to the administrator account.
  • the first search module 420 may be further configured to search for a first worksheet corresponding to the workbook identifier when the approval pass notification returned by the second terminal is received.
  • the cross-table deriving device further includes:
  • the cache table statistics module is used to count the first group corresponding to each cache cross table in the cache queue and the extraction frequency.
  • the cache table sorting module is configured to sort each cache cross-tab according to the first group and the extraction frequency.
  • the group search module is used to find the second group corresponding to the exported cross-tab.
  • the queue insertion module is used to insert the exported cross-tab into the sorted cache queue according to the second group.
  • the cross-table deriving device further includes:
  • the capacity calculation module is used to calculate the data capacity of the crosstab folder.
  • the login account reading module is used to read the login account from the cross-table export request when the data capacity is greater than a preset capacity threshold.
  • the obtaining connection generating module is configured to compress the cross-tab folder according to the login account to obtain a cross-tab compressed package, generate a cross-tab obtaining link according to the cross-tab compressed package, and return the cross-tab link.
  • the execution module is configured to continue the step of returning the cross-tab file to the first terminal when the data capacity is less than or equal to a preset capacity threshold.
  • the cross-table deriving device further includes:
  • the format verification module is used to perform data format verification on the data in the second worksheet, and determine whether the second worksheet meets the cross-table export conditions according to the data format verification result.
  • a failure notification module configured to generate a format verification failure notification based on the worksheet identifier of the second worksheet that does not meet the crosstab export conditions, and return the format verification failure notification To the first terminal.
  • the duration estimation module may include:
  • the table number statistics module is used to count the number of worksheets of the second worksheet.
  • the format identifier reading module is used to read the data format identifier from the cross-table export request.
  • the first duration calculation module is configured to obtain a first export time unit corresponding to the format reserve identifier when the data format identifier is a format reserve identifier, and calculate an estimated export duration according to the number of worksheets and the first export time unit.
  • the second duration calculation module is configured to obtain a second export time unit corresponding to the format exclusion mark when the data format identifier is a format exclusion mark, and calculate the estimated export duration according to the number of worksheets and the second export time unit.
  • the cross-table deriving device further includes:
  • the timestamp recording module is configured to obtain the first task timestamp from the cross-table export request, and record the second work table and the first task timestamp in association.
  • the second time stamp obtaining module is configured to obtain a second task timestamp corresponding to each work table in the processing thread to which the second work table is allocated.
  • the thread sorting module is configured to sort each work table according to the second task timestamp in the processing thread.
  • Each module in the above-mentioned cross-table derivation device may be implemented in whole or in part by software, hardware, and a combination thereof.
  • the above-mentioned modules may be embedded in the hardware in or independent of the processor in the computer device, or may be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.
  • a computer device is provided.
  • the computer device may be a server, and its internal structure diagram may be as shown in FIG. 5.
  • the computer device includes a processor, a memory, a network interface, and a database connected through a system bus.
  • the processor of the computer device is used 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, computer-readable instructions, and a database.
  • the internal memory provides an environment for the operation of the operating system and computer-readable instructions in a non-volatile storage medium.
  • the database of the computer equipment is used to store workbooks, worksheets and other data used for cross-tab export.
  • the network interface of the computer device is used to communicate with an external terminal through a network connection.
  • the computer-readable instructions are executed by a processor to implement a cross-table derivation method.
  • FIG. 5 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer equipment to which the solution of the present application is applied.
  • the specific computer equipment may be Include more or fewer parts than shown in the figure, or combine certain parts, or have a different arrangement of parts.
  • a computer device includes a memory and one or more processors.
  • Computer-readable instructions are stored in the memory.
  • the processor causes the one or more processors to perform the following steps: Cross-table export request, the cross-table export request carries the workbook identifier; finds the first worksheet corresponding to the workbook identifier; matches the first worksheet with the exported cache cross-table in the cache queue; extracts from the cache queue Draw a first cache cross table that successfully matches the first work table, and find a second work table that does not successfully match the cache cross table from the first work table; calculate the estimated export duration according to the second work table; obtain each process The waiting time of the thread. Calculate the assigned task duration of each processing thread according to the estimated export duration and the pending processing time.
  • All processing threads are allocated a second work table that matches the corresponding assigned task duration to obtain the AND generated by each processing thread.
  • a derived crosstab corresponding to the second worksheet and generated based on the first cached crosstab and the derived crosstab Fork table file, list file and returns to cross the first terminal.
  • One or more non-volatile computer-readable storage media storing computer-readable instructions, and when the computer-readable instructions are executed by one or more processors, causing the one or more processors to perform the following steps: receiving the first terminal A cross-table export request is sent, and the cross-table export request carries the workbook identifier; finds the first worksheet corresponding to the workbook identifier; matches the first worksheet with the exported cache cross-table in the cache queue; from the cache queue Extract a first cache cross table that successfully matches the first work table, and find a second work table that does not successfully match the cache cross table from the first work table; calculate the estimated export duration according to the second work table; obtain each The processing time of the processing thread is calculated according to the estimated export time and the processing time.
  • the processing task allocation time of each processing thread is calculated, and a second work table that matches the corresponding allocated task time is allocated in each processing thread to obtain the processing task generated by each processing thread.
  • Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
  • Volatile memory can include random access memory (RAM) or external cache memory.
  • RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种交叉表导出方法,包括:接收第一终端发送的交叉表导出请求,交叉表导出请求携带工作簿标识。查找与工作簿标识对应的第一工作表;将第一工作表与缓存队列中已导出的缓存交叉表进行匹配;从缓存队列中提取出与第一工作表成功匹配的第一缓存交叉表,并从第一工作表中查找出未成功匹配缓存交叉表的第二工作表;根据第二工作表计算出预计导出时长;获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得各处理线程生成的与第二工作表对应的导出交叉表;根据第一缓存交叉表和导出交叉表生成交叉表文件,并将交叉表文件返回至第一终端。

Description

交叉表导出方法、装置、计算机设备和存储介质
相关申请的交叉引用
本申请要求于2018年05月21日提交中国专利局,申请号为2018104899842,申请名称为“交叉表导出方法、装置、计算机设备和存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及一种交叉表导出方法、装置、计算机设备和存储介质。
背景技术
在数据管理平台进行数据编辑、数据上传等操作。并且,用户经常会有将工作数据表导出成交叉表并下载的需求。
但是,目前的管理平台中存储的工作数据表的数量较大,当平台同时接收到多个交叉表导出请求,并对导出请求进行集中处理时经常会遇到大量数据堵塞系统,导致处理效率很低,并可能会造成系统宕机的情况。
发明内容
根据本申请公开的各种实施例,提供一种交叉表导出方法、装置、计算机设备和存储介质。
一种交叉表导出方法,包括:
接收第一终端发送的交叉表导出请求,所述交叉表导出请求携带工作簿标识;
查找与所述工作簿标识对应的第一工作表;
将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
根据所述第二工作表计算出预计导出时长;
获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
一种交叉表导出装置,包括:
导出请求接收模块,用于接收第一终端发送的交叉表导出请求,所述交叉表导出请求 携带工作簿标识;
第一查找模块,用于查找与所述工作簿标识对应的第一工作表;
匹配模块,用于将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
第二查找模块,用于从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
时长预估模块,用于根据所述第二工作表计算出预计导出时长;
线程分配模块,用于获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
文件生成模块,用于根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
一种计算机设备,包括存储器和一个或多个处理器,所述存储器中储存有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述一个或多个处理器执行以下步骤:
接收第一终端发送的交叉表导出请求,所述交叉表导出请求携带工作簿标识;
查找与所述工作簿标识对应的第一工作表;
将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
根据所述第二工作表计算出预计导出时长;
获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:
接收第一终端发送的交叉表导出请求,所述交叉表导出请求携带工作簿标识;
查找与所述工作簿标识对应的第一工作表;
将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
根据所述第二工作表计算出预计导出时长;
获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
本申请的一个或多个实施例的细节在下面的附图和描述中提出。本申请的其它特征和优点将从说明书、附图以及权利要求书变得明显。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为根据一个或多个实施例中交叉表导出方法的应用场景图。
图2为根据一个或多个实施例中交叉表导出方法的流程示意图。
图3为另一个实施例中交叉表导出方法的流程示意图。
图4为根据一个或多个实施例中交叉表导出装置的框图。
图5为根据一个或多个实施例中计算机设备的框图。
具体实施方式
为了使本申请的技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的交叉表导出方法,可以应用于如图1所示的应用环境中。终端通过网络与服务器进行通信。服务器接收终端发送的交叉表导出请求,从交叉表导出请求中读取工作簿标识,查找与工作簿标识对应的第一工作表,服务器将第一工作表与本地缓存队列中已导出的缓存交叉表进行匹配,并从缓存队中提取出述第一工作表成功匹配的第一缓存交叉表,及从第一工作表中查找出未成功匹配缓存交叉表的第二工作表,计算出第二工作表中的预计导出时长,获取当前时间各处理线程的待处理时长,根据预计导出时长和待处理时长将第二工作表分配至各处理线程中,获得各处理线程生成的与第二工作表对应的导出交叉表,服务器根据提取出的第一缓存交叉表和生成的导出交叉表生成交叉表文件,将交叉表文件返回给终端。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在其中一个实施例中,如图2所示,提供了一种交叉表导出方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤210,接收第一终端发送的交叉表导出请求,交叉表导出请求携带工作簿标识。
工作簿为用来储存并处理工作数据的文件,例如excel文件,工作簿标识用于对工作簿进行唯一标识,工作簿标识可以但不限于文件名称、代码、编号等。一个工作簿可以由多张工作表组成,工作表是显示在工作簿窗口中的数据表格,每张工作表也具有对其进行唯一标识的工作表标识,同一工作簿对应的所有工作表的工作表标识与相应的工作簿标识进行关联。交叉表是根据工作表生成的数据报表,交叉表对工作表中的数据进行分类汇总,便于用户进行数据查询,因此,用户往往具有将工作簿中的数据导出为交叉表的需求。
用户可以在第一终端对工作簿进行交叉报表批量导出的操作,用户可以对需要导出交叉表的工作簿进行选择。第一终端根据用户选中的工作簿携带的工作簿标识,生成交叉表导出请求,并将交叉表导出请求发送给服务器。服务器接收第一终端发送的交叉表导出请求后,读取交叉表导出请求中携带的工作簿标识。
步骤220,查找与工作簿标识对应的第一工作表。
服务器中存储有所有工作簿数据,服务器可以查找与工作簿标识对应的第一工作表标识,并查找与第一工作表标识对应的第一工作表。第一工作表由多张工作表组成,包括工作簿标识对应的工作簿中的所有工作表。
步骤230,将第一工作表与缓存队列中已导出的缓存交叉表进行匹配。
缓存交叉表为缓存队列中存储有已经经过导出操作得到的交叉表,缓存交叉表与对应工作表的工作表标识进行关联存储。服务器从缓存队列中查找是否存在与第一工作表标识对应的缓存交叉表,当查找到第一工作表标识对应的缓存交叉表时,则匹配成功,否则,匹配失败。
步骤240,从缓存队列中提取出与第一工作表成功匹配的第一缓存交叉表,并从第一工作表中查找出未成功匹配缓存交叉表的第二工作表。
服务器将成功匹配的与第一工作表对应的第一缓存交叉表从缓存队列中提取出来,并从第一工作表中筛选中未存在相匹配的缓存交叉表的第二工作表。在本实施例中,第二工作表为第一工作表的一个子集集合,第二工作表为需要继续进行导出操作的工作表。
步骤250,根据第二工作表计算出预计导出时长。
服务器筛选出第二工作表后,可以根据第二工作表的数量、所包含数据的数据量、数据类型等因素,以及根据经验得到的各种工作表的单位导出时长来预估出将第二工作表全部导出需要花费的总时长。
步骤260,获取各处理线程的待处理时长,根据预计导出时长和待处理时长计算出各处理线程的分配任务时长,在各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得各处理线程生成的与第二工作表对应的导出交叉表。
服务器中设置有多个用于交叉表导出操作的处理线程,各处理线程中分配有交叉表的导出任务,服务器统计目前各处理线程中分配的待进行导出处理的工作表的数据量,根据待处理的工作表的数据量计算出处理线程的待处理时长。服务器根据各处理线程的待处理 时长和第二工作表的预计导出时长,将第二工作表分配至各处理线程中进行交叉表导出处理,并使得分配了第二工作表后的各处理线程中的总处理时长总体上保持均衡,使各处理线程能够协同处理。
服务器在计算各处理线程的分配任务时长时,可以计算出各处理线程的待处理时长的处理时长比值,再根据处理时长比值计算出各处理线程可以分配任务量的分配比例,分配比例与处理时长比值呈负相关关系。
服务器将各分配比例与预计导出时长的乘积作为对应的各处理时长的分配任务时长,即每个处理线程中可以分配的工作表导出任务的总时长。服务器根据各第二工作表的预估导出时长将第二工作表进行组合,使得组合后的第二工作表的总预估导出时长与处理线程的分配任务时长的数值匹配,并将组合后的第二工作表分配至分配任务时长匹配的处理线程中。。
将第二工作表分配至各处理线程时,可以将所有的第二工作表进行统一标记,例如,使用对应的工作簿标识进行标记,以使得在处理线程中将第二工作表的导出任务与其他工作簿对应的导出任务以示区分。各处理线程根据交叉表的预设导出规则将第二工作表进行导出处理生成导出交叉表,不同类型的工作表可能对应于不同的预设导出规则。各处理线程将所有的第二工作表导出完毕后,可以进行导出提示。
步骤270,根据第一缓存交叉表和导出交叉表生成交叉表文件,并将交叉表文件返回至第一终端。
当服务器检测到所有处理线程中的第二工作表均导出完毕后,从各处理线程中获取生成的导出交叉表,并将提取出的第一缓存交叉表和从各处理线程中获取的导出交叉表进行汇总生成交叉表文件,将生成的交叉表文件返回给第一终端
上述交叉表导出方法中,当服务器接收交叉表导出请求时,先从缓存队列中查找是否存在与待导出的工作表相匹配的已导出的缓存交叉表,并可以将相匹配的缓存交叉表直接提取出来,从而减少导出处理的工作量,根据不匹配的工作表计算出预计的导出处理时长,根据预计导出时长和各处理线程中任务的待处理时长,将不匹配的工作表合理分配至多个处理线程进行处理生成交叉表,多线程协同处理可以提高交叉表导出工作的处理效率,并能有效减少数据阻塞。
在其中一个实施例中,如图3所示,接收第一终端发送的交叉表导出请求之后,还包括以下步骤:
步骤212,从交叉表导出请求中获取登录账号。
第一终端在生成交叉表导出请求时,获取当前用户的登录账号,并将登录账号添加至交叉表导出请求中。服务器接收到交叉表导出请求后,从交叉表导出请求中读取登录账号。
步骤214,查找登录账号对应的导出权限,当导出权限低于预设权限级别时,查找登录账号对应的管理员账号。
不同的用户具有不同的数据查看、编辑、导出等权限,服务器中事先存储有各用户的 登录账号与数据的查看权限、编辑权限、导出权限等权限的映射关系,服务器读取登录账号后,查找登录账号对应的导出权限。导出权限分为不同的权限级别。在本实施例中,预设权限级别为可以进行交叉表导出操作的导出权限的级别,预先存储在服务器中。服务器将查找到的用户的导出权限与预设权限级别进行比较,当导出权限等于或高于预设权限级别时,则可以进行继续进行步骤220;当导出权限低于预设权限级别时,服务器查找登录账号对应的管理员账号。管理员账号的账号权限大于普通的用户账号,用户账号可以进行分组管理,同一管理员账号可以对多个用户账号进行权限管理。
步骤216,根据工作簿标识生成交叉表导出审批请求,将交叉表导出审批请求发送给管理员账号对应的第二终端。
交叉表审批请求中携带需要进行交叉表导出操作的工作簿相应的工作簿标识,服务器将交叉表导出请求发送给管理员账号对应的第二终端,以使管理员用户根据交叉表导出请求中的工作簿标识判断登录账号对应的用户是否可以进行对应工作簿的交叉表导出工作。第二终端根据管理员的审批决定生成审批通知,将审批通知返回给服务器。
步骤220可以包括:当接收到第二终端返回的审批通过通知时,则查找与工作簿标识对应的第一工作表。
服务器接收到第二终端返回的审批通过通知时,从审批通过通知中读取审批结果,当审批结果过审批通过时,服务器则查找与工作簿标识对应的第一工作表。当审批结果为审批未通过时,服务器可以生成当前用户无导出权限的提示,将提示返回给第一终端。
在本实施例中,服务器在进行交叉表导出操作之前,先判断发出导出请求的用户是否具有导出权限,当具有导出权限时再进行导出操作,从而能够保证数据的安全性。
在其中一个实施例中,获得各处理线程生成的与第二工作表对应的导出交叉表之后,包括:统计缓存队列中各缓存交叉表对应的第一组别及提取频率;根据第一组别及提取频率将各缓存交叉表进行排序;查找导出交叉表对应的第二组别;根据第二组别将导出交叉表插入排序后的缓存队列中。
在本实施例中,服务器对工作簿和工作表进行分组管理,在进行分组管理时,可以根据工作簿、工作表所属的数据类别进行分组管理,也可以根据创建工作簿的用户所属的用户分组进行分组管理,也可以采用其他方式进行分组管理。相应地,根据工作表生成的交叉表也按照工作表的分组方式进行分组。
服务器统计当前缓存队列中各缓存交叉表对应的第一组别,由于不同的缓存交叉表可能对应于不同的组别,第一组别可能包括多个组别。服务器将各缓存交叉表按照第一组别进行分类,将分类后的各组别进行排序,服务器可以随机排序,各组别也可以设置不同的处理优先级,服务器根据各组别的处理优先级将各组别的缓存交叉表进行排序。在分类后的各组别中,服务器统计组别中各缓存交叉表因具有导出需求而被提取出来的提取次数,并根据提取次数计算出各缓存交叉表在预设时长内的提取频率,服务器将同一组别中的各缓存交叉表根据提取频率进行排序。
服务器在获取各处理线程生成的导出交叉表之后,查找导出交叉表对应的第二组别,查找缓存队列中是否存在与第二组别组别一致的缓存交叉表,当存在时,将导出交叉表插入第二组别的缓存交叉表的队尾;当不存在时,将导出交叉表插入到整个缓存队列的队尾。在其中一个实施例中,当服务器获取的导出交叉表的数量大于缓存队列中空闲位置的数量时,根据导出交叉表的数量和空闲位置的数量计算出缓存溢出数量,并优先从各组别的队尾删除数量与缓存溢出数量一致的缓存交叉表。在其他实施例中,服务器也可以直接从缓存队列的队尾删除与缓存溢出数量一致的缓存交叉表。删除后将导出交出表根据上述实施例中的插入规则插入到缓存队列中。
在本实施例中,将缓存队列中各缓存交叉表的根据组别和提取频率进行排序,可以将提取频率大的缓存交叉表保留在缓存队列中,提高缓存交叉表的利用率,从而能够提高交叉表的导出效率。
在其中一个实施例中,交叉表导出方法还包括:计算交叉表文件夹的数据容量;当数据容量大于预设容量阈值时,从交叉表导出请求中读取登录账号;根据登录账号对交叉表文件夹进行压缩处理得到交叉表压缩包,根据交叉表压缩包生成交叉表获取链接,将交叉表链接返回;当数据容量小于等于预设容量阈值时,则继续执行将交叉表文件返回至第一终端的步骤。
服务器生成交叉表文件后,计算出交叉表文件的数据容量并获取预设容量阈值。预设容量阈值用于设定最大文件的最大传输数据容量,预设容量阈值事先存储在服务器中。服务器将计算出的数据容量与预设容量阈值进行比较,当数据容量大于预设容量阈值时,服务器从交叉表导出请求中读取登录账号,查找与登录账号对应的压缩加密密码,根据压缩加密密码对交叉表文件夹进行压缩加密处理生成交叉表压缩包。第一终端可以将各用户的文件加密密码和登录账号事先发送给服务器,服务器将文件加密密码和登录账号对应存储。
服务器将交叉表压缩包存储至指定存储位置,或者将交叉表压缩包上传到云盘进行存储,服务器根据交叉表压缩包的存储位置生成交叉表获取链接,交叉表获取链接为交叉表压缩包的下载访问地址,服务器将交叉表获取链接返回给第一终端,第一终端的用户接收到交叉表获取链接后,可以打开交叉表获取链接并自行下载交叉表压缩包。当数据容量小于等于预设容量阈值时,服务器继续执行将交叉表文件返回至第一终端的步骤270。
在本实施例中,当服务器检测到生成的交叉表文件夹的数量过大时,根据交叉表文件生成交叉表压缩包,并根据交叉表压缩包生成交叉表获取链接,只将交叉表获取链接返回给第一终端,从而避免造成数据传输阻塞,提高数据传输效率。
在其中一个实施例中,从第一工作表中查找出未成功匹配缓存交叉表的第二工作表之后,还包括:对第二工作表中的数据进行数据格式校验,根据数据格式校验结果判断第二工作表是否满足交叉表导出条件;当第二工作表不满足交叉表导出条件时,根据不满足交叉表导出条件的第二工作表的工作表标识生成格式校验失败通知,并将格式校验失败通知 返回给第一终端。
服务器查找出第二工作表之后,对第二工作表进行数据格式校验,判断第二工作表是否满足可以导出交叉表的条件。具体地,服务器判断第二工作表中的数据是否为聚合数据,并判断第二工作表中的数据是否为离散数据,需要说明的是,在本实施例中,两个判断步骤执行的先后顺序在此不做限定。当第二工作表中的数据为聚合数据且为离散数据时,对第二工作表的数据格式校验成功;并继续执行根据第二工作表计算出预计导出时长的步骤250。
当第二工作表中的数据为非聚合数据或者为连续数据时,则对第二工作表中的数据格式校验失败。且当服务器对第一个判断步骤的执行结果为校验失败时,则不再继续执行另一判断步骤。当校验失败时,第二工作表因不满足交叉表导出条件而继续进行交叉表导出操作,服务器根据第二工作表的工作表标识生成格式校验失败通知,并将格式校验失败通知返回给第一终端,使得第一终端获取不满足交叉表导出条件的工作表的相关信息。
在其中一个实施例中,根据所述第二工作表计算出预计导出时长,包括:统计第二工作表的工作表数量;从交叉表导出请求中读取数据格式标识;当数据格式标识为格式保留标识时,获取格式保留标识对应的第一导出时间单元,根据工作表数量和第一导出时间单元计算出预计导出时长;当数据格式标识为格式排除标识时,获取格式排除标识对应的第二导出时间单元,根据工作表数量和第二导出时间单元计算出预计导出时长。
在本实施例中,当根据第二工作表计算出预计导出时长时,服务器统计出第二工作表的工作表数量。用户在第一终端进行交叉表导出操作时,可以对交叉表的数据格式进行选择和设置,第一终端根据用户设置的数据格式生成数据格式标识,并将数据格式标识添加至交叉表导出请求中。
服务器从交叉表导出请求中读取数据格式标识,在本实施例中,数据格式标识分为两种,包括格式保留标识和数据排除标识。在对携带有格式保留标识的交叉表导出请求进行处理时,将工作表导出为交叉表时需要保留原工作表中数据的数据格式,如数据颜色、数据字体等格式,而对携带有格式排除标识的交叉表导出请求进行处理时,则只需保留数据的数值,无需保留数据格式,因此,对格式排除的工作表进行交叉表导出处理时的速度更快一些。
当服务器判断出数据格式标识为格式保留标识时,服务器获取格式保留标识对应的第一导出时间单元,第一导出时间单元为统计出的对一张工作表进行交叉表格式保留导出处理时的平均时长,根据统计出的工作表数量和第一导出时间单元计算出预计导出时长。当服务器判断出数据格式标识为格式排除标识时,服务器获取格式排除标识对应的第二导出时间单元,第二导出时间单元为统计出的对一张工作表进行交叉表格式排除导出处理时的平均时长,根据统计出的工作表数量和第二导出时间单元计算出预计导出时长。
在本实施中,根据交叉表的数据导出格式分类计算出预计导出时长,计算结果更加准确。
在其中一个实施例中,根据预计导出时长和待处理时长将第二工作表分配至各处理线程中之前,还包括:从交叉表导出请求中获取第一任务时间戳,将第二工作表与第一任务时间戳进行关联记录。
根据预计导出时长和待处理时长将第二工作表分配至各处理线程中之后,还包括:获取分配有第二工作表的处理线程中各工作表对应的第二任务时间戳;在处理线程中将各工作表根据第二任务时间戳进行排序。
服务器在将第二工作表进行线程分配之前,从交叉表导出请求中获取第一任务时间戳,第一任务时间中可以为第一终端发出交叉表导出请求时的时间。服务器根据第一任务时间戳对第二工作表进行任务时间记录。当服务器将第二工作表分配至各处理线程之后,服务器获取分配了第二工作表的处理线程中所有工作表对应的第二任务时间戳,第二任务时间戳中包括了各工作表关联记录的多个任务时间戳,服务器将各工作表根据对应的任务时间戳由前到后的顺序进行排序,排序后在再各处理线程中进行工作表的交叉表导出处理,从而优先处理请求在先的导出任务,避免用户等待时间过长,提高用户体验。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在其中一个实施例中,如图4所示,提供了一种交叉表导出装置,包括:导出请求接收模块410、第一查找模块420、匹配模块430、第二查找模块440、时长预估模块450、线程分配模块460和文件生成模块470,其中:
导出请求接收模块410,用于接收第一终端发送的交叉表导出请求,交叉表导出请求携带工作簿标识。
第一查找模块420,用于查找与工作簿标识对应的第一工作表。
匹配模块430,用于将第一工作表与缓存队列中已导出的缓存交叉表进行匹配。
第二查找模块440,用于从缓存队列中提取出与第一工作表成功匹配的第一缓存交叉表,并从第一工作表中查找出未成功匹配缓存交叉表的第二工作表。
时长预估模块450,用于根据第二工作表计算出预计导出时长。
线程分配模块460,用于获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表。
文件生成模块470,用于根据第一缓存交叉表和导出交叉表生成交叉表文件,并将交 叉表文件返回至第一终端。
在其中一个实施例中,交叉表导出装置还包括:
登录账号获取模块,用于从交叉表导出请求中获取登录账号。
管理员账号查找模块,用于查找登录账号对应的导出权限,当导出权限低于预设权限级别时,查找登录账号对应的管理员账号。
审批发送模块,用于根据工作簿标识生成交叉表导出审批请求,将交叉表导出审批请求发送给管理员账号对应的第二终端。
第一查找模块420还可以用于当接收到所述第二终端返回的审批通过通知时,则查找与所述工作簿标识对应的第一工作表。
在其中一个实施例中,交叉表导出装置还包括:
缓存表统计模块,用于统计缓存队列中各缓存交叉表对应的第一组别及提取频率。
缓存表排序模块,用于根据第一组别及提取频率将各缓存交叉表进行排序。
组别查找模块,用于查找导出交叉表对应的第二组别。
队列插入模块,用于根据第二组别将导出交叉表插入排序后的缓存队列中。
在其中一个实施例中,交叉表导出装置还包括:
容量计算模块,用于计算交叉表文件夹的数据容量。
登录账号读取模块,用于当数据容量大于预设容量阈值时,从交叉表导出请求中读取登录账号。
获取连接生成模块,用于根据登录账号对交叉表文件夹进行压缩处理得到交叉表压缩包,根据交叉表压缩包生成交叉表获取链接,将交叉表链接返回。
执行模块,用于当数据容量小于等于预设容量阈值时,则继续执行将交叉表文件返回至第一终端的步骤。
在其中一个实施例中,交叉表导出装置还包括:
格式校验模块,用于对第二工作表中的数据进行数据格式校验,根据数据格式校验结果判断第二工作表是否满足交叉表导出条件。
失败通知模块,用于当第二工作表不满足交叉表导出条件时,根据不满足交叉表导出条件的第二工作表的工作表标识生成格式校验失败通知,并将格式校验失败通知返回给第一终端。
在其中一个实施例中,时长预估模块可以包括:
表数量统计模块,用于统计第二工作表的工作表数量。
格式标识读取模块,用于从交叉表导出请求中读取数据格式标识。
第一时长计算模块,用于当数据格式标识为格式保留标识时,获取格式保留标识对应的第一导出时间单元,根据工作表数量和第一导出时间单元计算出预计导出时长。
第二时长计算模块,用于当数据格式标识为格式排除标识时,获取格式排除标识对应的第二导出时间单元,根据工作表数量和第二导出时间单元计算出预计导出时长。
在其中一个实施例中,交叉表导出装置还包括:
时间戳记录模块,用于从交叉表导出请求中获取第一任务时间戳,将第二工作表与第一任务时间戳进行关联记录。
第二时间戳获取模块,用于获取分配有第二工作表的处理线程中各工作表对应的第二任务时间戳。
线程排序模块,用于在处理线程中将各工作表根据第二任务时间戳进行排序。
关于交叉表导出装置的具体限定可以参见上文中对于交叉表导出方法的限定,在此不再赘述。上述交叉表导出装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在其中一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机可读指令和数据库。该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的数据库用于存储工作簿、工作表等用于交叉表导出的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机可读指令被处理器执行时以实现一种交叉表导出方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
一种计算机设备,包括存储器和一个或多个处理器,存储器中储存有计算机可读指令,计算机可读指令被处理器执行时,使得一个或多个处理器执行以下步骤:接收第一终端发送的交叉表导出请求,交叉表导出请求携带工作簿标识;查找与工作簿标识对应的第一工作表;将第一工作表与缓存队列中已导出的缓存交叉表进行匹配;从缓存队列中提取出与第一工作表成功匹配的第一缓存交叉表,并从第一工作表中查找出未成功匹配缓存交叉表的第二工作表;根据第二工作表计算出预计导出时长;获取各处理线程的待处理时长,根据预计导出时长和待处理时长计算出各处理线程的分配任务时长,在各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得各处理线程生成的与第二工作表对应的导出交叉表;及根据第一缓存交叉表和导出交叉表生成交叉表文件,并将交叉表文件返回至第一终端。
一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:接收第一终端发送的交叉表导出请求,交叉表导出请求携带工作簿标识;查找与工作簿标识对应的第一工作表;将第一工作表与缓存队列中已导出的缓存交叉表进行匹配;从缓存队列中提取出与第一工 作表成功匹配的第一缓存交叉表,并从第一工作表中查找出未成功匹配缓存交叉表的第二工作表;根据第二工作表计算出预计导出时长;获取各处理线程的待处理时长,根据预计导出时长和待处理时长计算出各处理线程的分配任务时长,在各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得各处理线程生成的与第二工作表对应的导出交叉表;及根据第一缓存交叉表和导出交叉表生成交叉表文件,并将交叉表文件返回至第一终端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (20)

  1. 一种交叉表导出方法,包括:
    接收第一终端发送的交叉表导出请求,所述交叉表导出请求携带工作簿标识;
    查找与所述工作簿标识对应的第一工作表;
    将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
    从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
    根据所述第二工作表计算出预计导出时长;
    获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
    根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
  2. 根据权利要求1所述的方法,其特征在于,所述接收第一终端发送的交叉表导出请求之后,还包括:
    从所述交叉表导出请求中获取登录账号;
    查找所述登录账号对应的导出权限,当所述导出权限低于预设权限级别时,查找所述登录账号对应的管理员账号;及
    根据所述工作簿标识生成交叉表导出审批请求,将所述交叉表导出审批请求发送给所述管理员账号对应的第二终端;
    所述查找与所述工作簿标识对应的第一工作表,包括:
    当接收到所述第二终端返回的审批通过通知时,则查找与所述工作簿标识对应的第一工作表。
  3. 根据权利要求1所述的方法,其特征在于,所述获得各处理线程生成的与所述第二工作表对应的导出交叉表之后,还包括:
    统计所述缓存队列中各缓存交叉表对应的第一组别及提取频率;
    根据所述第一组别及所述提取频率将各缓存交叉表进行排序;
    查找所述导出交叉表对应的第二组别;及
    根据所述第二组别将所述导出交叉表插入排序后的缓存队列中。
  4. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    计算所述交叉表文件夹的数据容量;
    当所述数据容量大于预设容量阈值时,从所述交叉表导出请求中读取登录账号;
    根据所述登录账号对所述交叉表文件夹进行压缩处理得到交叉表压缩包,根据所述交叉表压缩包生成交叉表获取链接,将所述交叉表链接返回;及
    当所述数据容量小于等于预设容量阈值时,则继续执行将所述交叉表文件返回至所述 第一终端的步骤。
  5. 根据权利要求1所述的方法,其特征在于,所述从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表之后,还包括:
    对所述第二工作表中的数据进行数据格式校验,根据数据格式校验结果判断所述第二工作表是否满足交叉表导出条件;及
    当所述第二工作表不满足交叉表导出条件时,根据不满足交叉表导出条件的第二工作表的工作表标识生成格式校验失败通知,并将所述格式校验失败通知返回给所述第一终端。
  6. 根据权利要求1所述的方法,其特征在于,所述根据所述第二工作表计算出预计导出时长,包括:
    统计所述第二工作表的工作表数量;
    从所述交叉表导出请求中读取数据格式标识;
    当所述数据格式标识为格式保留标识时,获取所述格式保留标识对应的第一导出时间单元,根据所述工作表数量和所述第一导出时间单元计算出预计导出时长;及
    当所述数据格式标识为格式排除标识时,获取所述格式排除标识对应的第二导出时间单元,根据所述工作表数量和所述第二导出时间单元计算出预计导出时长。
  7. 根据权利要求1所述的方法,其特征在于,所述根据所述预计导出时长和所述待处理时长将所述第二工作表分配至所述各处理线程中之前,还包括:
    从所述交叉表导出请求中获取第一任务时间戳,将所述第二工作表与所述第一任务时间戳进行关联记录;
    所述根据所述预计导出时长和所述待处理时长将所述第二工作表分配至所述各处理线程中之后,还包括:
    获取分配有所述第二工作表的处理线程中各工作表对应的第二任务时间戳;及
    在所述处理线程中将各工作表根据所述第二任务时间戳进行排序。
  8. 一种交叉表导出装置,装置包括:
    导出请求接收模块,用于接收第一终端发送的交叉表导出请求,所述交叉表导出请求携带工作簿标识;
    第一查找模块,用于查找与所述工作簿标识对应的第一工作表;
    匹配模块,用于将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
    第二查找模块,用于从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
    时长预估模块,用于根据所述第二工作表计算出预计导出时长;
    线程分配模块,用于获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配 任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
    文件生成模块,用于根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
  9. 根据权利要求8所述的装置,其特征在于,装置还包括:
    缓存表统计模块,用于统计所述缓存队列中各缓存交叉表对应的第一组别及提取频率;
    缓存表排序模块,用于根据所述第一组别及所述提取频率将各缓存交叉表进行排序;
    组别查找模块,查找所述导出交叉表对应的第二组别;及
    队列插入模块,用于根据第二组别将导出交叉表插入排序后的缓存队列中。
  10. 一种计算机设备,包括存储器及一个或多个处理器,所述存储器中储存有计算机可读指令,所述计算机可读指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行以下步骤:
    接收第一终端发送的交叉表导出请求,所述交叉表导出请求携带工作簿标识;
    查找与所述工作簿标识对应的第一工作表;
    将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
    从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
    根据所述第二工作表计算出预计导出时长;
    获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
    根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
  11. 根据权利要求10所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:
    统计所述缓存队列中各缓存交叉表对应的第一组别及提取频率;
    根据所述第一组别及所述提取频率将各缓存交叉表进行排序;
    查找所述导出交叉表对应的第二组别;及
    根据所述第二组别将所述导出交叉表插入排序后的缓存队列中。
  12. 根据权利要求10所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:
    计算所述交叉表文件夹的数据容量;
    当所述数据容量大于预设容量阈值时,从所述交叉表导出请求中读取登录账号;
    根据所述登录账号对所述交叉表文件夹进行压缩处理得到交叉表压缩包,根据所述交 叉表压缩包生成交叉表获取链接,将所述交叉表链接返回;及
    当所述数据容量小于等于预设容量阈值时,则继续执行将所述交叉表文件返回至所述第一终端的步骤。
  13. 根据权利要求10所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:
    对所述第二工作表中的数据进行数据格式校验,根据数据格式校验结果判断所述第二工作表是否满足交叉表导出条件;及
    当所述第二工作表不满足交叉表导出条件时,根据不满足交叉表导出条件的第二工作表的工作表标识生成格式校验失败通知,并将所述格式校验失败通知返回给所述第一终端。
  14. 根据权利要求10所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时实现根据所述第二工作表计算出预计导出时,还包括:
    统计所述第二工作表的工作表数量;
    从所述交叉表导出请求中读取数据格式标识;
    当所述数据格式标识为格式保留标识时,获取所述格式保留标识对应的第一导出时间单元,根据所述工作表数量和所述第一导出时间单元计算出预计导出时长;及
    当所述数据格式标识为格式排除标识时,获取所述格式排除标识对应的第二导出时间单元,根据所述工作表数量和所述第二导出时间单元计算出预计导出时长。
  15. 根据权利要求10所述的计算机设备,其特征在于,所述处理器执行所述计算机可读指令时还执行以下步骤:
    从所述交叉表导出请求中获取第一任务时间戳,将所述第二工作表与所述第一任务时间戳进行关联记录;
    所述根据所述预计导出时长和所述待处理时长将所述第二工作表分配至所述各处理线程中之后,还包括:
    获取分配有所述第二工作表的处理线程中各工作表对应的第二任务时间戳;及
    在所述处理线程中将各工作表根据所述第二任务时间戳进行排序。
  16. 一个或多个存储有计算机可读指令的非易失性计算机可读存储介质,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行以下步骤:
    接收第一终端发送的交叉表导出请求,所述交叉表导出请求携带工作簿标识;
    查找与所述工作簿标识对应的第一工作表;
    将所述第一工作表与缓存队列中已导出的缓存交叉表进行匹配;
    从所述缓存队列中提取出与所述第一工作表成功匹配的第一缓存交叉表,并从所述第一工作表中查找出未成功匹配所述缓存交叉表的第二工作表;
    根据所述第二工作表计算出预计导出时长;
    获取各处理线程的待处理时长,根据所述预计导出时长和所述待处理时长计算出所述 各处理线程的分配任务时长,在所述各处理线程中分配与对应的分配任务时长匹配的第二工作表,获得所述各处理线程生成的与所述第二工作表对应的导出交叉表;及
    根据所述第一缓存交叉表和所述导出交叉表生成交叉表文件,并将所述交叉表文件返回至所述第一终端。
  17. 根据权利要求16所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:
    统计所述缓存队列中各缓存交叉表对应的第一组别及提取频率;
    根据所述第一组别及所述提取频率将各缓存交叉表进行排序;
    查找所述导出交叉表对应的第二组别;及
    根据所述第二组别将所述导出交叉表插入排序后的缓存队列中。
  18. 根据权利要求16所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:
    计算所述交叉表文件夹的数据容量;
    当所述数据容量大于预设容量阈值时,从所述交叉表导出请求中读取登录账号;
    根据所述登录账号对所述交叉表文件夹进行压缩处理得到交叉表压缩包,根据所述交叉表压缩包生成交叉表获取链接,将所述交叉表链接返回;及
    当所述数据容量小于等于预设容量阈值时,则继续执行将所述交叉表文件返回至所述第一终端的步骤。
  19. 根据权利要求16所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:
    对所述第二工作表中的数据进行数据格式校验,根据数据格式校验结果判断所述第二工作表是否满足交叉表导出条件;及
    当所述第二工作表不满足交叉表导出条件时,根据不满足交叉表导出条件的第二工作表的工作表标识生成格式校验失败通知,并将所述格式校验失败通知返回给所述第一终端。
  20. 根据权利要求16所述的存储介质,其特征在于,所述计算机可读指令被所述处理器执行时还执行以下步骤:
    统计所述第二工作表的工作表数量;
    从所述交叉表导出请求中读取数据格式标识;
    当所述数据格式标识为格式保留标识时,获取所述格式保留标识对应的第一导出时间单元,根据所述工作表数量和所述第一导出时间单元计算出预计导出时长;及
    当所述数据格式标识为格式排除标识时,获取所述格式排除标识对应的第二导出时间单元,根据所述工作表数量和所述第二导出时间单元计算出预计导出时长。
PCT/CN2018/096907 2018-05-21 2018-07-24 交叉表导出方法、装置、计算机设备和存储介质 WO2019223092A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810489984.2 2018-05-21
CN201810489984.2A CN108874894A (zh) 2018-05-21 2018-05-21 交叉表导出方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
WO2019223092A1 true WO2019223092A1 (zh) 2019-11-28

Family

ID=64333327

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/096907 WO2019223092A1 (zh) 2018-05-21 2018-07-24 交叉表导出方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN108874894A (zh)
WO (1) WO2019223092A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109697211B (zh) * 2018-12-07 2020-12-01 用友网络科技股份有限公司 交叉表导出数据的处理方法及系统、计算机可读存储介质
CN110688344A (zh) * 2019-09-24 2020-01-14 捷开通讯(深圳)有限公司 一种文件扫描方法、装置、计算机可读存储介质及终端
CN112685481B (zh) * 2019-10-17 2023-11-03 北京京东振世信息技术有限公司 一种数据处理方法和装置
CN111782658A (zh) * 2020-07-08 2020-10-16 支付宝(杭州)信息技术有限公司 交叉表处理方法、装置、电子设备及存储介质
CN112800824B (zh) * 2020-12-08 2024-02-02 北京方正印捷数码技术有限公司 扫描文件的处理方法、装置、设备及存储介质
CN114691274A (zh) * 2022-03-31 2022-07-01 中国建设银行股份有限公司 数据处理方法、装置、设备、介质及产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070112846A1 (en) * 2005-10-21 2007-05-17 Andreas Huppert File export channel
CN104536827A (zh) * 2015-01-27 2015-04-22 浪潮(北京)电子信息产业有限公司 一种数据调度方法和装置
CN105843951A (zh) * 2016-04-12 2016-08-10 北京小米移动软件有限公司 数据查询方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070112846A1 (en) * 2005-10-21 2007-05-17 Andreas Huppert File export channel
CN104536827A (zh) * 2015-01-27 2015-04-22 浪潮(北京)电子信息产业有限公司 一种数据调度方法和装置
CN105843951A (zh) * 2016-04-12 2016-08-10 北京小米移动软件有限公司 数据查询方法和装置

Also Published As

Publication number Publication date
CN108874894A (zh) 2018-11-23

Similar Documents

Publication Publication Date Title
WO2019223092A1 (zh) 交叉表导出方法、装置、计算机设备和存储介质
CN108667721B (zh) 订阅报表生成方法、装置、计算机设备和存储介质
CN110445637B (zh) 事件监控方法、系统、计算机设备和存储介质
CN108694241B (zh) 一种数据的存储方法及设备
WO2021003985A1 (zh) 区块链数据归档存储方法、装置、计算机设备和存储介质
JP6637620B2 (ja) エージェント割振りの方法、装置、サーバーおよび記録媒体
US10482285B2 (en) Event processing system
CN108304554B (zh) 文件拆分方法、装置、计算机设备和存储介质
WO2020233352A1 (zh) 区块链数据入链方法、装置、计算机设备和存储介质
US11115345B2 (en) Systems and methods for providing self-referencing utilization calculation and dynamic resource allocation based thereon for digital transmissions
CN103559217A (zh) 一种面向异构数据库的海量组播数据入库实现方法
CN103678293B (zh) 一种数据存储方法及装置
US20200301944A1 (en) Method and apparatus for storing off-chain data
TW201800967A (zh) 分布式流式資料處理的方法和裝置
CN110955704A (zh) 一种数据管理方法、装置、设备及存储介质
CN104978324B (zh) 一种数据处理方法和装置
KR102101591B1 (ko) Ai 기반 백업 데이터 관리 시스템 및 그 방법
CN106027595A (zh) 用于cdn节点的访问日志处理方法及系统
US10846338B2 (en) Data processing device, data processing method, and non-transitory computer readable medium
CN105511812A (zh) 一种存储系统大数据优化方法及装置
CN110727727A (zh) 一种数据库的统计方法及装置
CN112165436A (zh) 流量控制方法、装置及系统
CN110659297A (zh) 数据处理方法、装置、计算机设备和存储介质
CN112559526A (zh) 数据表导出方法、装置、计算机设备及存储介质
CN112015553A (zh) 基于机器学习模型的数据处理方法、装置、设备和介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18919411

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18919411

Country of ref document: EP

Kind code of ref document: A1