Re: Scaled or Granular Dates
Date: 8 Jan 2004 09:33:25 -0800
Message-ID: <a264e7ea.0401080933.6c944b8b_at_posting.google.com>
>> All Dates in Java, and I believe in most all areas of computing are
Which is clearly wrong. Einstein told us that to exist exist an
entity must have a duration. Heck, as far back as Zeno, we know that
a continuum like time is defined by the property of always being
divisible (i.e. no discrete points).
measured as distinct points in time to some predefined granularity.
<<
>> Somebody might say, that the latter dates are really periods that
should be recorded as two dates: They are periods but then again,
aren't all date/times. There is no way of recording an instant in time
as there is always a higher level of accuracy that exists, but cannot
be measured. <<
Yep, me and most of the people doing work with temporal databases. The ISO model for time is a half-open interval with a known starting point. The half-open intervals have a lot of nice properties like closure under concatenation, etc.
>> 1. Is this old ground that has been covered before, written about
in many theses, and thrown away as a bad idea? If so, can anyone point
me to any reading on this subject. <<
Look up the Snodgrass book from Morgan-Kaufmann for SQL code for the interval model.
>> 2. I would like to create my own Java object to handle granular
dates as I describe above. What would be the best way to make them
persist in a database? Should I just use a long integer with a special
format to denote the value and scale? Any recommendations? <<
Pairs of TIMESTAMPs and BETWEEN predicates for queries. Maybe another column to control grandularity. Granularity is part of the DDL in SQL-99 temporal datatypes but you will probably not find it in your database. Received on Thu Jan 08 2004 - 18:33:25 CET