couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Riyad Kalla <rka...@gmail.com>
Subject Re: Understanding the CouchDB file format
Date Thu, 22 Dec 2011 20:11:28 GMT
On Thu, Dec 22, 2011 at 12:38 PM, Robert Newson <rnewson@apache.org> wrote:

> It reads well as an article but needs some polish before it could be a
> great wiki page. I suggest that if it does go up, it is clearly marked
> as a draft, and we all chip in to sculpt it into shape.
>

Great idea. Agreed that it is no where as clean/factual as it would need to
be for an appropriate wiki/ref-doc-style entry, but if it can be massaged
into that, it would hopefully make a great resource.


> There are a
> few parts of the article that are inaccurate (like the assertion we
> have good locality for the id and seq trees. If this were true we
> wouldn't have seen such a huge improvement in compaction by
> temporarily separating them).


I'd look forward to more detail on this... it was my understanding the
updates were appended out in the [doc rev][_id idx diff][_seq idx diff]
format at the end of the data file. Sounds like I may have misunderstood
that?


> The 'COMPETE recreation' paragraph also
> strikes me as factually awry.
>

I'd appreciate a detailed correction on this if it is wrong; all the
digging I've done (in this thread and other partial resources) suggests
that the path from the changed doc ref back to the root (including a copy
of all internal nodes and all of their child references) is written so as
being able to read-back into the index from the tail of the data file
quickly... specifically slides 17, 18 and 19 from this slidedeck (
http://www.slideshare.net/jchrisa/btree-nosql-oak?from=embed) -- note that
the interim nodes [A..M] and [A..Z] are rewritten (including any and all
child pointers they contained).

This is what I was referring to; I should either clean up my wording
(confusing) or I got it wrong in which case I'd appreciate any and all
corrections.

Thanks for helping move this forward and the feedback Robert.

-Riyad

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message