Noms:灵感来自Git的数据库

原文Noms – A versioned, forkable, syncable database
作者:Noms 翻译赖信涛 责编:仲培艺

Noms是一个类似于Git的去中心化的数据库。支持Fork,混合版本,同步等。目前已经在GitHub上开源,并且有两个编程语言的实现。一个是Go,一个是JavaScript。在Github上,还提供了很多实用工具以及应用范例。

关于Noms

Nom相比于其它数据库,主要有以下不同:

  • Content-addressed 如果你想要往Noms存放数据,不必担心要插入的数据是否存在。重复的数据在Noms中会被自动忽略。在Noms里,没有更新,只有插入;
  • Append-only 如果你想向Noms提交什么数据,不必担心覆盖的问题。你添加的记录都有历史版本。默认情况下,Noms永远不会删除数据,你可以查看数据库的整个历史版本,比较两次提交的不同,或者回退到之前的任何一个版本;
  • Typed 任何数据值,数据表和数据库的版本,都有一个类型(type),当你添加数据的时候,会自动生成。如果你对自己足够自信,也可以自己实现Noms对类型的处理;
  • Decentralized 如果我给你一份数据库,你和我都可以同时修改数据,互不影响。一段时间之后可以合并在一起。

Setup

Noms支持MacOSX和Linux。你可以自己从源代码变异Windows版本,一般情况下都能正常工作,但是并不受官方支持。

  1. 下载Noms最新版本
  2. 解压tar -xzf noms-*.tar.gz
  3. 运行

    ./noms ds http://demo.noms.io/cli-tour

    ./noms log http://demo.noms.io/cli-tour::sf-film-locations

Explore


讨论

niftich说:像这样的开源技术非常好。这可以用来做分布式的文件编辑应用。或者其它想要做分布式多个示例并支持以后合并的应用。

aboodman(作者)说: 以下介绍一些资源:一个原型查询语言,以及如何在Noms中创建索引的示例(https://www.youtube.com/watch?v=fv6_T5yaWns);如何合并以及处理潜在的冲突(https://www.youtube.com/watch?v=–7dgoJBdjU


2016年11月18日-20日,由CSDN重磅打造的年终技术盛会SDCC 2016中国软件开发者大会将在北京举行,大会秉承干货实料(案例)的内容原则,本次大会共设置了12大专题、近百位的演讲嘉宾,并邀请业内顶尖的CTO、架构师和技术专家,与参会嘉宾共同探讨电商架构、高可用架构、编程语言、架构师进阶、微信开发、前端、平台架构演进、基于Spark的大数据系统设计、自动化运维与容器实践、高吞吐数据库系统设计要领、移动视频直播技术等。10月14日仍是五折抢票,最低1400元,注册参会

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值