如何解决.NET的一次写入,经常读取的分布式文件存储?
| 我有一个C#/。NET应用程序,需要在中央存储库中存储大小可变的二进制Blob(10KB-100MB)。 MogileFS完全可以满足我的需求(一次写入,高度可用,透明的水平可伸缩性,针对商品硬件进行了优化),但是缺少.NET绑定表明还有其他一些.NET方式可以做到这一点。 还是我应该只写那些绑定?解决方法
您可以为此考虑使用Raven DB。它针对.NET进行了优化,以实现比其他解决方案更高的读写比。支持分布式场景,包括分片,多租户等。
Raven DB网站
,我建议您查看Appistry的CloudIQ Storage。它是在商用硬件上运行的完全分布式数据存储。您可以逐个文件地定义跨节点维护的文件副本数。因此,如果您一次写入一个文件,但同时进行多次读取,则可以将N的值(文件的副本数)设置为较大的值,以获得更大的并发性。
该系统为PUT \和GET \实现了一个基于REST的接口,并且元数据以JSON返回,因此.NET中有许多不错的库。
,我将在这里建议MySQL。如果您将MySQL与MyISAM结合使用,对我来说似乎很适合您的需求。如果您希望获得高可用性,则可以使用复制在许多计算机上镜像数据。如果您想要更高的可用性,则可以迁移到MySQL Cluster。 MySQL的.Net绑定工作得很好。除非您真的需要更专业的东西(从您的简短描述开始,似乎没有),否则MySQL可能就可以完成任务。使用标准RDBMS的优点是,即使您不一定需要它的全部功能,也很容易找到已经知道如何使用它的开发人员。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。