背景:
我知道这个SO问题关于Transactional NTFS(TxF)和这篇文章描述如何使用它,但我正在寻找在一个相对高负载的企业系统中的真实世界经验,其中需要持久化大量blob数据(例如文档和/或照片),一次事务性地写入并多次读取。
- 我们预计每天会写入数万个文档,并且每小时会读取数万个文档。
- 我们可以在文件系统中存储索引或在SQL Server中存储,但必须能够将其扩展到多个服务器。
- 我们必须保留轻松备份和恢复数据以进行灾难恢复的能力。
问题:
- 有没有使用Transactional NTFS(TxF)的真实世界、企业级经验?
相关问题:
- 有人尝试过使用TxF进行分布式事务吗?其中同一文件同时提交到两个镜像服务器中?
- 有人尝试过将文件系统和数据库结合起来进行分布式事务吗?
- 是否存在性能和可靠性方面的问题/数据可以分享的性能问题? 是否有人曾经在这个关注点上做过类似的事情?
编辑:为了更加清晰,我已经研究了其他技术,包括SQL Server 2008的新FILESTREAM数据类型,但这个问题仅特定于事务性文件系统。
更多资源:
- 一篇MSDN杂志关于TxF的文章,名为"通过文件系统事务增强您的应用程序"。
- 一个网络研讨会,名为"Transactional Vista: Kernel Transaction Manager and friends (TxF, TxR)"。这个视频引用了使用TxF的开销为2-5%的数据,性能讨论从25分钟开始。这是我找到的第一组硬数据。而且这个视频非常好地概述了它在幕后如何工作。在大约34:30,演讲者描述了与这个问题非常相似的情况。
- Channel 9的一个屏幕录制,名为"Surendra Verma: Vista Transactional File System"。他在大约35分钟时谈到了性能。没有硬数据。
- B# .NET博客上的TxF文章列表。
- Channel 9的一个屏幕录制,名为"Transactional NTFS"。