pspp-dev
[Top][All Lists]
Advanced

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

Flexifiles


From: John Darrington
Subject: Flexifiles
Date: Sat, 24 Jun 2006 17:31:50 +0800
User-agent: Mutt/1.5.4i

On Thu, Jun 08, 2006 at 09:47:36AM -0700, Ben Pfaff wrote:

     I'm beginning to believe that casefiles should not be used for
     GUI access.  Instead, we should create a new, more dynamic
     structure for GUI access, one that supports the casefile
     operations.  For convenience, I'll call it a "flexfile", because
     it's flexible.  The GUI would use flexfiles where the TUI uses
     casefiles.  I'd write a wrapper that allowed them to be used
     interchangeably.

Can we do the API changes for that now?  For the time being, we can do a
very naive implementation which stores an array of cases on the heap.
Once we know that it's going to fit in with the rest of the code, then
we can think about a proper implementation.
     
     I've been thinking about how to implement such a data structure.
     I think what would be wanted is a B-tree (as I think you
     mentioned), where each item in the tree is a group of columns.
     Inserting or deleting cases inserts or deletes items in the
     B-tree.
     
     Initially there would only be a single B-tree.  Inserting columns
     would create additional B-trees parallel to the initial one.
     Because each B-tree would have the same structure, only a single
     index would be necessary.
     
     This could be easily prototyped with Berkeley DB.  It sounds like
     you don't know about Berkeley DB, but it's enormously useful, so
     I'd recommend looking it up: http://dev.sleepycat.com/index.html

I had a look at this site.   If it's as good as it claims, is there
any reason why we can't implement the final version using this library?


J'

-- 
PGP Public key ID: 1024D/2DE827B3 
fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
See http://pgp.mit.edu or any PGP keyserver for public key.


Attachment: pgp7wNDqTCW8V.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]