All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexey Lyashkov <alexey.lyashkov@gmail.com>
To: Andreas Dilger <adilger@dilger.ca>
Cc: Theodore Ts'o <tytso@mit.edu>,
	Artem Blagodarenko <artem.blagodarenko@gmail.com>,
	linux-ext4 <linux-ext4@vger.kernel.org>,
	Yang Sheng <yang.sheng@intel.com>,
	Zhen Liang <liang.zhen@intel.com>,
	Artem Blagodarenko <artem.blagodarenko@seagate.com>
Subject: Re: [PATCH] Add largedir feature
Date: Mon, 20 Mar 2017 14:34:31 +0300	[thread overview]
Message-ID: <AC9DD60D-37A5-458B-AFA2-5EDDAAFD5E9E@gmail.com> (raw)
In-Reply-To: <2F91584E-6351-4523-9821-54AD6A7CD889@dilger.ca>


> 
>> I brought up the 32-bit inode limit because Alexey was using this as
>> an argument not to move ahead with merging the largedir feature.  Now
>> that I understand his concerns are also based around Lustre, and the
>> fact that we are inserting into the hash tree effectively randomly,
>> that *is* a soluble problem for Lustre, if it has control over the
>> directory names which are being stored in the MDS file.  For example,
>> if you are storing in this gargantuan MDS directory file names which
>> are composed of the 128-bit Lustre FileID, we could define a new hash
>> type which, if the filename fits the format of the Lustre FID, parses
>> the filename and uses the low the 32-bit object ID concatenated with
>> the low-32 bits of the sequence id (which is used to name the target).
> 
> No, the directory tree for the Lustre MDS is just a regular directory
> tree (under "ROOT/" so we can have other files outside the visible
> namespace) with regular filenames as with local ext4.  The one difference
> is that there are also 128-bit FIDs stored in the dirents to allow readdir
> to work efficiently, but the majority of the other Lustre attributes
> are stored in xattrs on the inode.

To make picture clean. OST side is regular FS with 32 directories where a stripe objects is live.
With current 4G inodes limit each directory will filled with up 100k regular files.
Files allocated in batch, up to 20k files per batch. Allocated object used on MDT side to make mapping between metadata objects and data for such file.
I worry about it part, not about MDT. these directories have a large number creations/unlinks and performance degradation started after 3M-5M creations/unlinks.
With Large dir feature i think this performance problems may deeper.


Alexey 

  reply	other threads:[~2017-03-20 11:35 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-16  9:51 [PATCH] Add largedir feature Artem Blagodarenko
2017-03-16 21:44 ` Andreas Dilger
2017-03-17  6:15   ` Alexey Lyashkov
2017-03-17 20:51     ` Andreas Dilger
2017-03-18  8:16       ` Alexey Lyashkov
2017-03-18 16:29         ` Theodore Ts'o
2017-03-18 17:17           ` Alexey Lyashkov
2017-03-19  0:39             ` Theodore Ts'o
2017-03-19  4:19               ` Alexey Lyashkov
2017-03-19  6:13               ` Andreas Dilger
2017-03-19  5:38           ` Andreas Dilger
2017-03-19 13:34             ` Theodore Ts'o
2017-03-19 23:54               ` Andreas Dilger
2017-03-20 11:34                 ` Alexey Lyashkov [this message]
2017-03-20 14:20                   ` Theodore Ts'o
2017-03-21 15:38                     ` Andreas Dilger
2017-03-20 11:42                 ` Theodore Ts'o
2017-04-30  0:59 ` Theodore Ts'o
2017-05-01 18:58   ` Eric Biggers
2017-05-01 23:39     ` Andreas Dilger
2017-05-02  2:44       ` Theodore Ts'o

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=AC9DD60D-37A5-458B-AFA2-5EDDAAFD5E9E@gmail.com \
    --to=alexey.lyashkov@gmail.com \
    --cc=adilger@dilger.ca \
    --cc=artem.blagodarenko@gmail.com \
    --cc=artem.blagodarenko@seagate.com \
    --cc=liang.zhen@intel.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    --cc=yang.sheng@intel.com \
    /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.