私は、Cでlibmemcached経由でmemcachedにMYSQLの結果全体を保存したいと思います。これは可能ですか、それともmemcachedに各行要素を別々に保存する必要がありますか?libmemcached mysqlの結果を格納
答えて
結果セットが常に1MBより小さい場合は、結果セット全体を保存することができます。それ以外の場合(結果が1MBを超える場合)、別の解決策を見つける必要があります。 memcacheの各行をあなたのために保存すると、それはおそらく良い解決策です。
値サイズの1MBの制限は、memcacheにコード化されたハード制限です。その周りの唯一の方法は、ソースコードの制限を変更し、memcacheを再コンパイルすることです。
いくつかの説明については、http://groups.google.com/group/memcached/browse_thread/thread/d32434ce77131e48を参照してください。
(注:これはすべて結果を文字列にシリアル化することができると仮定しており、実行できない場合は配列が制限要因ではないため個々の行も格納できません直列化能力。)
はここで間違いなくあなたがそれを行うことができますどのようにSerialize Data Structures in C
結果セット全体を格納するためにどのような関数を使うべきかわかりません。ライブラリ内のset関数はchar *を入力として受け取るだけなので、 –
@ SlavaMarkeyev、はい。結果セットが文字列としてシリアライズ可能な場合のみ、結果セットを格納できます。シリアル化する方法はアプリケーション固有のものです。 –
@ SlavaMarkeyev、私は私の答えにシリアライズに関するノートを追加しました。とにかく、あなたの個々の行をシリアル化することができれば、結果セット全体をシリアライズすることは間違いありません。 –
を議論ポストです。すべての回答をまとめる方法を見つける必要があります。とにかくそれをやりたいのはなぜなのでしょうか?
- 1. 2つのクエリのPHP配列にMySQL結果を格納
- 2. mysqlのクエリ結果を配列に格納する
- 3. 辞書のクエリの結果を格納
- 4. MySQLクエリ結果を文字列に格納する方法
- 5. ストアドプロシージャのデータ結果を格納
- 6. テスト結果をPythonに格納する
- 7. クエリ結果を変数に格納
- 8. mysqlを使用してクエリ結果を変数に格納する方法
- 9. 結果を変数に格納すると奇妙な結果が出る
- 10. array.sortの結果を別の変数に格納する
- 11. 混乱行列の結果を格納するためのループ
- 12. mongooseクエリの結果を他のmongooseクエリに格納
- 13. Powershellの変数にコマンドレットの結果値を格納します。
- 14. 別のフィールドにSolrアナライザの結果を格納
- 15. にPL/pgSQL:テーブル内のループの結果を格納
- 16. ベクトルの結果を格納する再帰関数のセグメンテーションフォルト
- 17. ORACLEのSQLクエリの結果セットを格納する方法?
- 18. 複数のlinqクエリの結果をIQeryableに格納する
- 19. 小数点付きのループと結果をベクトルに格納
- 20. SQLPlusの結果をシェル変数に格納する方法
- 21. django databse textfieldの結果を文字列リストに格納
- 22. AJAXの結果を純粋なJavascriptに格納する
- 23. seqコマンドの結果を配列に格納
- 24. RenderActionの結果を文字列変数に格納
- 25. sqlクエリの結果を変数に格納するvba
- 26. 例えば、機能の繰り返し結果を格納し、
- 27. $ http.getの結果を変数に格納する方法
- 28. 動的ピボットの結果を一時テーブルに格納
- 29. ハンドラの結果をJsonArray vertxに格納する方法は?
- 30. リストにselect SQLの結果レコードを格納する方法
シリアル化ライブラリを使用する代わりに、私自身の抽象化レイヤーを作成して、残りのプログラムでmemcache/sql固有のデータ構造の代わりに使用するようにしてください。これはまさにそれを行う最も簡単な方法ではありませんが、私のプロジェクトにうまく対応します。 –