Назад | Перейти на главную страницу

Файловая система предпочитает сначала писать низкий LBA?

Возможно, название сбивает с толку, но позвольте мне немного пояснить ...

Наши серверы mysql (на виртуальной машине xen) иногда генерируют огромные файлы tmp на диске. Поэтому нам нужен большой tmpdir для их хранения. И мы решили смонтировать tmpdir на SSD для лучшей производительности. Но, как вы знаете, SSD стоит дорого, и mysql не всегда генерирует такие огромные файлы tmp. Так что если мы дадим каждой виртуальной машине mysql большой SSD, то это пустая трата. Таким образом, мы хотим предоставить каждому tmpdir (например, 10G) только небольшой SSD (фактически виртуальный диск на xen SSD).

Но, как было сказано ранее, иногда mysql создает огромные файлы tmp размером более 10 ГБ. Если это произойдет, запросы mysql не будут выполнены. Итак, мы хотим, чтобы она была такой:

объедините ssd и hdd в один диск (чтобы его можно было смонтировать в mysql tmpdir). когда ssd использует все пространство, используйте hdd.

Тогда я подумал, что dmseupt или LVM, возможно, справятся с этим. Итак, я провел простой тест:

1 SSD 0,5 ГБ | 1 жесткий диск 10G | Логический объем, охватывающий два диска выше | Файловая система ext4 в логическом томе выше

И используйте инструмент dd для создания некоторого файла размером 0,3 G. Затем я вижу, что использование SSD увеличилось на 0,3 ГБ, а жесткий диск не изменился. До сих пор все отлично! Но когда я удаляю этот файл, затем создаю, затем удаляю ... так и поступайте.

Оказывается, использование места на жестком диске постоянно увеличивается!

Так я гостевая доза ext4 не склонна перезаписывать удаленный файл? Можем ли мы отключить эту функцию, или другая файловая система предпочитает сначала писать с низким LBA?

Спасибо за прочтение!

Вы хотите совместить низкую стоимость вращающихся дисков с высокой производительностью твердотельных накопителей? Да, это возможно: гибридные пулы хранения - отличная идея. Однако я не думаю, что вы планируете изобретать заново гибридное хранилище - хорошая идея.

Гибридное хранилище прекрасно реализовано в файловой системе ZFS. Вы можете использовать ZFS бесплатно сегодня:

  1. Попробуйте развернуть отдельную виртуальную машину в качестве сервера хранения ZFS под управлением Nexenta, OpenIndiana или FreeBSD по вашему выбору.
  2. Создайте пул устройств хранения ZFS с соответствующими твердотельными накопителями для ZIL (кэш записи) и L2ARC (кеш чтения).
  3. Обслуживайте нужные вам гибридные тома хранения либо в качестве целей iSCSI, либо, что наиболее целесообразно в вашей среде.
  4. Позвольте ZFS автоматически управлять тем, какие блоки хранятся в RAM или SSD, а также на вращающихся дисках.