[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orekit Developers] Status Report: SOCIS Orekit Database Project



Hello again!

I just pushed a user tutorial and some developer information to the WIKI of the socis-2014-database page: https://www.orekit.org/forge/projects/socis-2014-database/wiki

If someone could take a quick peek at the wiki and go through the code to give me some advice on what still has to be done and what you would like to see different that would be greatly appreciated!

What I tested yesterday:

- Create a PostgreSQL database on Heroku
- Persist data to it using Orekit-persistence
- Load the same data using Orekit-core

So the project is coming closer to being feature complete!

Thanks!
Bob


On 14 August 2014 14:44, Bob Reynders <tzbobr@gmail.com> wrote:
Hello everyone!

So a little update on the progress regarding the database project.

Implemented:
- Loader architecture to retrieve data from JDBC-connected Databases
- Persistency architecture to persist data from Orekit-core to JDBC-connected Databases
- Testing architecture to test Database related features in Orekit

Features:
- Incremental updates in persisting EOP entries dependent on dates
- Incremental updates in persisting UTCTAI-history data dependent on the date components (in progress, should be done today!)

Todo:
- Create the interface for the standalone persisting application
- Write up a tutorial and a design document
- Figure out a proper way of cleaning factories (additional assignment)

Now, for some questions:

1. The EOP Entry updates existing data purely based on the date. The following scenario would break this: 
    a) Persist monthly EOPEntries (e.g. 1st day of each month)
    b) New data is released that is more correct than the previously persisted data, the data is monthly but on the 15th day of each month.
    c) Persist new data --> results in the co-existence of the old data and the new.

Is this scenario possible or are the intervals of the EOP entries uniformly agreed upon? If not what would be the correct behavior?

2. The 'update' feature now uses 'delete and insert' which is far from optimal. I would prefer to use 'merge' which was added to the SQL-2003 standard but was implemented in databases much later. I am however told that Orekit also targets legacy or slower updated applications; I assume that it would be best not to depend on newer features? Please confirm


If I forgot anything or you have any questions feel free to e-mail me! I am now shifting focus to creating the standalone persistence application and writing up a tutorial for an EOP persisting scenario with an actual database... Since this includes setting up the database as well, it might take a while but my intentions are to release this tutorial at the start of next week. I will go with PostgreSQL unless someone feels strongly towards a different database.

Thanks for reading!
Bob