使用Transactional NTFS(TxF)获得任何真实的企业级体验?

时间:2009-09-15 05:34:00

标签: c# .net ntfs msdtc txf

背景

我知道this SO question有关事务性NTFS(TxF)和this article描述 如何使用它,但我正在寻找真实世界的体验< / strong>使用合理的高容量企业系统,其中大量blob数据(比如文档和/或照片)需要在事务处理和持续读取多次后持续。< / p>

  • 我们期待每天写入数万份文件,每小时读取数万份。
  • 我们可以在文件系统或SQL Server中存储索引,但必须能够在几个框中扩展它。
  • 我们必须保留为灾难恢复轻松备份和恢复数据的能力。

问题:

  • 使用Transactional NTFS(TxF)获得任何真实的企业级体验吗?

相关问题:

  • 是否有人尝试使用TxF进行分布式事务,同时将同一文件同时提交给两个镜像服务器?
  • 是否有人尝试过使用文件系统和数据库的分布式事务?
  • 您可以分享任何性能问题/可靠性问题/性能数据? 在交易成为问题之前,有没有人在这个规模上做过什么?

编辑:为了更清楚,我研究了其他技术,包括SQL Server 2008的新FILESTREAM数据类型,但 此问题仅针对事务文件系统

更多资源:

5 个答案:

答案 0 :(得分:8)

我认为“真实世界,企业级”的体验比听起来更主观。

Windows Update使用TXF。因此它在频率方面被大量使用。现在,它没有进行任何多节点工作,也没有通过DTC或类似的任何东西,但它使用TXF来操纵文件状态。它通过对注册表(TXR)的更改来协调这些更改。这算了吗?

我的一位同事提出了this talk to SNIA,对于TXF的许多工作非常坦诚,可能会有更多的亮点。如果您正在考虑使用TXF,那么值得一读。

答案 1 :(得分:7)

不幸的是,似乎答案是“不”。

在将近两周(一周有100点赏金)和156次观看时,没有人回答他们已经使用TxF进行任何大批量应用,如我所述。我不能说这是意料之外的,当然我不能证明是消极的,但看起来Windows的这个功能并不为人所熟知或经常使用,至少在撰写本文时,至少是SO社区的活跃成员。

如果我开始写一些概念证明,我会在这里发布我学到的东西。

答案 2 :(得分:4)

您是否考虑过SQL Server 2008中的filestream support(如果您当然使用的是SQL Server 2008)?我不确定性能,但它提供了事务性并支持备份/恢复。

答案 3 :(得分:1)

虽然我没有丰富的TxF经验,但我确实有MS DTC的经验。 TxF本身相当高效。当你引入MS DTC来处理多台机器上的多个资源管理器时,性能会受到很大影响。

根据您的描述,听起来您正在存储和索引非常大量的非结构化数据。我假设您还需要能够搜索此数据。因此,我强烈建议您查看Microsoft's DryadGoogle's MapReduce以及高性能分布式文件系统来处理非结构化数据存储和索引。存储和索引大量blob数据的大批量企业系统的最佳示例是Bing和Google等互联网搜索引擎。

有很多资源可用于管理高吞吐量非结构化数据,它们可能比SQL Server和NTFS更有效地解决您的问题。

我知道它比您可能正在寻找的更开箱即用......但您确实提到您已经耗尽了NTFS / TxF / SQL框周围的所有其他搜索途径。 ;)

答案 4 :(得分:-3)

Ronald:FileStream位于TxF之上。

JR:虽然Windows Update使用TxF / KTM并演示它的实用程序,但它不是高吞吐量应用程序。