EP2272012A1 - Écrasement d'éléments de données enregistrés sans perte de données - Google Patents

Écrasement d'éléments de données enregistrés sans perte de données

Info

Publication number
EP2272012A1
EP2272012A1 EP09737729A EP09737729A EP2272012A1 EP 2272012 A1 EP2272012 A1 EP 2272012A1 EP 09737729 A EP09737729 A EP 09737729A EP 09737729 A EP09737729 A EP 09737729A EP 2272012 A1 EP2272012 A1 EP 2272012A1
Authority
EP
European Patent Office
Prior art keywords
data
data element
assigned
validity
elements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
EP09737729A
Other languages
German (de)
English (en)
Inventor
Norbert Peters
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hansa-Datenservice Gowarsch & Co
Original Assignee
Hansa-Datenservice Gowarsch & Co
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 Hansa-Datenservice Gowarsch & Co filed Critical Hansa-Datenservice Gowarsch & Co
Publication of EP2272012A1 publication Critical patent/EP2272012A1/fr
Ceased legal-status Critical Current

Links

Classifications

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

Definitions

  • the present invention relates to a device for storing data elements of specific attributes and for accessing stored data elements, a method for storing data elements of specific attributes and for accessing stored data elements, a computer program product for controlling the device and a storage medium on which the computer program product is stored.
  • Memory devices for rewritable storage of data elements has almost every electronic data processing system.
  • both commercial stationary single-user computers such as personal computers and mobile computers such as so-called laptops or notebooks have such storage devices in the form of a hard disk on which data elements can be overwritten.
  • the bandwidth of the storage devices extends all the way to databases that are specifically set up for the purpose of effectively storing and managing data items with respect to the prevention of data redundancy, and that may be implemented on both common and large-scale computers.
  • the data elements stored in the storage devices are usually distinguished according to specific attributes.
  • WO 2004/102420 A1 attempts to circumvent these problems by first optically displaying data elements to be copied in the storage device disclosed there, which then manually decides whether a relevant data element is copied to the storage device or not. Ultimately, this solution is time-consuming and labor-intensive for large volumes of data items to be copied. In addition, the problem of erroneous overwriting is not solved, so that the proposed solution ultimately remains unsatisfactory.
  • This object is achieved by a device having the features of claim 1, a system having the features of claim 37, a method having the features of claim 40, a computer program product according to claim 52 and a storage medium according to claim 53.
  • the first data element in the case of overwriting of the first data element of a given attribute by the second data element of the predetermined attribute, the first data element is not deleted as in known devices, but instead the storage of the first data element is retained. Once a data element has been stored, it will not be deleted at any time even with any number of subsequent overwrites of data elements of the given attribute. Any loss of data is therefore excluded. Even in the case of an erroneous overwriting, the respective overwritten data element remains physically existent and is not lost. The first data element thus overwritten can also be accessed at any time after it has been overwritten in order, for example, to restore overridden user settings or other data.
  • a reference time is specified which is older relative to the second validity period and relatively younger than the first validity time in order to read out the first data element.
  • a reference time is specified, which is younger than the second validity time.
  • any reference times can be specified, wherein the reference time may be younger or older than all validity times of all stored data elements of the given attribute. In the former case, the data element with the most recently assigned validity time is read out; in the latter case, however, no data element is read out since there is no data element with a validity time older than the reference time.
  • the data elements can be assigned arbitrary validity times.
  • the first validity time may correspond to a time which is arbitrarily far in the past relative to the time of storage of the first data item or which is arbitrarily far in the future relative to the time of storing the first data item.
  • the second validity time is not limited to such a time that is in the past or corresponds to the time at which the second data item is stored; rather, it may be arbitrarily far in the future analogously relative to the time of storing the second data item.
  • a data item having an assigned default time that is relative to the time of access in the future will not be read either.
  • the current time of access is always specified as the reference time
  • such a data element is only read out if the access takes place at a time after the validity time assigned to the data element.
  • the second data element is assigned a future time relative to the time of storage of the second data element, for example, the second data element is simply read out after exceeding the second validity time when accessing data elements of the predetermined attribute without further action instead of the first data element.
  • the subject matter of the present invention proves to be considerably more flexible in the overwriting of stored data elements than known methods and devices for data storage since it prevents future overwriting. without the need to provide for it any special equipment designed to measure the time and to execute the overwriting at a given time.
  • the method according to the invention may in particular be a computer-implemented method, the computer program product providing for automated control of the device or for automated execution of the method.
  • the data element can in general be any logically grouped information unit.
  • the data element may be any string, such as a word, a name or a number.
  • the data element may, for example, be information for displaying an image by means of a corresponding computer program or an arbitrary type of address of a data element or other object.
  • files containing data as such can also be data elements. Which type the data element is, is determined by its attribute or attributes. Each of the various attributes can specify data elements that are a name, a number, information for displaying a picture, or an address. If the data item is a file, then its file name or file type may represent an attribute of the data item.
  • the present invention does not physically erase overwritten data elements, the data volume stored in the device increases more than prior art devices that physically erase data elements when overwriting, but this fact is negligible in view of the storage capacities of today's modern memory devices more than outweighed the advantage of any accessibility to overwritten data items and the traceability of overrides.
  • the device preferably assigns a respective validity time to the new data element that is younger than the validity times of all data elements of that attribute, and stores the new data element with the validity time assigned to it while retaining the storage all data elements of this attribute.
  • the second data element is stored while retaining the storage of all the stored data elements of all the attributes, in order to avoid also the physical deletion of stored data elements of other attributes and to preclude a concomitant loss of data.
  • the device in the absence of a reference time reference, upon accessing data elements of the predetermined attribute, the device is set up to automatically specify a reference time corresponding to the particular time at which access occurs to ensure that upon access, always retrieving a data item having an assigned validity time that is older than the current time that the access is made and the most recent validity time of all data items having validity times assigned that are older than the current time of access is assigned.
  • At least one data element or each data element is assigned a respective time of storage of the relevant data element as validity time.
  • the validity period can, for example, be accurate to the second, to the minute, to the hour or to the exact day.
  • a data element is assigned, in addition to the current date to the seconds, exactly the time as validity time at which the data element was stored.
  • minute-accurate or hourly validity times the data element is assigned the time as validity time in addition to the current date of the minute or hour the data element was saved.
  • day-specific validity times usually suffice, in which the data element is assigned the date of the day as the validity period at which the data element was stored.
  • At least one data element or each data element is assigned a respectively unique identifier and / or a globally unique identifier and / or a GUID (Globally Unique Identifier).
  • the unique identifier may be an identifier that is unique within the device or within any given system to which the device belongs.
  • this can be an identification number, an identification code or a uniform source indicator or URL (Uniform Resource Locator).
  • Globally unique identifiers are known from distributed computer systems. These are identifiers with such low probability of a coincidence of the identifiers that a single identifier is very likely to occur only once in the entire world and is therefore designated as unique globally or globally.
  • An example of a globally unique identifier is Globally Unique Identifier or GUID.
  • respective unique identifiers and respective validity times also be summarized to a leading identifier.
  • globally unique identifiers to generate individual such identifiers involving time stamps.
  • the unique identifier contained in the lead identifier is uniquely addressed. Because, in the case of a routing identifier, only one size needs to be provided for addressing and selecting data items to be read instead of two as for separate use of identifier and validity time, the necessary administrative overhead is reduced.
  • the device is set up to replace at least one given data element with an assigned validity time by a third data element by deleting the predetermined data element, storing the third data element and assigning to the third data element the validity time previously assigned to the given data element.
  • a replacement erroneously stored data elements can be corrected.
  • a data item that is a character string designating a word or a name may have a typing or typing error, or the data item to be stored as such has been mistakenly mistaken for another piece of data, rather than the correct data item Assignment of the validity period provided for the correct data element has been stored. Then, the erroneous or incorrect data item can be easily replaced by the correct data item in the manner described.
  • the validity period assigned to the given data element is assigned a protocol in which, upon replacement of the predetermined data element by the third data element, the replacement is noted and the predetermined data element is copied into the protocol.
  • the "pro- protocol may in particular have a character-coded format or an XML format. With such a protocol, all replacements made the given data element can be traced comprehensible. A log provides a quick and convenient overview of the historical history of completed replacements of data items that have been assigned the applicable validity period.
  • the protocol is advantageously used in order to avoid data losses in the case of replacements of stored data elements, since with a replacement the given or replaced data element in question is actually deleted.
  • the default data item is copied to the log, it is deleted after the out-of-protocol replacement, but no loss of data occurs because there is a copy of the deleted data item in the log.
  • respective times can also be noted in the protocol for which a replacement of the given data element took place.
  • a person can be noted, which has caused the override.
  • a log can be associated with a validity time immediately with storage of the data item to which the validity time is assigned.
  • a protocol can also be generated only when the replacement takes place and assigned to the validity period of the given data element.
  • At least one data element and the validity time assigned to it or several data elements and the validity times assigned to them form at least one data object.
  • a data element is assigned a unique identifier, a globally unique identifier or a GUID, or if a protocol is provided for the attribute of the data element, then these can advantageously also be included in the data object.
  • data objects can be used to group and uniformly manage data items with attributes that have a logical relationship. For example, a procedure may repeatedly access data items of a first attribute as well as data items of a second attribute. In such a case, it is advantageous to combine the data elements of the first attribute and the data elements of the second attribute into a data object and to manage them uniformly as a data object.
  • a data object as such can in turn be assigned a unique identifier or a globally unique identifier or a GUID for its addressing, so that data objects can be loaded between applications or modules without overwriting each other.
  • at least one of the data elements of at least one data object can be a unique identifier or a globally unique identifier or a GUID of another data element or another data object with which a logical relation of the data object exists, such that the identifier of the other Data element or data object in the data object as an ordinary data element.
  • an indicator may be a simple binary variable used to identify particular states.
  • An indicator can also be set, deleted or read out. For example, it may be provided to delete or physically delete a data element if at least one of the indicators assigned to it adopts a predetermined value. On the other hand, if the indicator takes a certain value, instead of actually deleting the item in question, it may be treated as deleted even though actual deletion thereof does not take place.
  • access rights can be determined by means of indicators. For example, an indicator may determine whether or not a data item or object is publicly accessible. Furthermore, indicators may indicate the membership of the data element or data object to the device or a subunit thereof. An indicator can also be one which indicates that the data element or data object in question is currently being used by an application.
  • the indicator of at least one data element or data object is a validity end time, the device, after exceeding the validity end time, refraining from reading out this data element or data object.
  • This makes it possible to specify a type of validity period for each data object or data element of a given attribute, during which it is possible to read out the data object or data element when accessing data objects or data elements of this attribute, wherein after expiry of the validity period or after the validation end time is no longer possible.
  • time-critical working or processing of data elements or data objects can be regulated with such an indicator.
  • the indicator also be a period. Accordingly, similar to the validity period of a data element, at least one indicator of at least one data object may be a validity start time indicating when the relevant data object has been released for working or processing.
  • the device has at least one inheritable pattern data object with predetermined data elements, wherein the device is set up to provide a specific indicator for a data object generated by inheritance of the pattern data object via which a reference to the pattern data object can be established for the data object thus generated.
  • a pattern data object may be provided for data objects that are repeatedly generated in the same form. Then instead of completely regenerating a new data object each time, the corresponding pattern data object can be simply inherited, whereby the data elements contained in the inherited pattern data object are overwritten by corresponding data elements of the data object to be generated, thereby obtaining a data object with the desired data elements.
  • a specific indicator is provided for the data objects generated by the inheritance of the pattern data object, via which a reference to the respective pattern data object, from which a data object has arisen, can be produced at any time for the data objects thus generated. Changes in the pattern object can then be transmitted via this indicator directly to the data objects resulting from the pattern object.
  • the device preferably comprises at least one non-volatile memory for storing elemen- and / or data objects and at least one main memory and is adapted to read stored data elements and / or data objects from the non-volatile memory and write to the main memory and in the case of Working memory replacing the read out Data element and / or a data element comprised of the read data object by a fourth data element to overwrite the associated stored in the non-volatile memory data element in the non-volatile memory by the fourth data element.
  • the read data object and / or data element is preferably converted into a character-encoded format or an XML format or binary serialized and the data object and / or data element thus converted or written to the main memory in order to process or read certain application programs of the data object and / or data element.
  • the device may also be a database.
  • a database is designed specifically for storing data while avoiding data redundancy.
  • the database may be one of the commonly used relational databases.
  • the device may also be a data processing device for processing data by one or more data processing processes in which at least one data processing process is implemented by at least two data elements, wherein respective identifications associated with the data elements are specific attributes of the data elements, each Data element comprises a respective sequence of calculation instructions and wherein the data processing device is arranged for processing data by the data processing process under specification of an identification by identifying based on the identification of one of the data elements, the calculation instructions of the sequence of calculation instructions included in the identified data element. and process the data by executing the costing statements.
  • a further increase in speed as well as a further reduction in the cost of changes to data processing processes results from the fact that, especially with elongated and confusing source codes, calculation instructions to be changed need no longer be cumbersomely identified. Rather, the individual data elements allow targeted access to a data element with the sequence of calculation instructions to be changed.
  • Respective sequences of calculation instructions of at least two data elements can be respective sub-processes of the same data processing process or of two different data processing processes that are to be successively executed to execute an overall process. For example, as an outcome of executing a first sequence of calculation instructions of a first data element, an identification may be output, wherein the identification matches the identification of a second data element comprising a second sequence of calculation instructions to be subsequently executed to subsequently identify that second data element and to execute the second sequence of calculation instructions.
  • data can be generated when executing the first sequence of calculation instructions the second sequence of calculation instructions are at least partially processed. In this way, the provision of corresponding data elements, the successive execution of any number of sequences of calculation instructions is possible.
  • conditional branches and loops as frequently occur in conventional computer programs, can be replaced by such successively executable sequences of calculation instructions.
  • conditional branches and loops can be replaced by successively executable sequences of calculation instructions.
  • the occurrence of conditional branches and loops is also possible within the sequence of calculation instructions of a single data element.
  • conditional branches and loops are preferably replaced by successively executable sequences of calculation instructions of different data elements, since this considerably increases the computing speed of the data processing device.
  • sequences of calculation instructions of at least two data elements of the same data processing process or of two different data processing processes may also be alternative processes, wherein when the data processing process or both data processing processes are executed exactly one of these sequences of calculation instructions is executable.
  • Such a data processing process can be adapted to different processing modes, for example, whereby a corresponding data element is identified depending on the processing mode.
  • the calculation instructions of at least one sequence of calculation instructions in a character-coded format are preferably present in the relevant data element. If the calculation instructions are in a character-coded format, there is no need to compile the source code. Furthermore, this allows a complete separation of basic technical calculation instructions, which are available as binary machine instructions, and calculation instructions, which concern the logical processing of the data and are available as parameters in the character-coded format. Previously required programming activities in the preparation and processing of data processing is omitted in such a separation.
  • the calculation instructions are particularly preferably in XML format, since this is a common and widespread format. Files in XML format are readable by most interpreters and thus platform-independent.
  • At least two data elements of two different data processing processes are assigned the same identification.
  • at least one predefined data processing category may be provided, wherein at least one of the data elements is assigned to at least one data processing category via its associated identification, and the data processing device is further configured to process data under specification of a data processing category, the data processing device processing of data by means of a data processing process or a plurality of different data processing processes only identifies a respective data element if the data element is assigned to the predetermined data processing category.
  • a hierarchy in the form of a branched tree structure can exist between the data processing categories, so that, for example, one or more data processing categories assigned to one data processing category are assigned to one data processing category, and each of these lower-set data processing categories in turn has one or more data processing categories even deeper in the hierarchy are assigned, and so on.
  • data processing categories the data to be processed by the data processing processes can also be categorized and ensure that corresponding data are processed according to the given data processing category.
  • a data processing device is particularly preferred in which at least a part of the data to be processed is assigned to at least one data processing category and the data processing device is set up to process data specifying a data processing category by processing from the data assigned to a data processing category at least part of the data assigned to the given data processing category. Furthermore, it is advantageous to provide a search function which, when specifying a data processing category, indicates all data elements and / or data assigned to this data processing category to allow quick access to data elements and data of a particular data processing category.
  • a data processing device can be set up such that it assigns at least one data element or each data element a respective unique identifier and / or a globally unique identifier and / or a GUID.
  • unique identifiers unambiguous addressing and identification of a data element within the data processing device, within a given system comprising the data processing device, or even globally, if globally unique identifiers are used, is possible.
  • data elements of various devices can be mixed with each other without data elements being deleted.
  • the device may be implemented in any computer or computer system.
  • a system may include at least two or more interconnected computers. These can be linked by a bi-directional or multidirectional network or via the Internet.
  • the system comprises at least one first device according to the invention, which is a database, and / or at least one second device according to the invention, which is a data processing device.
  • Figure 1 shows an apparatus according to the present invention
  • Figure 2 is a flow chart of a method according to the present invention.
  • FIG. 3b data elements after overwriting the data element of FIG. 3a);
  • FIG. 3c data elements after a further overwriting of a data element of FIG. 3b);
  • FIG. 3d data elements after a replacement of one of the data elements of FIG. 3c);
  • FIG. 4 shows a data element with indicators
  • FIG. 5 a data object
  • FIG. 6 shows the data object of FIG. 5 after overwriting a data element
  • FIG. 7 shows a system with two devices according to the present invention
  • FIG. 8 shows a data processing device
  • FIG. 9 shows a tree structure of hierarchical data processing categories
  • FIG. 10a shows a data element in a data processing device
  • FIG. 10b data elements after overwriting the data element of FIG. 10a);
  • FIG. 10c data elements after a further overwriting of a data element of FIG. 10b
  • FIG. 10D data elements after a replacement of one of the data elements of FIG. 10c).
  • FIG. 1 shows a device 1 according to the present invention.
  • the device 1 comprises a permanent memory 2 and a working memory 3. Both the device 1 as such and its permanent memory 2 are each assigned a GUID, namely the device 1 the GUID 4 and the permanent memory 3 the GUID 5.
  • the non-volatile memory 2 are Data elements 6 and 7 data objects stored, wherein for the sake of clarity, only a data element 6 and a data object 7 are shown.
  • Each data element 6 is assigned a GUID 8 and a validity period 9, while each data object 7 is assigned a GUID 10 and a validity start time 11.
  • a data element 12 in XML format is shown by dashed lines, which has been generated by reading a data element 6 from the non-volatile memory 2 and converting it into an XML format. The reading out of the data element 6 has no influence on the storage of the data element 6 in the non-volatile memory 2.
  • a data object 13 is represented in the working memory 3 in XML format by dashed lines, by reading a data object 7 has been generated from the non-volatile memory 2 and converting into an XML format, wherein here too the reading of the data object 7 has no influence on the memory state of the data object 7 in the non-volatile memory 2.
  • FIG. 2 shows a flow chart of the method.
  • the data element 6 shown in FIG. 3 a) is stored in the non-volatile memory 2 in step S 1.
  • the data item 6 is a character string having the characters "Maier" designating a last name, and because the data item 6 designates a last name, it is a data item of the attribute "Last Name”.
  • the data element 6 is assigned the validity time 9 and the GUID 8 when it is stored in step S1.
  • the validity time 9 in the present case has the value "24.09.2007" and corresponds to the day on which the data element 6 is stored in the non-volatile memory 2.
  • the data element 6 of the attribute "last name” is now to be overwritten by a data element 14 of the same attribute "last name", which is a character string with the characters "Müller.”
  • the data element 14 is stored in the non-volatile memory 2 in step S2. where the validity time 15 is assigned to it, which corresponds to the time of storage of the data element 14 and in this case has the value "13.12.2007”.
  • the validity period 15 is consequently younger than the validity time 9.
  • the data element 14 is assigned its own GUID 16 with the value "7778.”
  • the data element 6 remains untouched, ie the data element 6 is neither deleted nor changed in any other way, rather its memory state becomes Figure 3b) shows the situation after the execution of step S2: in addition to the data element 6, its validity time 9 and its GUID 8 the data element 14 together with validity time 15 and GUID 16 is also stored in permanent memory 2.
  • step S3 This is naturally younger than both validity times 9 and 15.
  • step S4 it is checked whether one of the data elements 6 and 14 stored in the permanent memory 2 of the attribute "last name” is assigned a validity time 9 and 15 older than the reference time. If this is the case, in step S5 that of the two data elements 6 and 14 stored in the permanent memory 2 of the attribute "last name” is read out with the most recent validity time 15, in the present example the data element 14. The method ends with step S6. On the other hand, if the test in step S4 determines that none of the data elements 6 and 14 have a validity time 9 and 15 older than the reference time, the device 1 looks to read the data elements 6, 14 and the method ends with the step S7.
  • the effect of the method according to the invention thus does not differ from the effect of known methods in which stored data elements are overwritten and thereby physically deleted: in the case of accesses to data elements of the respective attribute, the respectively newly stored data element is output in both cases, with which the original data element has been overwritten.
  • the overwritten data element is stored unchanged in the permanent memory 2, while in known methods it may be physically erased and its information content thereby irretrievably lost.
  • the inventive method allows, even after overwriting at Need to access the overwritten data item.
  • the data element is assigned its own identifier or, as in the present example, a GUID, this facilitates the addressing of the data element when accessing it. Inadvertent deletion of data elements, for example in the case of updates of existing databases, is therefore fundamentally excluded.
  • the device 1 accesses data elements of the device Attributes "last name" that of the three stored data elements 6, 14, 17 read that now has the most recent validity period 18 of all validity times 9, 15, 18 of the data elements 6, 14, 17 of the attribute "last name", ie the data element 17th
  • access to a reference time that lies before the validity period 9, as explained above does not output any of the data elements 6, 14, 17, when a reference time between the validity period 9 and the validity time 15 is specified, the data element 6 is read out, given a reference time between the validity period 15 and the validity period 18, the data element 14 is read, and given a reference time younger than the validity time 18, for example, as in the first working mode of the device 1, the time to be accessed or a relative for access in the future time, the output of the data element 17 takes place.
  • the data element 6 could be assigned a routing identifier with the value "7777 24092007”
  • the data element 14 a routing identifier with the value "7778 13122007” instead of the GUID 16 and the validity period 15
  • Data element 17 instead of the GUID 19 and the validity period 18 a Leitkennung with the value "7779 04032008”.
  • the device 1 is set up to replace stored data elements by other data elements. In order to avoid information losses in the replacement, the device 1 is also used for generating set up a protocol 20 in XML format, in which details of the replacement are noted.
  • FIGS. 3c) and 3d An example of a replacement will be explained with reference to FIGS. 3c) and 3d).
  • the data element 14 is to be replaced by a data element 21 of the attribute "last name", which is the character string "Fischer", without having to fear a loss of information.
  • a protocol 20 is generated and assigned the validity time 15.
  • the date and time of the replacement an IP address of a computer from which the replacement was made, the replacement initiating user of the device 1, a copy of the character string "Miller” and a change note are recorded of the protocol 20, the data element 14 is erased and the data element 21 is stored by assigning the GUID 16 and the validity time 15 previously assigned to the data element 14.
  • the data element 21 is no longer present outside of the protocol 20, however Information content not lost because the string "Müller" was noted in the protocol 20.
  • a protocol 20 can alternatively be assigned to this validity period when a data element is first stored, if a validity period is assigned to the data element.
  • the date and time of storage of the data item which need not necessarily coincide with the validity time assigned to the data item, is an IP address of a computer from which storage of the data item that stored the data item was initiated Storage of the data element inducing user of the device 1 and a note about the storage in the protocol 20 retained. If the data element is replaced by another data element at a later time, an additional corresponding note is made in the protocol as explained above.
  • any indicators for displaying different states of data elements can be provided. FIG.
  • the 4 shows the data element 6 of FIG. 3a) with different indicators 22, 23, 24.
  • the indicator 22 with the value "2" indicates that the data element 6 is assigned to the permanent memory 2.
  • the indicator 23 with the value "P” allows public access to the data element 6. By means of appropriate changes of the indicator 23, the access to the data element 6 can be limited to a single person or groups of people or specific applications.
  • the indicator 24 designates a validity end time of the data element 6, in this case "02.09.2008", beyond which the data element 6 loses its validity and is no longer read out.
  • Other indicators can be provided to indicate, for example, that the data element in question is for Such an indicator can be used to reduce the total volume of data stored in non-volatile memory 2 by enabling data elements for which there is definitely no further interest to be deleted by appropriately setting the above-mentioned indicator denote periodic accesses to the data element 6 indicate.
  • the indicators 22, 23, 24 can be assigned to the new data element 14 unchanged, or the data element 14 can be assigned with new values to all or some of the indicators 22, 23, 24. Furthermore, the data element 14 may be assigned fewer or more indicators 22, 23, 24 than the data element 6 overwritten by it.
  • FIG. 5 shows details of the data object 7.
  • the data object 7 comprises the data element 6 of FIG. 3a) with the validity time 9 assigned to it and the GUID 8 as well as a further data element 25 and its validity time 26 and GUID 27.
  • the data element 25 is a data element of the attribute "social security number” and is thus of another attribute than the data element 6.
  • the data element 25 is assigned the validity time 26 with the value "11.02.2007” and the GUID 27 with the value "1389” as such, the GUID 10 is assigned, as described above, which according to FIG. 5 has the value "2425".
  • the data object 7 is assigned as an indicator the validity start time 11, which in the present case coincides with the validity time 9. The data object 7 is therefore released only with storage of the data element 6 for reading.
  • the data object 7 can be extended by any number of data elements of any attributes, for example by a data element of the "address” attribute or by a data element of the "birthday” attribute. Thus, personal data of individual persons can be conveniently managed with the data object 7.
  • FIG. 6 shows a situation after the data element 6 of the data group 7 has been overwritten by the data element 14 as explained in connection with FIG. 3b).
  • the data object 7 comprises not only the data element 6 and the data element 25 but also the data element 14.
  • the GUID 10 of the data element 7 and its validity start time 11 have remained unchanged by the overwriting.
  • the data element 14 is read out as described above.
  • the data object 7 can also be used as a pattern data object 7 for generating any number of data objects for managing data of different persons.
  • a data object for a particular person is then simply generated by copying the pattern data object 7 and overwriting the data element 6 by the person's name and overwriting the data element 25 by the corresponding social security number of the respective person, the new data object thus created having its own GUID and a own validity start time assigned.
  • an indicator is provided for the new data object, via which a reference of the result of the inheritance of the pattern data object 7 is obtained at any time. generate data object to the pattern data object 7. For example, I can use such an indicator to conveniently transfer changes in the pattern data object 7 to the data object that has emerged from it.
  • the device 1 shown in FIG. 1 is set up, substitutions or overwrites of the data elements 12 read from the main memory 3 or from data elements of the data objects 13 read into the main memory 3 immediately after the replacement or overwriting in the main memory 3 have occurred - Execute chend for the data stored in the permanent memory 2 associated data elements 6 and 7 data objects according to one of the methods described. This prevents any loss of information in the event of malfunctions of the device 1, in which overwriting in the volatile main memory 3 which has not yet been correspondingly stored in the permanent memory 2 is lost.
  • FIG. 7 shows the device 1 as part of a system 28, which further comprises a data processing device 29 and a user interface 30.
  • the device 1 fulfills the function of a database system.
  • the system 28 has a client / server architecture in which the data processing device 29, device 1, and user interface 30 are respectively implemented on different, spatially spaced computers, the data processing device 29 being a server 31, the device 1 being a database system server 32, and the user interface 30 has a user interface server 33.
  • Server 31 is configured to communicate with both user interface server 33 and database system server 32.
  • communication is provided between the database system server 32 and the user interface server 33.
  • the communication between the three servers 31, 32 and 33 is asynchronous.
  • the user interface server 33 may also communicate with a client 34 via a synchronous communication link.
  • a sender waits for a response from the receiver when sending data, and is thereby blocked during the time of waiting, whereas in asynchronous communication, sending and receiving of data takes place staggered and without waiting for a response from the receiver.
  • asynchronous communication can also be set up between the servers 31, 32, 33 if the servers 31, 32, 33 are those which, from the technical side, are designed exclusively for synchronous communication by providing in that the servers 31, 32, 33 immediately send an acknowledgment of receipt to the sender upon receipt of data and reconnect to the sender upon completion of a process initiated by the receipt of the data.
  • FIG. 8 shows a schematic representation of the data processing device 29, which has an arithmetic unit or a processor 35 and a memory 36 in addition to the server 31.
  • FIG. 8 shows a first group of a plurality of data elements 37 stored in the memory 36, by which a first data processing process 38 is implemented in the data processing device 29, and a second group of several data elements 39 is shown by which a second data processing process 40 in FIG the data processing device 29 is implemented.
  • Each of the data elements 37, 39 comprises a respective sequence of calculation instructions.
  • each of the data elements 37, 39 is in XML format, ie the sequences of calculation instructions are in character-coded form. In particular, they are not compiled and are not available as binary machine instructions or binary machine program, but as source code.
  • each individual one of the data elements 37 of the first group is assigned a respective GUID 41
  • a GUID 42 is assigned to each one of the data elements 39 of the second group
  • each GUID 43, 44 is assigned to each of the data processing processes 38, 40. namely the first data processing process 38, the GUID 43 and the second data processing process 40 the GUID 44.
  • data processing processes 38, 40 shown in the data processing device 29 further, not visible in Figure 8, data processing processes implemented by respective groups of data elements, which in Memory 36 are stored.
  • Each one of the data elements 37, 39 of each group is assigned a respective identification, which is a simple string.
  • the association between identifications and data elements 37, 39 is unique in each case, ie all data elements 37, 39 of the same data processing process 38, 40 are uniquely assigned different identifications.
  • a data element 37 from the first group is assigned the same identification as a data element 39 from the second group or any number of data elements from respective other groups of data elements.
  • a simple example is intended to clarify this situation.
  • the system 28 is used in the personnel management of an organization with employees in two different federal states BL1 and BL2. Each employee is paid for exactly one out of three different collective agreements TV1, TV2 and TV3, whereby the employee can either be an employee or an intern.
  • the difference between its gross and net salary is now to be calculated for any of the employees.
  • this difference is calculated in different ways. If the possible combinations of state, collective agreement and status of the employee are organized in a hierarchically branched tree structure, the structure shown in FIG. 9 results.
  • each of these twelve alternatives there are twelve different alternatives for calculating the difference between gross and net salary.
  • exactly one data element is provided, which comprises a corresponding sequence of calculation instructions for calculating the difference between gross and net salary according to the respective alternative.
  • twelve different data elements 37 which together form the first group of data elements 37.
  • Each of the twelve data elements 37 is uniquely assigned an identification within the first group. In other words, the mapping between data elements 37 and identifications within the first group is bijective.
  • the second data processing process 40 is set up for the calculation of the tax payments of any employees. Since the possible combinations of states, collective agreements and status of the employee are the same as in the case of the first data processing process 38, namely the combinations shown in the tree structure of Figure 9, there are also twelve alternative ways of computing for the data processing process 40. Consequently, the data processing process 40 is the second by twelve Group of data elements forming data elements 39 implemented with respective identifications associated with the data elements 39, wherein each data element 39 corresponding to one of the twelve alternatives comprises a respective sequence of calculation instructions.
  • the identifications are character strings which consist of the letters and numbers used in FIG. 9, which are arranged in the sequence assigned to a specific data element 37, 39 within the sequence of characters assigned to it as identification, as shown in FIG upon tracing a path within the tree up to that particular data element 37, 39.
  • the leftmost data element 37, 39 is assigned the character string "BL1TV1A” as identification and the rightmost data element 37, 39 is assigned the character string "BL2TV3P" as identification.
  • a data element 37, 39 is identified whose sequence of calculation instructions is designed for an employee who is employed in the federal state BL1 under the collective agreement TV1 as an employee, while using the character string "BL2TV3P" as an identification
  • Data element 37, 39 is identified, whose sequence of calculation instructions is designed for an employee who is employed in the federal state BL2 under the collective agreement TV3 as an intern.
  • the identifications of the intervening data elements 37, 39 are formed accordingly.
  • the data processing processes 28, 40 are implemented in the data processing device 29, in that the data stored elements 37 and 39 with the respective identifications associated with them in the memory 36 and groups of respective data processing processes 38, 40 with respective GUIDs 43, 44 are summarized.
  • the client 34 establishes a connection with the user interface server 33 and transmits a request to the user interface 30.
  • the client 34 may request data stored in the database system or device 1.
  • the user interface server 33 connects to the database system server 32, the requested data is read from the device 1, sent from the database system server 32 to the user interface server 33, and transmitted to the client 34.
  • the request from the client 34 requires processing of the data.
  • the client 34 transmits a request to the user interface server 33 for the tax levies of an employee employed in the state BL2 to whom the collective agreement TV2 applies and who is a trainee P.
  • the user interface server 33 determines the identification of that data element 39 of the second data processing process 40 which comprises the corresponding sequence of calculation instructions for calculating these control outputs and sends this identification, which is the character string "BL2TV2P", together with others Information about the employee, such as its name, to the server 31 of the data processing device 29.
  • the server 31 From the database system server 32, the server 31 requests the data necessary for the calculation on the income of the employee stored in the device 1 under the name of the employee.
  • the data About the employee's income are read from the device 1 and transmitted to the server 31.
  • the server 31 transfers both the data on the employee's income and the identification to the processor 35.
  • the processor 35 identifies the relevant data element 39 of the data processing process 40 on the basis of the identification and executes the calculation instructions of the sequence comprised by the identified data element 39 Calculation statements.
  • the processor 35 like an interpreter, reads the sequence of calculation instructions in XML format and processes the data on the employee's income by executing the crediting instructions.
  • the execution of a data processing process need not necessarily result in the generation of any data as a result of the data processing process.
  • data is generated on the tax deductions of the employee in question, which after completion of the data processing process 40, which corresponds to the end of execution of the calculation instructions of the sequence of calculation instructions of the identified data element 39, as a result. Therefore, this calculated data is transferred from the processor 35 to the server 31 and transmitted by the latter to the user interface server 33, which forwards it to the client 34.
  • the calculated data can be stored in the memory 36 in order to keep it ready for possible additions to the data stored in the device 1 or for the generation of later reports.
  • a special mode of operation is provided which requires the specification of a data processing category.
  • the data stored in the device 1 are assigned to respective data processing categories.
  • a data processing category may in the present example be a specific state BL1 or BL2, a specific collective agreement TV1, TV2 and TV3 or a specific status of the employees. If the system 28 is operated in said operating mode and a particular data Given the processing category, the identification of a data element 37, 39 and the reading out of data from the device 1 only takes place if the relevant data element 37, 39 or the data is / are assigned to the predetermined data processing category.
  • identification of a data element 37, 39 only then occurs if this is provided for the collective agreement TV3. This is the case if and only if the character string associated with a data element 37, 39 has the three characters "TV3", with all the other characters occurring in this character chain being insignificant 37, 39 for a data element intended for an employee in federal state BL1, who is employee A, for a data element intended for an employee in state BL1, who is a trainee P, for a data element, which is intended for an employee in the federal state BL2, who is an employee, and for a data element that is intended for an employee in the state BL2, the trainee P. Also, data from the device 1 are only read if they comply with the collective agreement TV3 are assigned.
  • the data processing device 29 is set up like the device 1 for storing the data elements 37, 39 according to the invention with assignment of a validity time and their data loss-free overwriting.
  • FIG. 10 a shows a single data element 45 with a GUID 46 and a validity time 47, which was assigned to the data element 45 when it was stored in the memory 36.
  • the validity time 47 corresponds in the present case to the date on which the storage took place.
  • the data element 45 is now to be overwritten by a new data element with a new sequence of calculation instructions.
  • the data processing process to which the data element 45 belongs is added a new data element 48 and stored in the memory 36, this new data element 48 is assigned a new validity time 49 corresponding to the time of storing the data element 48 and thus younger than the validity time 47th is.
  • the new data element 48 is In addition, although assigned its own GUID 50, but it is the same identification associated with it as the data element 45. In this case, the data element 45 remains untouched, ie the data element 45 is neither deleted nor otherwise changed, its memory state is rather maintained.
  • the specification of a reference time is additionally necessary in order to select one of the data elements 45, 48 to allow.
  • the current time of specifying the identification is automatically selected and specified as the reference time. This is naturally younger than each of the validity times 47 and 49.
  • that of the two data elements 45 and 48 stored in the memory 36 to which the same identification is assigned is read out with the most recent validity time 49, in the present example the data element 48.
  • the effect of this override thus does not differ from the effect of conventional overrides in which stored data elements are physically erased: upon execution of the data processing process to which the data element belongs and upon specification of an identification associated with the data element In both cases, the last data item that has been stored is output, with which the previously stored data element has been overwritten.
  • the overwritten data element remains unchanged in the memory. It may be stored in memory, whereas in other types of overwriting it may be physically erased and its information content thereby irretrievably lost.
  • the described overwrite allows access to the overwritten data element even after overwriting, if necessary. Since the data element is assigned its own GUID, this facilitates the addressing of the data element when accessing the same. Unintentional deletion of data elements is therefore excluded in principle.
  • the data processing device 29 selects the data element 45, since its validity time 47 is now the most recent of those validity times that are older than the reference time. If instead one specifies a reference time that lies before the validity time 47 or is older than the validity time 47, no data element is selected because none of the validity times 47 and 49 are older than the reference time. Given a reference time which is relative to the time of specification of the identification in the future, the data element 48 is again selected, since its validity time 49 is also the most recent of the validity times 47 and 49 in this case, both older than the reference time are.
  • the procedure is analogous.
  • the data element 51 For overwriting the data element 48, for example by a data element 51, the data element 51 is added to the data processing process of the data elements 45 and 48 and stored in the memory 36.
  • a validity time 52 is assigned to it, which is the day on which the data element 51 was stored in the memory 36, and a GUID 53 is assigned to it.
  • the identifiers assigned to the data element 51 cation is identical to the identification assigned to the data elements 45 and 48. 10c) shows the situation after overwriting of the data element 48 by the data element 51.
  • the data processing device 29 is set up to replace stored data elements with other data elements.
  • the data processing device 29 is also set up to generate a protocol in XML format, in which details of the replacement are noted.
  • FIGS. 10c) and 10d An example of a replacement is illustrated in FIGS. 10c) and 10d). In the situation according to FIG. 10c), the data element 48 is to be replaced by a data element 54 without having to fear any loss of information.
  • a log 55 is generated and assigned to the validity period 49.
  • the date and time of the replacement an IP address of a computer from which the replacement was made, the replacement initiating user of the system 28 or the data processing device 29, a copy of that from the data element 48 Sequence of calculation instructions and an amendment note.
  • the data item 48 is deleted and the data item 54 is stored with the GUID 50 and validity time 49 previously assigned to the data item 54 assigned.
  • the data element 48 no longer exists, its information content is not lost because the sequence of calculation instructions it has included was recorded in the protocol 55.
  • a protocol 55 can alternatively be assigned to this validity time when a data element is first stored, if a validity period is assigned to the data element.
  • the date and time of storage of the data item which need not necessarily coincide with the validity time assigned to the data item, is an IP address of a computer from which storage of the data item was initiated, storing the data item Data element causing user and a note about the storage in the protocol 55 detained. If the data element is replaced by another data element at a later time, an additional corresponding note is made in the protocol 55, as explained above.
  • the system 28 Since in the system 28 both data elements of the device 1 and data elements of the data processing device 29 are assigned a respective On the one hand, a historical data management is achieved. On the other hand, when a corresponding reference time is specified, the system 28 can be operated at any time along with data processing processes and data to be processed in a state in which the entire system 28 was at the predetermined reference time.

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

L'invention concerne un dispositif (1, 29) et un procédé d'enregistrement d'éléments de données (6, 14, 17, 37, 39, 45, 48, 51) d'attributs spécifiques, et d'accès aux éléments de données (6, 14, 17, 37, 39, 45, 48, 51) enregistrés, permettant de supprimer la perte de données lors de l'écrasement d'éléments de données enregistrés et d'obtenir un écrasement plus flexible des éléments de données enregistrés. Le dispositif (1, 29) sert à enregistrer des éléments de données (6, 14, 17, 37, 39, 45, 48, 51) avec affectation d'une durée de validité respective (9, 15, 18, 47, 49, 52). En cas d'écrasement d'un premier élément de données (6, 14, 17, 37, 39, 45, 48, 51) d'un attribut prédéfini, possédant une première durée de validité (9, 15, 18, 47, 49, 52), par un deuxième élément de données (6, 14, 17, 37, 39, 45, 48, 51) de l'attribut prédéfini, une deuxième durée de validité (9, 15, 18, 47, 49, 52), inférieure à la première (9, 15, 18, 47, 49, 52), est affectée au deuxième élément de données (6, 14, 17, 37, 39, 45, 48, 51), et le deuxième élément de données (6, 14, 17, 37, 39, 45, 48, 51) est enregistré avec conservation de l'enregistrement du premier élément de données (6, 14, 17, 37, 39, 45, 48, 51). Des accès à des éléments de données (6, 14, 17, 37, 39, 45, 48, 51) de l'attribut prédéfini avec définition d'une durée de référence sont prévus : de tous les éléments de données (6, 14, 17, 37, 39, 45, 48, 51) enregistrés de l'attribut prédéfini, dont la durée de validité (9, 15, 18, 47, 49, 52) est supérieure à la durée de référence, l'élément de données ayant la durée de validité (9, 15, 18, 47, 49, 52) la plus courte est lu. Dans la mesure où une durée de validité plus courte que la durée de référence est affectée à tous les éléments de données (6, 14, 17, 37, 39, 45, 48, 51) de l'attribut prédéfini, le dispositif ne lit aucun élément de données (6, 14, 17, 37, 39, 45, 48, 51).
EP09737729A 2008-04-30 2009-04-24 Écrasement d'éléments de données enregistrés sans perte de données Ceased EP2272012A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102008021667A DE102008021667A1 (de) 2008-04-30 2008-04-30 Datenverlustfreies Überschreiben gespeicherter Datenelemente
PCT/DE2009/000571 WO2009132621A1 (fr) 2008-04-30 2009-04-24 Écrasement d'éléments de données enregistrés sans perte de données

Publications (1)

Publication Number Publication Date
EP2272012A1 true EP2272012A1 (fr) 2011-01-12

Family

ID=41112992

Family Applications (1)

Application Number Title Priority Date Filing Date
EP09737729A Ceased EP2272012A1 (fr) 2008-04-30 2009-04-24 Écrasement d'éléments de données enregistrés sans perte de données

Country Status (3)

Country Link
EP (1) EP2272012A1 (fr)
DE (1) DE102008021667A1 (fr)
WO (1) WO2009132621A1 (fr)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8275742B2 (en) 2003-05-19 2012-09-25 Sap Aktiengesellschaft Data importation and exportation for computing devices
EP1713008B1 (fr) * 2005-04-14 2013-03-13 Rajesh Kapur Procédé et système pour la préservation d'accès aux documents effacés ou écrasés au moyen d'une boîte à ordures du système
EP1785893A1 (fr) * 2005-11-15 2007-05-16 Paul Pickering Bases de données relationnelles temporelles

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DANIELA FLORESCU ET AL: "XL: An XML Programming Language for Web ServiceSpecification and Composition", PROCEEDINGS OF THE 11TH INTERNATIONAL CONFERENCE ON WORLD WIDE WEB, ACM, HONOLULU, HAWAII, USA, 7 May 2002 (2002-05-07), pages 65 - 76, XP058122161, ISBN: 978-1-58113-449-0, DOI: 10.1145/511446.511456 *
See also references of WO2009132621A1 *

Also Published As

Publication number Publication date
DE102008021667A1 (de) 2009-11-05
WO2009132621A1 (fr) 2009-11-05

Similar Documents

Publication Publication Date Title
DE102006036584B4 (de) Verwalten von unterschiedlich versionierten Konfigurationsdateien einer medizinischen Einrichtung
DE10048942B4 (de) Verfahren und System zur Wartung von Software über ein Netz
DE202013012501U1 (de) Beziehungen zwischen Bearbeitungen erkennen und auf eine Teilmenge von Bearbeitungen einwirken
DE202011110895U1 (de) Echtzeitsynchronisierte Bearbeitung von Dokumenten durch mehrere Benutzer für das Bloggen
DE19844013A1 (de) Strukturierter Arbeitsordner
DE10255128A1 (de) Computer-implementierte PDF-Dokumentenverwaltung
DE102010007967A1 (de) Verfahren, Computerprogramm-Produkt sowie computerlesbares Speichermedium zur generischen Erstellung eines Strukturbaums zur Beschreibung eines IT-Verfahrens
DE112011101793T5 (de) Gemeinsame Datennutzung bei Dateiklonen
EP1638028A2 (fr) Génération assistée par ordinateur et gestion de changement pour interfaces utilisateur
DE102021125630A1 (de) Datensynchronisation in einem datenanalysesystem
DE202015009316U1 (de) Metadatenmanagement in einem dezentralen Verarbeitungssystem
DE102012001406A1 (de) Automatische Konfiguration eines Produktdatenmanagementsystems
DE112014003082B4 (de) Programmierbares Steuerungssystem, programmierbare Steuerung, Programmanzeigevorrichtung und Programmanzeigeverfahren
DE102016006202B4 (de) Numerische Steuervorrichtung zum Verwalten von Bearbeitungsdaten und Bearbeitungsergebnissen
DE102018111930A1 (de) Verfahren zum Bearbeiten eines Softwareprojekts
EP3809260A1 (fr) Système et procédé d'administration des appareils d'imagerie
DE112016004168T5 (de) Systeme und Verfahren zum Speichern und Auslesen von Inhalten
DE112018007101T5 (de) Verwaltungsgerät, Verwaltungssystem, Anzeigeverfahren und Programm
WO2009132621A1 (fr) Écrasement d'éléments de données enregistrés sans perte de données
EP2479664A1 (fr) Système et procédé de production d'un code source pour un programme informatique
DE112019006886T5 (de) Systementwicklungsunterstützungsvorrichtung, Verfahren, Programm und Aufzeichnungsmedium
EP2271985A2 (fr) Dispositif et procédé de traitement de données
EP1675045A1 (fr) Echange de données de description entre des projets à l'aide d'interfaces inter-projets
DE102011102572A1 (de) Arbeitsverfahren für eine autarke Rechteverwaltungskomponente, autarkes Rechteverwaltungssystem und Gerät
WO2010026151A1 (fr) Procédé d'attribution d'une autorisation d'accès à un objet informatisé dans un système d'automatisation, programme informatique et système d'automatisation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20101029

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA RS

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20170308

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20180607