All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Braam <Peter.Braam@Sun.COM>
To: lustre-devel@lists.lustre.org
Subject: [Lustre-devel] Doubly indexed tree / changelogs
Date: Mon, 22 Sep 2008 15:13:59 +0800	[thread overview]
Message-ID: <C4FD66B7.7CDA%peter.braam@sun.com> (raw)
In-Reply-To: <48D743D2.6010201@sun.com>

Sure, when aggregations apply.  But they do not apply in general (e.g.
Filesets that are search results) and we need a doubly indexed tree for
that.

Hence my question, what doubly indexed trees exist?

Peter


On 9/22/08 3:05 PM, "Alex Zhuravlev" <Alex.Zhuravlev@Sun.COM> wrote:

> IMHO, it'd be useful to insert aggregations into that index.
> just to keep the index small. say, subtree?
> 
> thanks, Alex
> 
> Peter Braam wrote:
>> Objects can be in many filesets, and be added to some, removed from others.
>> 
>> I think this is an almost arbitrary collection of pairs (FID, fileset-id)
>> and we need it indexed by both.
>> 
>> Peter
>> 
>> 
>> On 9/22/08 1:52 PM, "Alex Zhuravlev" <Alex.Zhuravlev@Sun.COM> wrote:
>> 
>>> can object migrate between filesets? if not, we probably
>>> can use fid's sequence as a record in that index?
>>> 
>>> thanks, Alex
>>> 
>>> Peter Braam wrote:
>>>> Hi Nikita, Nathan -
>>>> 
>>>> After some pondering I have come to two conclusions.
>>>> 
>>>> To encode filesets, we need a tree that makes two iterations fast:
>>>> 
>>>>    1. list all filesets that contain a certain object
>>>>    2. list all objects in a certain fileset
>>>> 
>>>> 
>>>> Is there a doubly indexed tree for this?
>>>> 
>>>> Secondly, to make the changelogs useful and scalable for filesets we
>>>> will need to be able to list all changelog entries associated with a
>>>> certain inode efficiently.  I see two ways to do this ? one is an
>>>> auxiliary directory file mapping inodes to many changelog entries, the
>>>> second is to embed forward and backward pointers in the changelog
>>>> entries to build a linked list rooted at the inode (using an EA in the
>>>> inode pointing to the first and last element of the list).  Both have
>>>> some overheads.  What are your thoughts?
>>>> 
>>>> Peter
>>>> 
>>>> 
>>>> ------------------------------------------------------------------------
>>>> 
>>>> _______________________________________________
>>>> Lustre-devel mailing list
>>>> Lustre-devel at lists.lustre.org
>>>> http://lists.lustre.org/mailman/listinfo/lustre-devel
>> 
>> 
> 

  reply	other threads:[~2008-09-22  7:13 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-21 23:40 [Lustre-devel] Doubly indexed tree / changelogs Peter Braam
2008-09-22  5:52 ` Alex Zhuravlev
2008-09-22  6:58   ` Peter Braam
2008-09-22  7:05     ` Alex Zhuravlev
2008-09-22  7:13       ` Peter Braam [this message]
2008-09-22  7:26         ` Alex Zhuravlev
2008-09-23  3:49 ` Nathaniel Rutman
2008-09-23  9:20   ` Peter Braam
2008-09-23 21:46     ` Nathaniel Rutman
2008-09-23 22:48       ` Peter Braam
2008-09-23  7:38 ` Nikita Danilov
2008-09-24  2:50   ` Peter Braam

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C4FD66B7.7CDA%peter.braam@sun.com \
    --to=peter.braam@sun.com \
    --cc=lustre-devel@lists.lustre.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.