「DBreeze」の版間の差分
imported>Administrator 編集の要約なし |
imported>Administrator 編集の要約なし |
||
| (同じ利用者による、間の1版が非表示) | |||
| 9行目: | 9行目: | ||
* Selectで取得(KVSなので戻ってくるのは1行) | * Selectで取得(KVSなので戻ってくるのは1行) | ||
* Commitでバッチ書き込み | * Commitでバッチ書き込み | ||
== 使い方 == | |||
<source> | |||
using System; | |||
using DBreeze; | |||
class MainClass | |||
{ | |||
public static void Main(string[] args) | |||
{ | |||
var engine = new DBreezeEngine("db"); | |||
using (var transaction = engine.GetTransaction()) | |||
{ | |||
// KVSなのでval2で上書き | |||
transaction.Insert("table", "key", "val1"); | |||
transaction.Insert("table", "key", "val2"); | |||
// スコープ内であればcommit前のも取れる | |||
var row = transaction.Select<string,string>("table","key"); | |||
Console.WriteLine(row.Value); | |||
// バッチ書き込み | |||
transaction.Commit(); | |||
} | |||
} | |||
} | |||
</source> | |||
== 外部リンク == | == 外部リンク == | ||
* https://github.com/hhblaze/DBreeze | * https://github.com/hhblaze/DBreeze | ||
2018年3月8日 (木) 03:03時点における最新版
DBreezeとは、C#で書かれたオンディスク型のKeyValueストレージである。 ストアではなくストレージ。
KVSだが入出力メソッドの名称がSQL系っぽい名称なのが特徴。
- GetTransactionでロック取得(スレッドセーフ対応)
- Insertで保存(KVSなのでUpdateなどない。上書き)
- Selectで取得(KVSなので戻ってくるのは1行)
- Commitでバッチ書き込み
使い方[編集 | ソースを編集]
using System;
using DBreeze;
class MainClass
{
public static void Main(string[] args)
{
var engine = new DBreezeEngine("db");
using (var transaction = engine.GetTransaction())
{
// KVSなのでval2で上書き
transaction.Insert("table", "key", "val1");
transaction.Insert("table", "key", "val2");
// スコープ内であればcommit前のも取れる
var row = transaction.Select<string,string>("table","key");
Console.WriteLine(row.Value);
// バッチ書き込み
transaction.Commit();
}
}
}