我应该选择哪个:Riak,Riak CS或两者同时?

时间:2014-11-12 00:34:09

标签: architecture riak riak-cs

首先是一些背景,我们有一个应用程序需要存储json数据和媒体资产(图像,录制的声音)。

当看到Riak时,我现在可以看到,我们可以和#34;正常" Riak,因为我们不处理非常大的文件。

然而,快速前瞻我们需要处理更大的文件(专有的二进制测量文件和视频文件),然后Riak CS似乎是一个有吸引力的选择。

我的问题是:我能以什么方式结合这两个版本的Riak?

  1. 我可以直接转到Riak CS并在那里存储JSON数据文件吗?
  2. 是否可以从Riak开始,然后转移到Riak CS,但保留Riak存储后端的数据?
  3. 我可以在同一台服务器上运行Riak和Riak CS(多后端),Riak CS是否与Riak客户端api兼容?
  4. 我应该将两者分开并部署在两个集群上(最少10个节点,5个Riak + 5个Riak CS)?

1 个答案:

答案 0 :(得分:1)

这是1中的4个相关问题!我将避开那些自以为是的“你应该做什么”并且只说明可能的事情。

  1. 是的,您可以在Riak CS中存储小文件。然而,这是Riak之上的另一层,因此请求可能会花费更长的时间。

  2. 是的,可以直接使用Riak实例和Riak CS。我确信Riak CS有一些保留的存储桶名称,但只要你不重叠它们,理论上你应该能够在同一个Riak实例中存储其他数据。请注意,Riak CS使用的Riak存储桶/密钥名称未正确转换为JSON,因此通过HTTP在Riak级别执行的列表操作可能会遇到问题。

  3. 我不认为API是兼容的,但理论上,你可以在同一台服务器上运行2个Riak实例,只要它们使用不同的节点名,不同的目录,并在不同的端口上侦听。那将是很多文件句柄,ram等等,但也可能。

  4. 单个群集可能比一个节点上的多个实例更容易进行故障排除。我还怀疑,如果您需要技术支持,这将是支持的这些选项中唯一的一个。