Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. US20160154866 - Efficient data manipulation support

Note: Texte fondé sur des processus automatiques de reconnaissance optique de caractères. Seule la version PDF a une valeur juridique

[ EN ]

Claims

1. A method of updating a data set stored in a data store in response to a data query specified in a data manipulation language, the method comprising:
employing at least one processor configured to execute computer-executable instructions stored in a memory to perform the following acts:
identifying, in the data query, a data manipulation statement specifying a data manipulation of a specified portion of a record of the data set, and specifying, in the data manipulation language, that the data manipulation statement is to be applied in-place to the data set stored in the data store;
modifying the specified portion of the record in the data store by:
identifying a location of the specified portion of the record in the data store; and
overwriting the location of the specified portion of the record with the data manipulation while refraining from rewriting portions of the record that do not include the specified portion of the record;
comparing a reference to a subset of the data set stored in the data store with one or more references recorded in a container; and
initiating reading of the subset of the data set in the data store only if the subset of the data set is not identified in the container.
2. The method of claim 1 further comprises recording the data manipulation in the container associated with an external table that defines structure for and identifies the location of the specified portion of the record in the data store.
3. The method of claim 1 further comprises:
receiving data from the data store;
comparing the data with one or more delete data manipulations in the container; and
discarding the data if it is subject to one of the one or more delete manipulations.
4. The method of claim 1 further comprises saving data to be added to the data store in accordance with an insert data manipulation in the container.
5. The method of claim 4 further comprises reading the data saved in the container and initiating appending the data to the data set in data store.
6. The method of claim 4 further comprises:
reading the data saved in the container; and
adding the data saved in the container to received data.
7. The method of claim 1 further comprises initiating application of the data manipulation on the data store after the container reaches a size that meets a predetermined threshold.
8. The method of claim 1 further comprises importing the data set from the data store, modifying the imported data set with the data manipulation, and exporting the imported data set to the data store.
9. The method of claim 1, wherein:
the specified portion of the data set stored in the data store is not modifiable when the data manipulation statement is identified in the data query; and
modifying the specified portion of the data set in-place further comprises:
storing the data manipulation in a change log;
determining, at a second time after the identifying, that the data set is modifiable; and
responsive to the determining, applying the change log to the specified portion of the data set in-place in the data store while refraining from modifying other portions of the data set that are not included in the specified portion.
10. A system that updates a data set stored in a data store stored by a data storage system in response to a data query specified in a data manipulation language, the system comprising:
a processor coupled to a memory, the processor configured to execute the following computer-executable components stored in the memory:
a first component configured to identify, in the data query, a data manipulation statement specifying a data manipulation of a specified portion of a record of the data set, and specifying, in the data manipulation language, that the data manipulation statement is to be applied in-place to the data set stored in the data store;
a second component configured to modify the specified portion of the record in the data store by:
identifying a location of the specified portion of the record in the data store; and
overwriting the location of the specified portion of the record with the data manipulation while refraining from rewriting portions of the record that do not include the specified portion of the record; and
a third component configured to record, in a change log, the data manipulation statement that targets the data store of the data storage system that does not support the in-place manipulation.
11. The system of claim 10 further comprises a fourth component configured to discard data stored in the data store during a read of the data store if the data is referenced in the change log.
12. The system of claim 10 further comprises a fourth component configured to remove data referenced in the change log from data read from the data store.
13. The system of claim 10 further comprises a fourth component configured to save data to be added to the data store to a second change log.
14. The system of claim 13 further comprises a fourth component configured to acquire the data from the second change log and initiate an operation that appends the data to the data set in the data store.
15. The system of claim 10 further comprises a fourth component configured to initiate application of changes to the data store, by writing a new data set including the changes to the data store, after the change log reaches a threshold size.
16. The system of claim 15, wherein the threshold size represents a point at which a cost to record and apply manipulations exceeds a cost to apply the manipulations to the data store.
17. A computer-readable storage medium having instructions stored thereon that enable at least one processor to perform a method, upon execution of the instructions, of updating a data set stored in a data store stored by a data management system in response to a data query specified in a data manipulation language, the method comprising:
identifying, in the data query, a data manipulation statement specifying a data manipulation of a specified portion of a record of the data set, and specifying, in the data manipulation language, that the data manipulation statement is to be applied in-place to the data set stored in the data store;
modifying the specified portion of the record in the data store by:
identifying a location of the specified portion of the record in the data store; and
overwriting the location of the specified portion of the record with the data manipulation while refraining from rewriting portions of the record that do not include the specified portion of the record; and
recording the modifying of the specified portion of the data set in a change log comprising one or more unique identifiers that identify data subject to the data manipulation applied in-place to the data store of the data management system as specified by the data manipulation language statement, wherein the data management system does not support in-place manipulation.
18. The computer-readable storage medium of claim 17, the method further comprises discarding data stored in the data store during reading of the data if the data is identified in the change log.
19. The computer-readable storage medium of claim 17, the method further comprises acquiring data from the data store and subsequently removing data identified in the change log.
20. A system that updates a data set stored in a data store stored by a data storage system in response to a data query specified in a data manipulation language, the system comprising:
means for identifying, in the data query, a data manipulation statement specifying a data manipulation of a specified portion of a record of the data set, and specifying, in the data manipulation language, that the data manipulation statement is to be applied in-place to the data set stored in the data store;
means for recording, in a change log, the data manipulation directed to the data store associated with the data storage system that does not support the in-place manipulation; and
means for modifying the record by:
identifying a location of the specified portion of the record in the data store; and
overwriting the location of the specified portion of the record with the data manipulation while refraining from rewriting portions of the record that do not include the specified portion of the record.
21. The system of claim 20, further comprises means for disregarding data designated for deletion in the change log during a read from the data storage system.
22. The system of claim 20, further comprises means for disregarding data designated for deletion in the change log after a read from the data storage system.
23. The system of claim 20, further comprises means for adding data designated for insertion in the change log to the data read from the data storage system.
24. The system of claim 20, further comprises means for exporting a copy of the data read with manipulations applied to the data store.
25. The system of claim 20 further comprises means for triggering the means for modifying the record when a cost to record and apply manipulations exceeds a cost to effect the manipulations on the data store.