web-dev-qa-db-ja.com

MySQLClusterに値を格納するようにMemcachedを構成するためのヘルプが必要

MySQL Cluster7.2でMemcachedの実装に取り​​組んでいます。次のパラメーターを使用してmemcachedをインストールして構成しました。

PORT="11211" 
USER="mysql" 
MAXCONN="1024" 
CACHESIZE="1024" 
OPTIONS="" 

ただし、MemcachedはMySQLエンジンに関係なく機能しています(つまり、Memcachedに挿入すると、データベースに保存されません)

Ndbエンジンにアクセスし、memcacheとデータベースの両方に値を保存するようにパラメーターを指定するのを手伝ってくれる人はいますか?

両者の関係がわかりません。

3
Deepak M

私はこれが可能だとは思わない。 FAQから MySQLおよびMemcacheセクション:

memcachedは、データベースの書き込みでは何の役割も果たしません。これは、データベースからすでに読み取られたデータをRAMにキャッシュする方法です。

したがって、memcachedに値を挿入しても、MySQLデータベースが更新されることは期待できません。大きな問題の1つは、memcachedがそのデータを保存する方法と場所を認識していないことです。それはRAMのキー/値ストアだけです。

同じことは逆に行くことには当てはまりません。データベース内のデータを変更し、memcacheで更新することができます。同じFAQから:

MemcachedにMySQLUDFを使用して、memcachedサーバーに値を直接設定するステートメントを作成するか、トリガーまたはストアドプロシージャを使用してそれを行うことができます。

必須 役立つリンク MySQLUDFドキュメントへ。

1
Derek Downey

MySQL Cluster7.2用のMemcachedAPIを使用するための基本的なドキュメントは http://dev.mysql.com/doc/refman/5.5/en/mysql-cluster-ndbmemcache.html から始まります。

Memcachedコマンドラインで、「-Endb_engine.so」のようなオプションを指定する必要があります。 Memcachedには「プラグ可能なエンジン」アーキテクチャがあり、MySQLClusterコンポーネントはNDBエンジンとして実装されています。 memcachedが正しいエンジンで起動すると、次のようなログメッセージが表示されます。


01-Mar-2012 11:27:27 PST NDB Memcache 5.5.20-ndb-7.2.5 started [NDB 7.2.5; MySQL 5.5.20]
Contacting primary management server 
2
JD Duncan

JDの応答をフォローアップするために、MySQLClusterへのMemcachedAPIの使用例を http://www.clusterdb.com/mysql-cluster/scalabale-persistent-ha-nosql-memcache-)で表示できます。 storage-using-mysql-cluster /

データベースにメタデータを設定することで、特定のキーと値のペアをMemcached、MySQL Cluster、またはその両方に保存するかどうかを選択できます。

1
Andrew Morgan