私はネイティブコードアプリケーションに永続性を追加するソリューションを探しています。シンプル(SQLなし)ですばやく、最も重要な信頼性を備えている必要があります。シンプルで高速で信頼性の高いデータベース(NoSQL)
私が考えることができる最良のアプローチは、メモリマップされたファイルを使用することです。これは単純で高速ですが、単純な値をプレーンデータ配列に "メモリ"で格納するだけです。しかし、私はそれが非常に信頼できるとは思わない - 停電は、データベースが矛盾した状態または壊れた状態のままになる可能性があります。メモリマップされたファイルのグループをトランザクションでディスクに同期させることができれば解決できるはずですが、可能だとは思いません。また、ファイルシステムがスナップショットやCOW複製(例えばBrtfs)をサポートしていない限り、バックアップはファイルのコピー中にアプリケーションを完全に停止する必要があることを意味します。
もっと良いアイデアはありますか?
メモリ≠持続性。 – coreyward
SQLはありません、SQLiteはどうですか?あなたが避けようとしているデータベースですか? SQLiteは単なるフラットファイルです。 – caesay
@coreyward:ええと、メモリマップされたファイルは何ですか?ファイルの「メモリ」を編集すると、ディスク上のファイルも編集されます。ただちに編集する必要はありません。 @トミー:私は文字列、文字列エスケープなどとの無意味な変換を避けたいだけです。 –