Architecture 我应该选择哪一个:Riak、Riak CS还是同时选择两者?

Architecture 我应该选择哪一个:Riak、Riak CS还是同时选择两者?,architecture,riak,riak-cs,Architecture,Riak,Riak Cs,首先,我们有一个应用程序,它需要存储json数据和媒体资产(图像、录制的声音) 当查看Riak时,我可以看到现在我们可以使用“普通”Riak,因为我们不处理非常大的文件 然而,展望未来,我们需要处理更大的文件(专有二进制测量文件和视频文件),然后Riak CS似乎是一个有吸引力的替代品 我的问题是:我可以用什么方式组合这两个版本的Riak 我可以直接使用Riak CS并在其中存储JSON数据文件吗 是否可以从Riak开始,然后转移到Riak CS,但保留Riak存储后端的数据 我可以在同一台服务

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

当查看Riak时,我可以看到现在我们可以使用“普通”Riak,因为我们不处理非常大的文件

然而,展望未来,我们需要处理更大的文件(专有二进制测量文件和视频文件),然后Riak CS似乎是一个有吸引力的替代品

我的问题是:我可以用什么方式组合这两个版本的Riak

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

  • 这是1中的4个相关问题!我将避免固执己见的“你应该做什么”,只是说明什么是可能的

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

  • 是的,可以直接使用Riak实例,也可以为Riak CS使用Riak实例。我确信Riak CS有一些保留的bucket名称,但只要您不重叠这些名称,理论上,您应该能够在同一Riak实例中存储其他数据。请注意,尽管Riak CS使用的Riak bucket/key名称不能正确转换为JSON,但通过HTTP在Riak级别执行的列出操作可能会有问题

  • 我认为这些API不兼容,但从理论上讲,您也可以在同一台服务器上运行两个Riak实例,只要它们使用不同的节点名、不同的目录,并在不同的端口上侦听。这将需要大量的文件句柄、ram等,但这是可能的

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