単一のLinuxサーバーで異なるファイルシステムを実行した場合のパフォーマンスへの影響


13

著書「HBaseの:決定的なガイド」のように述べています

単一のサーバーに異なるファイルシステムをインストールすることはお勧めしません。これは、異なるファイルシステムをサポートするためにカーネルがバッファキャッシュを分割する必要があるため、パフォーマンスに悪影響を与える可能性があります。特定のオペレーティングシステムでは、これがパフォーマンスに壊滅的な影響を与える可能性があることが報告されています。

これは本当にLinuxに当てはまりますか?バッファキャッシュが300 MBを超えるのを見たことがなく、最新のサーバーの多くはRAMがギガバイトであるため、異なるファイルシステム間でバッファキャッシュを分割しても問題はありません。私は何か他のものが欠けていますか?


1
著者にメール/ツイートを送信してみてください。入力してみましょう。
ドランアンテヌッチ

回答:


14

バッファキャッシュの分割は有害ですが、その影響は最小限です。私はそれが非常に小さいので、基本的に測定することは不可能だと思います。

異なるマウントポイント間のデータも共有できないことを覚えておく必要があります。

異なるファイルシステムは異なる割り当てバッファを使用しますが、そこに座ってきれいに見えるためだけにメモリが割り当てられるわけではありません。slabtop3つの異なるファイルシステム(XFS、ext4、btrfs)を実行しているシステムのデータ:

  OBJSアクティブ使用OBJサイズスラブOBJ /スラブキャッシュサイズ名 
 42882 42460 99%0.70K 1866 23 29856K shmem_inode_cache
 14483 13872 95%0.90K 855 17 13680K ext4_inode_cache
  4096 4096 100%0.02K 16256 64K jbd2_revoke_table_s
  2826 1136 40%0.94K 167 17 2672K xfs_inode
  1664 1664 100%0.03K 13128 52K jbd2_revoke_record_
  1333886 66%1.01K 43 31 1376K btrfs_inode_cache
(他の多くのオブジェクト)

ご覧のとおり、実際にサイズの大きいキャッシュの使用率は90%を超えています。そのため、複数のファイルシステムを並行して使用している場合、コストはシステムメモリの5%を失うことにほぼ等しく、コンピューターが専用ファイルサーバーでない場合は少なくなります。


slabtopコマンドについて通知してくれた+1!
スコット

これらのキャッシュは相互に排他的であるため、実際には重要ではありません(ただし、リソースに制約のあるシステムに影響を与える可能性があります)。
poige

5

マイナスの影響はないと思います。同じサーバー設定でext3 / ext4とXFS(さらにはZFS)が混在していることがよくあります。実行しているハードウェアを考えると、パフォーマンスが予想よりも低いとは言いません。

[root@Lancaster ~]# mount
/dev/cciss/c0d0p2 on / type ext4 (rw)
/dev/cciss/c0d0p7 on /tmp type ext4 (rw,nobarrier)
/dev/cciss/c0d0p3 on /usr type ext4 (rw,nobarrier)
/dev/cciss/c0d0p6 on /var type ext4 (rw,nobarrier)
vol2/images on /images type zfs (rw,xattr)
vol1/ppro on /ppro type zfs (rw,noatime,xattr)
vol3/Lancaster_Test on /srv/Lancaster_Test type zfs (rw,noatime,xattr)

特定のシナリオが心配ですか?どんなファイルシステムが機能しますか?どんなディストリビューションをしていますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.