| To: | Dave Chinner <david@xxxxxxxxxxxxx> |
|---|---|
| Subject: | Re: bad performance on touch/cp file on XFS system |
| From: | Zhang Qiang <zhangqiang.buaa@xxxxxxxxx> |
| Date: | Wed, 27 Aug 2014 16:53:17 +0800 |
| Cc: | Greg Freemyer <greg.freemyer@xxxxxxxxx>, xfs-oss <xfs@xxxxxxxxxxx> |
| Delivered-to: | xfs@xxxxxxxxxxx |
| Dkim-signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=1R3FjxzDCmWAKFygncMrfQBUXq0gXJRz37C660++KNo=; b=rrNVvHp6HNDGgozUTDDIFATUI4kP5PJvoGyt84Vh9XYhYZQsuOjBwzG/5E6CP3hGam D1O9WSqSkV+kjt9ct18MVc+e5Ldc/jXjTbg0sdJeiPHeNApxS13GH7DKkrENr1maIPKf YxTvrDIkb4e35ekBr7Ki3+2YkNwG71ZA/oBvaHNLXcvoo/HbcBU26U9bNcgFg/zPaedM qFZSvOl/xdUgsU7x14MiDbet1RfkQMi0H4HAgQsDQ/JayG5gtI/yqADTXo2eNx4KeUdx N83MYimnqbzfV1lfF1OMrRridVMfTA5+CVI5dgJLnzWNEHDzF8I511o2C4+DtyLIJm0r HnUg== |
| In-reply-to: | <20140826131354.GK20518@dastard> |
| References: | <CAKEtwsWxZseS8M+O7vSR2FRXr4gjVQ0RDO8ok+jMPWq-8jPEeA@xxxxxxxxxxxxxx> <20140825051801.GY26465@dastard> <CAKEtwsXiVKTWAW+YszjNnFnD4_Ld7g2qXEvw48A-SitYSGyXHA@xxxxxxxxxxxxxx> <20140825090843.GE20518@dastard> <CAKEtwsU4gywG7fVVMVU1Y_TG9Pgg_-sFV0=SPg_7Ob5EV6FTew@xxxxxxxxxxxxxx> <20140825222657.GF20518@dastard> <CAGpXXZL2=ynv4x6hhBSsBPZmBG9Ac8mPOgE-Ekjs3tLvQO9Uaw@xxxxxxxxxxxxxx> <20140826023754.GH20518@dastard> <CAKEtwsW=6Wh3rdaNvmNbiOq1iUm+=xAwL0FsNhcmpKwkQrN9Ww@xxxxxxxxxxxxxx> <20140826131354.GK20518@dastard> |
|
2014-08-26 21:13 GMT+08:00 Dave Chinner <david@xxxxxxxxxxxxx>:
OK. How I can see Âthe layout number of inodes on each AGs? Here's my checking steps: 1) Check unmounted file system first: [root@fstest data1]# xfs_db -c "sb 0" Â-c "p" /dev/sdb1 |egrep 'icount|ifree' icount = 421793920 ifree = 41
[root@fstest data1]# xfs_db -c "sb 1" Â-c "p" /dev/sdb1 |egrep 'icount|ifree' icount = 0 ifree = 0 [root@fstest data1]# xfs_db -c "sb 2" Â-c "p" /dev/sdb1 |egrep 'icount|ifree'
icount = 0 ifree = 0 [root@fstest data1]# xfs_db -c "sb 3" Â-c "p" /dev/sdb1 |egrep 'icount|ifree' icount = 0 ifree = 0 2) mount it with inode64 and create many files:
[root@fstest /]# mount -o inode64,nobarrier /dev/sdb1 /data [root@fstest /]# cd /data/tmp/ [root@fstest tmp]# fdtree.bash -d 16 -l 2 -f 100 -s 1 [root@fstest /]# umount /data 3) Check with xfs_db again: [root@fstest data1]# xfs_db -f -c "sb 0" Â-c "p" /dev/sdb1 |egrep 'icount|ifree' icount = 421821504
ifree = 52 [root@fstest data1]# xfs_db -f -c "sb 1" Â-c "p" /dev/sdb1 |egrep 'icount|ifree' icount = 0 ifree = 0 So, it seems that inodes only on first AG. Or icount/ifree is not the correct value to check, and how should I check how many inodes on each AGs?
I am finding Âa way to improve the performance based on current filesystem and kernel just remounting with inode64, I am trying how to make all inodes redistribute on all AGs averagely.
Is there any good way?, for example backup half of data to another device and remove it, then copy back it.
OK, I see.Â
OK, this is a social networking website back end servers, actually the CDN infrastructure, and different server located different cities. We have a global sync script to make all these 100 servers have the same data. For each server we use RAID10 and XFS (CentOS6.3). There are about 3M files (50K in size) generated every day, and we track the path of each files in database. Do you have any suggestions to improve our solution? |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Goodbye from our newsletter, Webmaster |
|---|---|
| Next by Date: | mount options question, Marko Weber|8000 |
| Previous by Thread: | Re: bad performance on touch/cp file on XFS system, Dave Chinner |
| Next by Thread: | Re: bad performance on touch/cp file on XFS system, Dave Chinner |
| Indexes: | [Date] [Thread] [Top] [All Lists] |