kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu mdadm その5 - チャンクサイズについて・チャンクサイズが与える影響・ 推奨及び基準となるチャンクサイズ

チャンクサイズ

  「チャンクサイズ」は、データの読み書きを行う単位のことです。
  アレイの種類によっては、この「チャックサイズ」単位でデータの読み書きを行います。


  ストリップサイズやストライプサイズと表現されることもあります。

  チャンクサイズでデータの分割を行うアレイの種類

    チャンクサイズでデータの分割を行い、データの読み書きを行うアレイの種類は以下のとおりです。

  • RAID 0
  • RAID 4
  • RAID 5
  • RAID 6
  • RAID10

  チャンクとチャンクデータ

    チャンクサイズで区切られた各データは、「チャンクデータ」と表現します。
    広義に「チャンク」と表現されることもあります。

    「チャンク」は、「チャンクサイズ」で区切られた入れ物や箱をイメージすると良いでしょう。


  データの分割例

    HDD3台で構成した「RAID 0」アレイがあるとします。
    チャンクサイズは512KiBとします。

    このアレイに2MiBのファイルを保存する場合、4つのデータに分割されます。(2MiB / 512KiB)
    この時、分割されたデータは、以下のようにHDDに保存されます。


    分割された1つ目のデータは、1番目のHDDに保存されます。
    分割された2つ目のデータは、2番目のHDDに保存されます。
    分割された3つ目のデータは、3番目のHDDに保存されます。
    分割された4つ目のデータは、1番目のHDDに保存されます。

チャンクサイズが与える影響

  チャンクサイズは、データの読み書きのパフォーマンスに影響を与えます。
  論理ボリュームの使い方やハードウェア環境に依存するため、環境により最適なチャンクサイズは異なります。


  最適なチャンクサイズを導き出すには、実際にアレイを作成しベンチマークを作成する必要があります。 

  一般的に、サイズの大きなファイルの読み書きに対しては、大きめのチャンクサイズを指定したほうがパフォーマンスが出やすくなります。
  一方、サイズの小さなファイルの読み書きに対しては、小さめのチャンクサイズを指定したほうがパフォーマンスが出やすくなります。
 

チャンクサイズの指定について

  「mdadm」ではアレイ作成時にチャンクサイズを指定することができます。

  チャンクサイズのデフォルト値

    チャンクサイズの指定を省略した場合は、512KiBが指定されます。

  指定できるチャンクサイズ(RAID 0)

    「RAID 0」でチャンクサイズを指定する場合、チャンクサイズは「4KiB」の倍数である必要があります。

  指定できるチャンクサイズ(RAID 4/5/6/10)

    「RAID 4/5/6/10」でチャンクサイズを指定する場合、チャンクサイズは「4KiB」の倍数かつ、「2の累乗」である必要があります。

推奨及び基準となるチャンクサイズ

  環境により最適なチャンクサイズは異なるため、一概に「このサイズが最適である」と言い切ることはできません。

  しかしそれでは最適なチャンクサイズを調べる際、どのチャンクサイズから調べれば効率が良いのか分かりません。
  またその調査も時間がかかるため、突き詰めて最適化するつもりがないのであれば、何かしら推奨される値が欲しいところです。

  「MDドライバー」では、以下のチャンクサイズを推奨しています。
  最適なチャンクサイズを調べる際、以下の値を基準に調査すると良いでしょう。
  突き詰めて最適化するつもりがないのであれば、以下の値をチャンクサイズに指定すると良いでしょう。
  

  RAID 0/10

    「RAID 0/10」アレイを作成するなら、チャンクサイズは32KiBを基準にすると良いでしょう。
    パフォーマンスのチェックを行うなら、この基準値からチャンクサイズを増加させてパフォーマンスのチェックを行うと良いでしょう。

  RAID 4/5/6

    「RAID 4/5/6」アレイを作成するなら、チャンクサイズは128KiBを基準にすると良いでしょう。
    パフォーマンスのチェックを行うなら、この基準値からチャンクサイズを増加させてパフォーマンスのチェックを行うと良いでしょう。


mdadm
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu CPUfreq その1 - CPUfreqについて・ CPUfreqドライバーについて・ CPUfreqガバナーについて
    CPUfreq   CPUfreqは、CPUのクロック数を動的に変更する機能です。   CPUfreqを利用することで、OSの負荷に応じて動的にCPUのクロック数を調整することができます。  これにより、省電力効果を得ることができます。   CPUfreqを利用する場合...
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Ubuntu 22.04 その79 - 画面ロックの有効・無効を設定するには・画面ロック時の設定をカスタマイズするには
    画面ロックの有効・無効を設定するには 一定時間ユーザーによる操作がない時に、自動的に画面をロックしパスワードで保護したり、画面をブランク状態にできます。
  • Ubuntu 24.04 その93 - Linux kernel 7.0 が利用可能に・Linux kernel 7.0 にアップグレードするには
    Linux kernel 7.0 が利用可能に 現在 Ubuntu 24.04 LTS を利用しているユーザーは、Linux kernel 7.0 へアップグレードできるようになりました。
  • Linux Mint その120 - Linux Mint 19.2のTipsとトラブルシューティング
    Linux Mint 19.2のTipsとトラブルシューティング リリースノートから「Linux Mint 19.2」のTipsとトラブルシューティングを紹介します。
  • Ubuntu 26.04 その56 - amdgpu ドライバーでシステムがフリーズする現象
    amdgpu ドライバーでシステムがフリーズする現象 amdgpu ドライバーでシステムがフリーズする現象が報告されています。
  • Linux その402 - KDE Plasma で実装予定の新機能や改善・録音オプションの追加や VRAM の使用量表示など
    KDE Plasma で実装予定の新機能や改善 2026年7月11日、KDE Plasma で実装予定の新機能や改善が以下で紹介されました。
  • Ubuntu 26.04 その59 - amdgpu ドライバーでパフォーマンス低下のお知らせ
    amdgpu ドライバーでパフォーマンス低下のお知らせ 次期 Linux kernel のアップデートで、amdgpu ドライバーのパフォーマンスが低下するお知らせが出ています。
  • Linux Mint その291 - 次期バージョンで Wayland セッションの提供・Cinnamon の改良など
    Linux Mint 月刊ニュース Linux Mint 開発チームは Linux Mint 月刊ニュースにて、Linux Mint の開発状況や取り組みを紹介しています。
  • Ubuntu 26.04 その45 - linux-image-7.0.0-22-generic でカーネルパニックが発生する
    カーネルパニックが発生する linux-image-7.0.0-22-generic でカーネルパニックが発生する現象が報告されています。
記事のピックアップ
オプション