I talked to Jacek on Friday and we tentatively agreed -- subject to appropriate approval -- to try to eliminate the separate Data Ingest Converter pipeline stage by having the code that creates the catalogs output data in the desired format.

In the current model, application code that writes catalogs must output the catalog data in some standardized binary format (to be determined). Then a separate Data Ingest Converter pipeline stage converts that binary data to whatever format is required for database ingest. This isolates the cataloging code from the details of the databases and provides a natural interface between the application developer and the data ingest programmer.

However, having the catalog stage output the data in the final desired form has these advantages: - It is more efficient. For the real LSST, this efficiency may be worth gaining. - The code that formats the data for database ingest is easiest to write using the objects (or data structures) available to the code that creates the catalogs. - It avoids the need to pick a "neutral" format (one that will change if we ever decide we need to add columns to the database). I admit that such changes will be very unlikely once we get far enough along, but I expect a few between now and production (since our schema is not finalized).

For DC1 we will use comma-separated ASCII values. This is a format that is understood by most, if not all databases (with minor variation in details--for example how to represent NULL). It also has the advantage that details of the database column types are irrelevant because the database performs data conversion as required during ingest (something that is impossible with binary data). Thus it isolates the data from minor changes to the schema. Fortunately, it is also the most efficient means of ingesting data into MySQL, so there is no efficiency tradeoff for DC1. (We may also wish to use the same format for the final system. That will depend radically on the database system chosen and whether comma-separated ASCII values can be ingested quickly and efficiently enough and what other options there are.)

For DC1, I suggest that some combination of Robyn, Jacek and I write the formatting code. I think it will be quite easy (once we are sure of the schema).

-- Russell
_______________________________________________
LSST-data mailing list
[email protected]
http://www.lsstmail.org/mailman/listinfo/lsst-data

Reply via email to