Reiser5 mengumumkan dukungan untuk Burst Buffer (Data Tiering)

Eduard Shishkin diumumkan peluang baru dikembangkan dalam kerangka proyek Reiser5. Reiser5 adalah a versi sistem file ReiserFS yang didesain ulang secara signifikan, di mana dukungan untuk volume logis yang dapat diskalakan paralel diimplementasikan pada tingkat sistem file, bukan pada tingkat perangkat blok, sehingga memungkinkan Anda mendistribusikan data secara efisien ke seluruh volume logis.

Diantara inovasi yang dikembangkan akhir-akhir ini adalah penyediaan
kesempatan bagi pengguna untuk menambahkan sedikit kinerja tinggi
perangkat blok (misalnya NVRAM) disebut disk proksi, untuk
volume logis yang relatif besar terdiri dari lambat
penggerak anggaran. Hal ini akan menimbulkan kesan bahwa semuanya
volumenya terdiri dari performa tinggi mahal yang sama
perangkat, seperti "disk proxy".

Metode yang diterapkan didasarkan pada pengamatan sederhana bahwa dalam praktiknya disk tidak ditulis secara konstan, dan kurva beban I/O berbentuk puncak. Dalam interval antara "puncak" tersebut, selalu dimungkinkan untuk mengatur ulang data dari disk proxy, menulis ulang semua data (atau hanya sebagian) di latar belakang ke penyimpanan utama yang "lambat". Dengan demikian, disk proxy selalu siap menerima sebagian data baru.

Teknik ini (dikenal sebagai Burst Buffer) awalnya berasal dari
bidang komputasi kinerja tinggi (HPC). Namun ternyata aplikasi ini juga diminati untuk aplikasi biasa, terutama untuk aplikasi yang menuntut integritas data (biasanya berbagai jenis database). Aplikasi tersebut melakukan perubahan apa pun pada file apa pun dengan cara atom, yaitu:

  • pertama, file baru dibuat yang berisi data yang diubah;
  • file baru ini kemudian ditulis ke disk menggunakan fsync(2);
  • setelah itu file baru diganti namanya menjadi yang lama, yaitu secara otomatis
    Membebaskan blok yang ditempati oleh data lama.

    Semua langkah ini, pada tingkat tertentu, menyebabkan dampak yang signifikan
    penurunan kinerja pada sistem file apa pun. Situasi
    membaik jika file baru pertama kali ditulis ke file yang dialokasikan
    perangkat berkinerja tinggi, dan itulah yang terjadi
    sistem file dengan dukungan Burst Buffer.

    Di Reiser5 direncanakan untuk mengirim tidak hanya secara opsional
    blok logis baru dari file tersebut, tetapi juga semua halaman kotor secara umum. Lebih-lebih lagi,
    tidak hanya halaman dengan data, tetapi juga dengan meta data itu
    ditulis pada langkah (2) dan (3).

    Dukungan untuk disk proxy dilakukan dalam konteks pekerjaan biasa
    volume logis Reiser5, diumumkan di awal tahun. Itu adalah,
    sistem agregat "disk proxy - penyimpanan utama" normal
    volume logis dengan satu-satunya perbedaan adalah bahwa disk proxy memiliki prioritas
    di antara komponen volume lainnya dalam kebijakan alokasi alamat disk.

    Menambahkan disk proxy ke volume logis tidak disertai dengan apa pun
    penyeimbangan kembali data, dan penghapusannya terjadi dengan cara yang persis sama
    menghapus disk biasa. Semua operasi disk proxy bersifat atomik.
    Penanganan kesalahan dan penerapan sistem (termasuk setelah sistem crash) terjadi dengan cara yang persis sama seperti jika disk proxy adalah komponen biasa
    volume logis.

    Setelah menambahkan disk proxy, total kapasitas volume logis
    meningkat dengan kapasitas disk ini. Pemantauan ruang bebas
    disk proxy dilakukan dengan cara yang sama seperti untuk komponen volume lainnya, yaitu. menggunakan utilitas volume.reiser4(8).

    Disk proxy harus dibersihkan secara berkala, mis. setel ulang data dari
    itu ke penyimpanan utama. Setelah mencapai stabilitas beta Reiser5
    pembersihan direncanakan otomatis (akan dikelola oleh
    utas kernel khusus). Pada tahap ini, tanggung jawab untuk membersihkan
    ada di tangan pengguna. Menyetel ulang data dari disk proxy ke disk utama
    penyimpanan diproduksi hanya dengan memanggil utilitas volume.reiser4 dengan opsi
    "-B". Sebagai argumen, Anda perlu menentukan titik pemasangan logika
    volume Tentunya Anda harus ingat untuk melakukan pembersihan secara berkala. Untuk
    Anda dapat menulis skrip shell sederhana untuk melakukan ini.

    Jika tidak ada ruang kosong pada disk proxy, semua data
    secara otomatis ditulis ke penyimpanan utama. Pada saat yang sama, secara default
    kinerja FS secara keseluruhan berkurang (karena panggilan terus-menerus
    tata cara melakukan seluruh transaksi yang ada). Secara opsional, Anda dapat mengatur
    mode tanpa kehilangan kinerja. Namun, dalam hal ini disk
    Ruang perangkat proxy akan digunakan dengan kurang efisien.
    Akan lebih mudah untuk menggunakan subbagian metadata (bata) sebagai disk proxy, asalkan dibuat pada perangkat blok berkinerja cukup tinggi.

    Sumber: opennet.ru

  • Tambah komentar