0

我想对为我的系统选择正确的数据库提出一些建议。我在这里处理多媒体数据(图像、视频、音频、动作......),并且应该有大量用户访问我的数据库,例如 50000 个用户。

数据是从其他存储设备实时收集的,应该是可扩展的,以及访问系统的用户数量。

最初的想法是使用非 SQL 数据库,例如 RIAK 或 Cassandra 以实现可扩展性,但我不确定在这种情况下使用多媒体数据库是否会更好。而且我实际上没有使用非 SQL 数据库的经验。

4

3 回答 3

0

不确定是否存在“多媒体数据库”之类的东西。您可以将元数据存储在标准关系数据库中,并将 blob 存储在文件系统中。这是一个非常简单的方案,可以让你走得很远。

您可以使用分布式“NoSQL”风格的 blob 数据库而不是文件系统。这对于横向扩展和维护可能会更好。

于 2012-12-11T10:52:37.023 回答
0

请将您的媒体数据放在文件系统中或将其托管在 cdn 中。数据库没有进行多媒体交付所需的流优化。

不要对元数据使用 sql - 谁在什么轨道上,行为分析,成本,轨道播放次数。那样的话,它真的只是另一个数据库,所以选择满足你的 api 需求的数据库,并扩展能力。插件:我公司的数据库,aerospike,值得一看。

于 2012-12-11T18:55:34.037 回答
0

理想情况下,您需要一个可以横向扩展的解决方案。

要为不断增长的最终用户数量和不断增加的内容维护响应式解决方案,您希望能够在不使系统脱机的情况下添加系统并跨系统分配负载和内容。

分布式 nosql 解决方案应该运行良好。它可以保存有关内容的元数据。任何未针对查询进行搜索/比较的内容,例如音频、视频、图像等,都应该放在文件中。

Nosql 通常具有相对更好的查找性能。即给定一个键,查找值。如果您的应用程序具有不是简单查找的查询,那么 SQL 可能会更好。

于 2012-12-23T06:53:37.843 回答