モビルファイトで使っていたデータベース

モビルファイトではGDBMというデータベースを使っていた。

一般的にデータベースというとRDBMSのMySQLやMariaDBが主流であったが、
ゲームの性質上これらのデータベース程、厳密に管理しなくて良いと思い、
RDBMSではなく、DBMの一種であるGDBMを用いていた。

DBMにもいくつかの種類があり、SDBMやNDBM、QDBM等が存在する。
色々と利点や欠点があるのだが、
ゲーム開発初期はプログラムの知識に乏しかったため、
単純にデータの制限がないGDBMを選んだ。

今考えると高速なQDBMが正しかったかもしれないが、今更しょうがない。
GDBMではデータの最適化を自動で行わないため、
ただ使い続けているとデータベースがどんどん肥大化していく、
これを解決するために、自分でデータを再構築する処理も入れる必要がある。

最初はGDBMよりもSQLiteを使うことも考えたが、
多人数が同時接続する際、排他制御(データの干渉を防ぐこと)を考えると、
スピードや安全性の観点からSQLiteよりもDBMの方が適していると考え、
最終的にはGDBMで落ち着く事になった。

なんとなく記事を書いてみたが参考になれば幸いである。

ブログ主が運営しているゲームです。
こちらよりどうぞ