chatbox/simple-kvs

simple scalable KVS

Installs: 25

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 3

Forks: 0

Type:project

dev-master 2015-03-10 03:47 UTC

This package is not auto-updated.

Last update: 2024-05-11 14:34:25 UTC


README

スケーラブルなKVS機能

機能

  • ドライバベースでストレージの種別を問わず使えるKVSモデル。
  • データCRUDの抽象化。CRUD4種は一通り対応する。
  • 直列化については考えない。SerializeとかJSONとか考えてたらInterfaceが冗長になる。

対象

  • 他のテーブル系とJOINしないような独立したデータ群

  • 頻繁に挿入がおき、KVS形式でのloadが行われるもの

  • 揮発性データ群。

  • 個々のデータ属性に応じた細かいKPIが不要な物。

  • スケーラビリティを確保したくても、リーンスタートでRedisは冗長なので、  それ的な機能をDBで仮モック運用しつつ、あとで何とか的なやつ。

ドライバの種類

必要に応じて追加していく

  • DB(Eloquent) : Redis ライクに有効期限のサポート。論理削除

Usage


$driver = new SimpleDB($config);

$kvs = new SimpleKVS($driver);

$model = $kvs->fetch($key);

echo $model->getKey();
echo $model->getValue();

$newValue = $kvs->set($newKey,$newValue);

$model->update($brandNewValue);
$model->delete();