And, BTW, "data file + supplementary file for faster access" isn't
anywhere near how SQLite operates.  SQL is like a Swiss Army Knife --
great if you frequently need a corkscrew, but a lot of dead weight if
you don't.

On Oct 4, 1:25 pm, Tom Gibara <[email protected]> wrote:
> This combination of a data file + supplementary file for faster access, is
> indeed very well established. Developers have spent considerable time
> providing robust and efficient implementations, where they are often
> referred to as tables and indexes, and exposed via a software component
> that's often called a database.
>
> Tom.
>
> On 4 October 2010 18:45, DanH <[email protected]> wrote:
>
> > Well, when I look at the web references for "dope vector", they're
> > mostly referring to a different (and more obscure) concept than the
> > one I'm talking about:
>
> > The concept is blazingly simple -- something you'd invent if you
> > didn't already know of it.
>
> > Consider that you have a set of variable-length elements (maybe
> > strings) that you want to access by numeric index, you could allocate
> > an NxM byte array (where M is the size of the longest element) but
> > that would be inefficient (in space) if many of the elements were much
> > shorter than M.
>
> > So instead you pack the elements together, head to tail, in a single
> > byte array.  Then you create another array, Nx2 integers.  If you
> > index this second array by the "index" of one of your variable-length
> > elements, the first word in the row is the offset to the start of that
> > element (within the first array), and the second word is the length of
> > the element.
>
> > But then you notice that, for all elements except the last, for a
> > given element index X, the X+1 entry in the dope vector contains the
> > offset of the first byte after the Xth element.  So instead of having
> > two columns in the dope vector you can (if you wish) just use one, and
> > add at the end an N+1th entry that addresses the first byte after the
> > end of the last element.
>
> > In this case, you replace the arrays with randomly-accessed files, but
> > that's a trivial transformation (aside, as I said, from the ugliness
> > of the Java file access classes).
>
> > On Oct 4, 11:51 am, Mark Murphy <[email protected]> wrote:
> > > On Mon, Oct 4, 2010 at 12:38 PM, DanH <[email protected]> wrote:
> > > > Background in algorithms???  It's a Programming 101 problem -- anyone
> > > > with a modicum of programming skill should be able to do it.
>
> > > You make a few assumptions, in terms of background and experiences,
> > > that may or may not be accurate.
>
> > > > It's no
> > > > harder than writing the program to read lines from a file and write
> > > > them to a database -- the only real difficulty is navigating through
> > > > the maze of Java classes you need to do file access.
>
> > > The lines of code count is probably somewhat longer. More importantly,
> > > though, the database solution is well-trod ground, with quite a few
> > > samples. "Dope vector" has remarkably few hits on search engines, let
> > > alone any code that can be readily applied in this case. Now,
> > > admittedly, not every occurrence of this pattern may use that term --
> > > when I used a variant on this approach on the Apple IIe in the late
> > > 1980's, I had not heard of the term.
>
> > > Perhaps you would like to contribute, by either augmenting the dope
> > > vector Wikipedia page, or by creating a couple of Java classes for
> > > creating and reading dope vector files, to help make it easier for
> > > people to take advantage of your expertise in this area.
>
> > > --
> > > Mark Murphy (a Commons Guy)http://commonsware.com|
> >http://github.com/commonsguyhttp://commonsware.com/blog|http://twitter.com/commonsguy
>
> > > Android Training...At Your Office:http://commonsware.com/training
>
> > --
> > You received this message because you are subscribed to the Google
> > Groups "Android Developers" group.
> > To post to this group, send email to [email protected]
> > To unsubscribe from this group, send email to
> > [email protected]<android-developers%[email protected]>
> > For more options, visit this group at
> >http://groups.google.com/group/android-developers?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to