开发者社区> 宁静_夏天> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Riak

简介: 出处:http://www.oschina.net/p/riak Riak是以 Erlang 编写的一个高度可扩展的分布式数据存储,Riak的实现是基于Amazon的Dynamo论文,Riak的设计目标之一就是高可用。
+关注继续查看

出处:http://www.oschina.net/p/riak

Riak是以 Erlang 编写的一个高度可扩展的分布式数据存储,Riak的实现是基于Amazon的Dynamo论文,Riak的设计目标之一就是高可用。Riak支持多节点构建的系统,每次读写请求不需要集群内所有节点参与也能胜任。提供一个灵活的 map/reduce 引擎,一个友好的 HTTP/JSON 查询接口。

Riak 非常易于部署和扩展。可以无缝地向群集添加额外的节点。link walking 之类的特性以及对 Map/Reduce 的支持允许实现更加复杂的查询。除了 HTTP API 外,Riak 还提供了一个原生 Erlang API 以及对 Protocol Buffer 的支持。

目前有三种方式可以访问 Riak:HTTP API(RESTful 界面)、Protocol Buffers 和一个原生 Erlang 界面。提供多个界面使您能够选择如何集成应用程序。如果您使用 Erlang 编写应用程序,那么应当使用原生的 Erlang 界面,这样就可以将二者紧密地集成在一起。其他一些因素也会影响界面的选择,比如性能。例如,使用 Protocol Buffers 界面的客户端的性能要比使用 HTTP API 的客户端性能更高一些;从性能方面讲,数据通信量变小,解析所有这些 HTTP 标头的开销相对更高。然而,使用 HTTP API 的优点是,如今的大部分开发人员(特别是 Web 开发人员)非常熟悉 RESTful 界面,再加上大多数编程语言都有内置的原语,支持通过 HTTP 请求资源,例如,打开一个 URL,因此不需要额外的软件。在本文中,我们将重点介绍 HTTP API。

所有示例都将使用 curl 通过 HTTP 界面与 Riak 交互。这样做是为了更好地理解底层的 API。许多语言都提供了大量客户端库,在开发使用 Riak 作为数据存储的应用程序时,应当考虑使用这些客户端库。客户端库提供了与 Riak 连接的 API,可以轻松地与应用程序集成;您不必亲自编写代码来处理在使用 curl 时出现的响应。

API 支持常见的 HTTP 方法:GETPUTPOSTDELETE,它们将分别用于检索、更新、创建和删除对象。

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
写了这么多年 CSS,initial 和 inherit 以及 unset 和 revert 还傻傻分不清楚?
写了这么多年 CSS,initial 和 inherit 以及 unset 和 revert 还傻傻分不清楚?
47 0
CDP中的Hive3系列之配置Apache Hive3
升级到 CDP 并迁移旧表后,您可能希望暂时切换到 Hive 旧行为。旧行为可能会解决数据迁移期间脚本的兼容性问题,例如,在运行 ETL 时。 默认情况下,执行 CREATE TABLE 语句会在 Hive 元存储中创建一个托管的 Apache Hive 3 表。您可以更改默认行为以使用旧的 CREATE TABLE 行为。配置旧行为时,CREATE TABLE 会生成外部表。由于完整 ACID 事务表相对于外部表的优势,仅在升级期间建议使用旧行为。
194 0
CDP中的Hive3系列之启动Apache Hive3
由于Hive3版本的变动,在我们使用Hive3前需要我们了解如何正确的启动Hive3.
274 0
《反应式宣言》——The Reactive Manifesto
# 引子 本文比较抽象,不过是Reactive/反应式背后的理念,这些理念在各种各样的Reactive Programming框架上都有落实,细细咀嚼本文,方便大家理解、复用、迁移自己现有的一些知识体系,将其应用到Reactive的系统架构下来。一些词的标准译法还在揣摩,所以会提供A/B这也的形式,欢迎交流。 # 《反应式宣言》正文 >版本 2.0,2014 年 9 月 16 日
2752 0
JDK的安装以及配置
JDK的安装以及配置 JDK(Java Development Kit),顾名思义,是 Java 语言的软件开发工具包(SDK)。
923 0
+关注
宁静_夏天
喜欢编程,java,php,js,golang等,目前主要是golang后端方向.
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Using Spark and Riak for loT
立即下载
Cassandra
立即下载
低代码开发师(初级)实战教程
立即下载