0

データベースの種類 (MySQL、SQLite など) の比較表が必要です。見つからない。

私の使用例は、分散ハッシュ テーブルにオブジェクトのストレージを実装することです。次のようなデータベース ソリューションが必要です。

  • ソートが速い
  • 単純化(ユーザーなし、できれば複数のテーブルなどの追加構造なし)
  • 同時(可能であれば)
  • マルチプラットフォーム
  • ファイルベース (主にメモリに保存されない)
  • 一元化された

Goでプログラミングしていきます。

私が理解しているように、キーで識別されるオブジェクトを保存しているため、ドキュメント指向データベースと呼ばれるものが必要だと思います。

編集: DHT を実装している間、アクセス数などのオブジェクトに関するメタデータも保存します。TLL (Time to Live) を使用することもお勧めします。

4

1 に答える 1

2

「ドキュメント指向」は、私があなたが望むものとは言えません。おそらく最も単純なタイプの NoSQL である「キー値ストア」が必要だと思います。次のようなことができます。

> set "key" value
"OK"
> get "key"
"value"

そのため、redisをお勧めします。これは、より重くて構造化された代替手段と比較して、快適に「軽い」と思います。機能的なインタラクティブ シェルであるTry Redisで試すことができます。


編集: あなたのコメントと編集は、引き続き Redis を推奨します。Redis には、次の 2 つのコマンドの形式の TTL がexpireありexpireatます。さらに、ニーズを満たすハッシュを許可します(私が理解しているように):

> hmset POST:dd68f250-c3f2-11e1-9b21-0800200c9a66 _timestamp 1341198420 title "An Example" content "This is an example of a representation of a blog post (or something) in Redis."
"OK"
> hgetall POST:dd68f250-c3f2-11e1-9b21-0800200c9a66
{"_timestamp":"1341198420","title":"An Example","content":"This is an example of a representation of a blog post (or something) in Redis."}
> expire POST:dd68f250-c3f2-11e1-9b21-0800200c9a66 60
true
> ttl POST:dd68f250-c3f2-11e1-9b21-0800200c9a66
53
于 2012-07-02T02:56:02.893 に答える