A New Declarative Method to Update Object Databases and Remote Memories
-
Hi everybody, Updating complex structures in a remote systems like in an object databases is not an easy task. This is even more true for pure SQL databases. -Here I assume that also the modifications are complex. Therefore I tried to develop a general declarative method for updating object databases (and object/relational databases), or more generally remote memories or even more generally, remote directed graphs, without any artificial limitations. The name of the method is “embed” and it is called from a Java client program in the following simple way: db.embed(s); ,where s is the root object of a modified object structure in the run-time memory. Here modifications of an object structure s can be totally arbitrary and complex. For example, before calling the embed method, the client program can change the overall topology of s by removing objects from it or by adding new objects to it, some of them created by the client program, some of them loaded originally from the database. In addition, scalar fields of objects can be modified. The embed method and the theory behind it is described in my article: Blog: http://hvirkkun.blogspot.fi/2016/04/a-new-communication-theory-on-complex.html Do you think that the embed method works algorithmically (and practically)? Some properties: -The embed method is based on a new communication theory for complex information represented as a directed graph of nodes. In short, the theory states that modified complex information (represented as a directed graph of nodes) can always be transferred back to its original system in an exact and meaningful way. -The embed method models the object database and a modified object structure in the run-time memory as directed graphs of nodes without any artificial limitations. -Persistence in the object database is defined in a well known and accepted way, by reachability from persistent root objects. -The embed method does not only transfer modified information into the object database but also removes structures of garbage objects from the object database if any appear during the update operation, thus leaving the database in a consistent state. Garbage objects may easily appear if some objects in the object database lose references to themselves during the update operation. -The embed method understands local topology of the object database, avoiding examining unrelated objects in the database which is one reason for its efficiency. If the embed method works, it makes updating of object databases
-
Hi everybody, Updating complex structures in a remote systems like in an object databases is not an easy task. This is even more true for pure SQL databases. -Here I assume that also the modifications are complex. Therefore I tried to develop a general declarative method for updating object databases (and object/relational databases), or more generally remote memories or even more generally, remote directed graphs, without any artificial limitations. The name of the method is “embed” and it is called from a Java client program in the following simple way: db.embed(s); ,where s is the root object of a modified object structure in the run-time memory. Here modifications of an object structure s can be totally arbitrary and complex. For example, before calling the embed method, the client program can change the overall topology of s by removing objects from it or by adding new objects to it, some of them created by the client program, some of them loaded originally from the database. In addition, scalar fields of objects can be modified. The embed method and the theory behind it is described in my article: Blog: http://hvirkkun.blogspot.fi/2016/04/a-new-communication-theory-on-complex.html Do you think that the embed method works algorithmically (and practically)? Some properties: -The embed method is based on a new communication theory for complex information represented as a directed graph of nodes. In short, the theory states that modified complex information (represented as a directed graph of nodes) can always be transferred back to its original system in an exact and meaningful way. -The embed method models the object database and a modified object structure in the run-time memory as directed graphs of nodes without any artificial limitations. -Persistence in the object database is defined in a well known and accepted way, by reachability from persistent root objects. -The embed method does not only transfer modified information into the object database but also removes structures of garbage objects from the object database if any appear during the update operation, thus leaving the database in a consistent state. Garbage objects may easily appear if some objects in the object database lose references to themselves during the update operation. -The embed method understands local topology of the object database, avoiding examining unrelated objects in the database which is one reason for its efficiency. If the embed method works, it makes updating of object databases
Heikki welcome to CP, you have missed the usage of the forums, they are for asking questions and discussions. What you have posted is more suited to an article or Tip/Trick. An article gets peer vetted and released, it stays around and may be useful for a long time. A forum post will stay on the from page for only a short time and will not be a long term benefit. An article may attract comment, it can be downloaded and modified and it enhances your reputation (if it is worthy). I suggest you post this as an article or T/T, it will need some more structure and additional work but it will give much better value.
Never underestimate the power of human stupidity RAH