Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. An information processing apparatus comprising: a storage unit having a plurality of storage areas which respectively holds storage data each including main body data and order data representing an order in which the main body data is processed, according to writing order of each storage data; a receiving unit receiving reception data including main body data and order data; a comparing unit determining whether or not to write the reception data to one of the plurality of storage areas on the basis of a result obtained by comparing the order data included in a last of the storage data held in the one of the plurality of storage areas with the order data included in the reception data received by the receiving unit; and a writing unit writing the reception data to the one of the plurality of storage areas as storage data when the comparing unit determines that the reception data are to be written to the one of the plurality of storage areas.
The invention relates to an information processing apparatus designed to manage and process data in a specific order. The apparatus addresses the challenge of ensuring data is written and processed in the correct sequence, particularly in systems where multiple data entries may be received out of order. The apparatus includes a storage unit with multiple storage areas, each holding storage data that consists of main body data and order data. The order data indicates the sequence in which the main body data should be processed, based on the writing order of each storage data entry. A receiving unit accepts reception data, which also includes main body data and order data. A comparing unit evaluates whether to write the reception data to a storage area by comparing the order data of the last stored entry in that area with the order data of the incoming reception data. If the reception data's order data matches or follows the sequence of the last stored entry, a writing unit adds the reception data to the storage area as new storage data. This ensures data is processed in the correct order, even if received out of sequence. The system is useful in applications requiring strict data sequencing, such as transaction processing or event logging.
2. The information processing apparatus according to claim 1 , wherein when the order data included in the reception data received by the receiving unit indicates a priority lower than or equal to a highest priority of those indicated by order data included in a plurality of storage data from the last of the storage data held in the one of the plurality of storage areas, the comparing unit determines to write the reception data to the one of the plurality of storage areas.
Building upon the data processing apparatus described previously, the comparator unit will write the incoming data to a storage area only if the incoming data's priority, as indicated by its order data, is lower than or equal to the highest priority of the last few entries already in that storage area. Specifically, it compares against a plurality of recent storage data entries' order data, not just the absolute last entry. This ensures higher priority data is not easily overwritten.
3. The information processing apparatus according to claim 1 , wherein when the comparing unit determines not to write the reception data to the one of the plurality of storage areas, the comparing unit determines, on the basis of a result obtained by comparing order data included in the last of the storage data held in another storage area with the order data included in the reception data, whether or not to write the reception data to said another storage area.
Continuing from the data processing apparatus, if the comparator initially decides *not* to write the incoming data to a particular storage area, it doesn't just discard the data. Instead, the comparator then checks another storage area, comparing the incoming data's order data against the last entry's order data in this new area to determine if it should be written there. This implements a tiered storage placement strategy.
4. The information processing apparatus according to claim 1 further comprising a storage area adding unit that adds a new storage area to the storage unit when the comparing unit determines to write the reception data to none of the plurality of storage areas, wherein the writing unit writes the reception data to the new storage area added by the storage area adding unit.
Enhancing the data processing apparatus, if the comparator determines that the incoming data should *not* be written to *any* of the existing storage areas, a new storage area is added to the storage unit. The incoming data is then written to this newly created storage area. This allows for dynamic scaling of storage resources.
5. The information processing apparatus according to claim 1 further comprising a merging unit that reads the storage data from each of the plurality of storage areas by sequential access, and merges the storage data in each of the plurality of storage areas on the basis of the order data included in each of the read storage data.
Expanding the data processing apparatus, a merging unit is introduced. This unit sequentially accesses each storage area and merges the data from all areas based on the order data associated with each data entry. This effectively combines the data from the multiple storage areas into a single, ordered dataset.
6. The information processing apparatus according to claim 5 , wherein the merging unit merges the storage data in each of the plurality of storage areas by alternately repeating, after executing a first holding processing for reading and holding a plurality of storage data equal to or more than a number of pieces of storage data used for comparison and determination of each storage area from each of the plurality of storage areas, an output processing for outputting a storage data having an order data indicating a highest priority among the plurality of held storage data and a second holding processing for reading and holding storage data from a head of a storage area in which the output storage data are held.
Extending the merging unit functionality, the merging process involves repeated steps. First, data is read from each storage area into a holding area. The number of entries held is at least the number of entries used for comparison earlier. Then, the entry with the highest priority (as determined by its order data) is output. Finally, more data is read from the storage area where the outputted entry originated, filling the holding area again. This cycle continues, merging data by priority.
7. The information processing apparatus according to claim 5 further comprising a merge range setting unit that sets at least one of a start value and an end value, the start value indicative of a highest priority of those indicated by the order data included in the storage data in each of the plurality of storage areas to be merged by the merging unit, the end value indicative of a lowest priority of those indicated by the order data included in the storage data in each of the plurality of storage areas to be merged by the merging unit, wherein the merging unit determines, on the basis of the end value or the start value set by the merge range setting unit, a start position or an end position, from which storage data are read from a storage area, and reads storage data from a start position to a end position thus determined.
Further refinement of the merging unit includes a merge range setting component. This component defines the start and end priorities for the merge operation. Based on these priority bounds, the merging unit determines the start and end positions within the storage areas from which data should be read. This enables merging only specific priority ranges of data.
8. The information processing apparatus according to claim 7 , wherein the merging unit determines the end position by using a binary search method for comparing order data included in a storage data at a center of a search range with the end value, and determines the start position by using the binary search method for comparing order data included in the storage data at the center of the search range with a start value.
In the merging process, the determination of the start and end positions is achieved using a binary search method. The order data at the center of a search range is compared with the specified end (or start) value. This efficiently locates the positions to begin and end the data reading for merging.
9. The information processing apparatus according to claim 8 , wherein the plurality of storage data used for the comparison and determination in each of the storage areas compared and determined by the comparing unit is denoted as n (an integer equal to or more than 1), and when a number of pieces of storage data included in the search range of the binary search method becomes equal to or less than 2n−1, the merging unit adopts storage data at a head of the search range as the start position, or adopts storage data at a last of the search range as the end position.
During the binary search within the merging process (for finding start/end positions), if the number of data entries within the current search range becomes small (less than or equal to 2n-1, where 'n' is the number of storage data used for the initial comparison), the merging unit simplifies the process by directly selecting the first or last entry in that range as the start or end position, respectively. This optimizes the search for small ranges.
10. The information processing apparatus according to claim 5 , wherein the writing unit writes main the body data and order data in such a manner that main body data and order data are divided into the plurality of storage areas, and the merging unit merges order data and thereafter sorts main body data in a same order as that of order data to merge storage data.
In the data processing apparatus, data is written to the storage areas by splitting it into main body data and order data. When merging, the order data is merged first, and then the main body data is sorted according to the merged order data. This ensures the main body data is correctly ordered after the merge.
11. The information processing apparatus according to claim 5 , wherein storage data or the reception data include a plurality of types of order data, and the merging unit merges storage data on the basis of each of the plurality of types of order data.
The storage data or reception data can include multiple types of order data (e.g., timestamp and user ID). The merging unit can then merge the storage data based on *each* of these different order data types. This enables flexible merging based on various criteria.
12. The information processing apparatus according to claim 1 further comprising a sort unit that holds the reception data received by the receiving unit, and intermittently sorts the reception data on the basis of the order data included in the held reception data, wherein the comparing unit uses the reception data sorted by the sort unit.
The data processing apparatus now incorporates a sorting unit. This unit holds incoming data and intermittently sorts it based on its order data *before* it's written to a storage area. The comparator then uses this pre-sorted data for its comparison and decision-making.
13. The information processing apparatus according to claim 12 , wherein the sort unit sorts the reception data at a predetermined interval of time.
In the data processing apparatus, the sorting unit sorts the incoming data (which is held temporarily) at specific time intervals. This ensures the data is periodically sorted, without overloading the system with continuous sorting.
14. The information processing apparatus according to claim 12 , wherein when a number of the held reception data reaches a predetermined number of reception data, the sort unit sorts the held reception data.
In the data processing apparatus, the sorting unit sorts the held incoming data when the number of held entries reaches a predefined limit. This allows for batch sorting, improving efficiency by amortizing the sorting cost over multiple data entries.
15. The information processing apparatus according to claim 1 further comprising an exception determining unit that determines whether the reception data received by the receiving unit meet an predetermined exception criterion, wherein the comparing unit performs comparison and determination by using reception data that are determined not to meet the predetermined exception criterion by the exception determining unit.
An exception determining unit is added to the data processing apparatus. This unit checks if the incoming data meets predefined exception criteria (e.g., invalid data format). The comparator only processes data that passes this exception check; data that triggers an exception is excluded from the comparison and writing process.
16. The information processing apparatus according to claim 1 further comprising an integrating unit that reads storage data held in a plurality of small storage areas in the plurality of storage areas when there are the plurality of small storage area holding storage data whose number is equal to or less than a predetermined number, sorts the read storage data in accordance with the order data included in the read storage data, and writes the read storage data to another storage area.
An integrating unit monitors the storage areas. If multiple areas contain only a few data entries (less than a threshold), the integrating unit reads the data from these smaller areas, sorts it based on the order data, and writes it to another (likely larger or designated) storage area. This consolidates small data fragments.
17. An information processing method comprising: respectively receiving a plurality of storage data each including main body data and order data representing an order in which the main body data is processed; determining whether or not to write reception data to one of a plurality of storage areas, the plurality of storage areas respectively holding the plurality of storage data including the main body data and the order data according to writing order of the storage data, on the basis of a result obtained by comparing the order data included in a last of the storage data held in the one of the plurality of storage areas with the order data included in the reception data; and writing the reception data to the one of the plurality of storage areas as storage data when the reception data are determined to be written to the one of the plurality of storage areas.
An information processing method involves receiving data split into a main body and order data representing processing sequence. It determines if incoming data should be written to one of multiple storage areas based on comparing the incoming data's order data to the last entry's order data in a target storage area. If the comparison is favorable, the data is written to that storage area.
18. The information processing method according to claim 17 , wherein said determining whether or not to write the reception data, when the order data included in the reception data indicates a priority lower than or equal to a highest priority of those indicated by order data included in a plurality of storage data from the last of the storage data held in the one of the plurality of storage areas, determines to write the reception data to the one of the plurality of storage areas.
In the data processing method, determining whether to write the data includes a step where incoming data is written to the storage area only if its priority (indicated by its order data) is lower than or equal to the highest priority of the last few entries already in that storage area, specifically compared against a plurality of the most recent entries' order data.
19. The information processing method according to claim 17 , wherein said determining whether or not to write the reception data, when determining not to write the reception data to the one of the plurality of storage areas, determines, on the basis of a result obtained by comparing the order data included in the last of storage data held in another storage area with the order data included in the reception data, whether or not to write the reception data to said another storage area.
In the data processing method, if a storage area is deemed unsuitable, the method proceeds by evaluating another storage area. The process involves comparing the incoming data's order data with the last entry's order data in this second area to determine if the data should be written there.
20. The information processing method according to claim 17 further comprising adding a new storage area when determining to write the reception data to none of the plurality of storage areas, wherein said writing writes the reception data to the new storage area.
The data processing method adds a new storage area if the incoming data cannot be written to any existing storage area based on the comparison. The data is then written to this newly created storage area.
21. The information processing method according to claim 17 further comprising reading the storage data from each of the plurality of storage areas by sequential access and merging the storage data in each of the plurality of storage areas on the basis of the order data included in each of the read storage data.
The data processing method involves sequentially reading data from each storage area and merging the data from all areas based on the order data associated with each entry. This effectively combines the data into a single, ordered dataset.
22. The information processing method according to claim 21 , wherein said merging storage data merges storage data by alternately repeating, after executing a first holding step of reading and holding a number of pieces of storage data equal to or more than a number of pieces of storage data used for the comparison and determination of each storage area from each of the plurality of storage areas, an outputting process of outputting storage data having order data indicating a highest priority among the number of pieces of held storage data and a second holding process of reading and holding storage data from a head of storage area in which the output storage data are held.
The merging process in the data processing method includes repeated steps: data is read from each storage area into a holding area; the entry with the highest priority is output; and more data is read from the originating storage area.
23. The information processing method according to claim 21 further comprising setting at least one of a start value and an end value, the start value indicative of a highest priority of those indicated by order data included in the storage data to be merged, the end value indicative of a lowest priority of those indicated by order data included in the storage data to be merged, wherein said merging storage data determines, on the basis of the end value or the start value, a start position or an end position, from which storage data is read from storage area, and reads storage data from the start position to the end position thus determined.
The data processing method defines the start and end priorities for the merge operation. Based on these priority bounds, the method determines the start and end positions within the storage areas from which data should be read, enabling the merging of only specific priority ranges.
24. The information processing method according to claim 23 , wherein-said merging the storage data determines the end position by using a binary search method for comparing order data included in storage data at a center of a search range with the end value, and determines the start position by using the binary search method for comparing the order data included in the storage data at the center of the search range with the start value.
The data processing method uses a binary search to determine the start and end positions, where the order data at the center of a search range is compared with the specified end (or start) value to efficiently locate positions for data reading.
25. The information processing method according to claim 24 , wherein a number pieces of storage data used for the comparison and determination in each of the storage areas compared and determined in the comparing step is denoted as n (an integer equal to or more than 1), and when a number of pieces of storage data included in the search range of the binary search method becomes equal to or less than 2n−1, the merge step adopts storage data at a head of the search range as the start position, or adopts storage data at a last of the search range as the end position.
In the binary search of the data processing method, if the number of entries within the search range becomes small (less than or equal to 2n-1), the method selects the first or last entry in that range as the start or end position, optimizing the search for small ranges.
26. The information processing method according to claim 21 , wherein-said writing writes main body data and order data in such a manner that main body data and order data are divided into the plurality of storage areas, and said merging storage data merges order data and thereafter sorts main body data in a same order as that of order data to merge storage data.
The data processing method writes data to storage areas by splitting into main body and order data. During merging, order data is merged first, then main body data is sorted according to the merged order data, ensuring correct ordering.
27. The information processing method according to claim 21 , wherein storage data or the reception data include a plurality of types of order data, and said merging storage data merges storage data on the basis of each of the plurality of types of order data.
The data processing method where either storage or reception data can include multiple types of order data; the data merging step merges storage data based on each of these different order data types, enabling flexible merging based on various criteria.
28. The information processing method according to claim 17 further comprising holding the reception data received by the receiving step; and intermittently sorting the reception data on the basis of the order data included in the held reception data, wherein said determining whether or not to write the reception data uses the sorted reception data.
The data processing method holds incoming data temporarily, and sorts it intermittently, based on its order data *before* writing. The write decision uses pre-sorted data.
29. The information processing method according to claim 28 , wherein said intermittently sorting the reception data sorts the reception data at a predetermined interval of time.
The data processing method has a step that sorts the held incoming data at specific time intervals, ensuring periodic sorting without overloading the system with continuous sorting.
30. The information processing method according to claim 28 , wherein when a number of the held reception data reaches a predetermined number of reception data, said intermittently-sorting the reception data sorts the number of held reception data.
The data processing method sorts the held incoming data when the number of held entries reaches a limit, enabling batch sorting and improving efficiency.
31. The information processing method according to claim 17 further comprising determining whether the reception data meet an predetermined exception criterion, wherein said determining whether or not to write the reception data performs comparison and determination by using the reception data that are determined not to meet the predetermined exception criterion.
The data processing method determines if incoming data meets predefined exception criteria, only processing data that passes this check, and excluding data that triggers an exception from comparison and writing.
32. The information processing method according to claim 17 further comprising reading storage data held in a plurality of small storage areas in the plurality of storage areas when there are the plurality of small storage areas holding storage data whose number is equal to or less than a predetermined number; sorting the read storage data in accordance with the order data included in the read storage data; and writing the read storage data to another storage area.
The data processing method integrates small storage areas by reading data from areas with few entries, sorts it based on order data, then writes it to another area, consolidating fragmented data.
33. A non-transitory computer-readable storage medium storing a program for causing a computer to execute: a receiving processing that respectively receives a plurality of storage data each including main body data and order data representing an order in which main body data is processed; a comparing processing that determines whether or not to write reception data to one of a plurality of storage areas, the plurality of storage areas respectively holding storage data including main body data and order data according to a writing order of the plurality of storage data, on the basis of a result obtained by comparing order data included in a last of the storage data held in the one of the plurality of storage areas with order data included in the reception data received by the receiving processing; and a writing processing that writes the reception data to the one of the plurality of storage areas as storage data when the reception data are determined to be written to the one of the plurality of storage areas in the comparing processing.
A computer-readable medium stores instructions for receiving data split into a main body and order data. It compares incoming data's order data to the last entry's in a target storage area. If the comparison is favorable, the data is written to that area.
Unknown
August 26, 2014
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.