リレーショナルデータベースへの永続化はその辺のORMのライブラリ使えば楽だけどね。このアプリは大して複雑じゃないからActive Record系が手っ取り早い。


勉強がてらなら、オブジェクトの永続化を抽象化するリポジトリパターンを独自で組んでみてもいいのでは。

Threadなどのオブジェクト(エンティティ)は自身の永続化には関知せず、ThreadRepositoryなどリポジトリクラスを作って、DBとのやり取りはそちらのクラスの責務にする。