BuntDB
是纯Go开发的、低层级的(low-level)的、可嵌入的key/value内存数据库([IMDB](http://baike.baidu.com/link?url=GAgOJ2nlBYh4WgUMhvu8ImSbjHbGfsX55XrSDyQsHFiVEWrriiSRLD4ZiAqSD0xWQ3nmd_kAobE7YWgspgByRq)),数据持久化存储,遵从ACID,支持自定义索引和geospatial 数据。
BuntDB
旨在给用户提供可靠稳定高效的数据库。
![image](http://static.oschina.net/uploads/space/2016/0720/142850_Njef_1774694.png)
特 性:
*
因为是内存数据库,所以支持快速的读和写
*
可采用简单的API,实现数据库嵌入功能
*
高达4个维度的空间索引,有用的Geospatial 数据
*
支持创建任何数据类型的自定义索引
*
支持String, Uint, Int, Float等内置类型
*
紧密
的代码库
,在
1K
LOC
使用
CLOC
命令
*
具有数据库的可靠性恢复机制,支持 ACID
安装使用:
<pre class="brush:cpp ;toolbar: true; auto-links: false;">$ go get github.com/tidwall/buntdb</pre>
使用BuntDB open()函数打开创建数据库
<pre class="brush:cpp ;toolbar: true; auto-links: false;">package mainimport ( "log"
"github.com/tidwall/buntdb")func main() { // Open the data.db file. It will be created if it doesn't exist.
db, err := buntdb.Open("data.db") if err != nil {
log.Fatal(err)
} defer db.Close()
...
}</pre>