私はDBISAMとkbMemTableをさまざまな機会に使用しました。
私がDBISAMで気に入っているのは、優れた機能を備えており、通常は非常に信頼性が高いことです。私はこれを大規模なデータベース、全文検索、読み取り専用モード、CGI、およびその他の多くの状況で使用しました。
ただし、kbMemTableまたはSQLiteベースのコンポーネントと比較するとかなり大きいです。また、データベース(またはテーブル)ごとに1つのファイルを作成することはできません。状況によっては、これが大きな欠点になります。
kbMemTableは小さく、少量のデータに最適です。もちろん、メモリ内で実行されるため、少量のデータである必要があります。
いくつかのデスクトップアプリで採用したもう1つのオプションは、TWriter/TReaderを使用してオブジェクト階層との間でデータを直接ダンプすることです。これははるかに最小のオプションであり、データベースを使用する場合に比べて途方もなく高速です。データファイルも小さいです。
ただし、これにはあらゆる種類の欠点があります。フィールドを追加/変更する場合は、バージョン管理をコーディングする必要があります。ただし、メモリ内にある場合を除き、さらに複雑で、マルチユーザーサポートがまったくありません。