В настоящее время я использую очень простой одноузловой ящик Cassandra с файлами данных на одном диске. Я собираюсь добавить пару SSD в коробку и собираюсь добавить каждый SSD в качестве другого каталога данных в файл cassandra.yaml. Если я остановлю Cassandra, установлю SSD, переместите файлы данных с (текущего) механического диска на один из SSD, а затем добавлю каталоги SSD в файл yaml, а затем снова запустите Cassandra, он автоматически начнет балансировать между двумя диски? Есть ли какие-либо проблемы, связанные с перенастройкой диска и настройки дискового пространства, о которых мне следует знать?
В более новых версиях Cassandra (начиная с v1.1.0 IIRC) вы можете выбрать, где отдельные семейства столбцов будут храниться на диске - так что да, вы можете распределить нагрузку определенных семейств столбцов (и журнала транзакций) на свои твердотельные накопители.
Если вы добавляете твердотельные накопители за уровнем RAID (скажем, чередование рейдов 0 - кассандра записывает блоки по 32 КБ, поэтому блоки размером 32 КБ кажутся хорошим выбором для размера полосы), тогда вам будет полезно только беспокоиться о том, чтобы разместить все это в одном месте и вы получите очень значительное увеличение пропускной способности и операций ввода-вывода.
Мне также кажется, что ваш подход к выполнению движения подходит мне.
Кстати, я действительно как ZFS для этого приложения. Я могу выбрать, чтобы большая часть хранилища была предоставлена дешевой вращающейся ржавчиной, а затем ускорить чтение, поместив кеш L2 ARC на SSD, и при необходимости ускорить запись, поместив ZIL на SSD (менее актуально в моем опыте с cassandra).