永続メモリー・データベース用のDAX対応ファイル・システムの作成

永続メモリー・データベース用のDAX対応ファイル・システムを作成して使用する方法について説明します。

XFSベースのDAXファイル・システムをPMEMデータベースのファイル・ストアとして使用する必要があります。永続メモリー・データベースのスケーラビリティおよびパフォーマンスは、正しい構成がないと影響を受けるため、次の構成ステップを使用してXFSファイル・システムを使用することをお薦めします。

この構成により、XFSのエクステントが2 MBにアラインメントされ、ファイルをOracleプロセスにマップする際に2 MBのページを使用できるようになります。

  1. アラインメントが2 MBでFSDAXモードのネームスペースがあることを確認します。
    $ ndctl list
    [
      {
        "dev":"namespace0.0",
        "mode":"fsdax",
        "map":"dev",
        "size":91953823744,
        "uuid":"e11456a7-b26a-4409-b31a-f11b8ee06e5a",
        "sector_size":512,
        "align":2097152,
        "blockdev":"pmem0"
      }
    ]
  2. PMEMストレージ・デバイスにパーティションを2つ作成します。メタデータ用に約2%の小さいパーティションが1つと、データ用に残りの分です。
  3. データ・パーティションの開始セクターが2 MBにアラインメントされていることを確認します。XFSファイル・システムの作成時にデータ・パーティションがリアルタイム・デバイスとして構成され、2 MBにアラインメントされたエクステントが保証されていることを確認します。fdisk -lコマンドを実行する際、データ・パーティションの開始セクター番号は4096の倍数である必要があります。

    この例では、データ・パーティション/dev/pmem0p2は4096の倍数であるセクター・オフセットで始まります。

    $ sudo /sbin/fdisk -l /dev/pmem0
    
    Disk /dev/pmem0: 92.0 GB, 91953823744 bytes, 179597312 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disk label type: dos
    Disk identifier: 0x1ef2bc18
    
          Device Boot      Start         End      Blocks   Id  System
    /dev/pmem0p1            2048     4196351     2097152   83  Linux
    /dev/pmem0p2         4198400   179597311    87699456   83  Linux
  4. データ・パーティションをリアルタイム・デバイスとし、エクステント・サイズが2 MBのXFSファイル・システムを作成します。
    mkfs.xfs -m rmapbt=0,reflink=0 -d rtinherit=1 -r rtdev=/dev/pmem0p2,extsize=2m /dev/pmem0p1
  5. 次のリアルタイム・デバイス・マウント・オプションを使用して、永続メモリー(PMEM)デバイスをDAXでマウントします。
    mount /dev/pmem0p1 /mnt -o dax,rtdev=/dev/pmem0p2