happstack-ixset internals/performance (was Re: [Haskell-cafe] Inverse of HaskellDB)

Thomas M. DuBuisson thomas.dubuisson at gmail.com
Fri Oct 1 14:53:10 EDT 2010

> That is pretty close to how it would look using happstack-state. Here
> is a complete, runnable example which defines the types, a query,
> creates/initializes the database, performs the query, and prints the
> results.

How is data stored in Happstack.State?  I see the "Component" instance
uses "fromList" from happstack-ixset but can't find any information on
the algorithm used or its efficiency (computationally or wrt space).

If making this more concrete helps then here is a possible use:

== GPS Points ==
I have a GPS logger that logs every 10 seconds when I jog.  Jogging for
an hour a day for the past 180 days has resulted in 64k points.
Pretending I hosted a site for joggers (and all points were in the same
DB) I could easily result in a billion points (< 20K users).  Would
happstack-ixset code in the form "points @< (Lon -120) @> (Lon -125) @>
(Lat 45) @< (Lat 50)" perform reasonably?


More information about the Haskell-Cafe mailing list