【发布时间】:2011-03-02 17:25:31
【问题描述】:
好朋友告诉我公司的高层,平面文件是要走的路,我们所做的一切都应该从 SQL Server 切换到它们。我们有超过 300 台服务器和数百个不同的数据库。从我参与的少数人来看,我们有超过 100 亿条记录,其中不少人每天有超过 10 万条新记录,谁知道有多少更新......我和其他几个人需要做出回应说为什么我们不应该这样做。我们的大部分东西都是带有一些旧版 ASP 的 ASP.NET。我们认为制作一个简单的控制台应用程序来测试/计算平面文件(存储在网络上)和网络上的 SQL 之间的相同交互,执行大型插入、搜索、更新等以及网络随机断开等操作。这将向他们展示平面文件的糟糕程度,尤其是在处理数百万条记录时。
我应该在回复中使用哪些内容?我应该如何处理我的演示代码来说明这一点?
到目前为止我的排序列表:
- 安全性
- 并发访问
- 大量数据的性能
- 进行如此大规模的重写/切换需要花费大量的时间和巨额的美元成本
- 缺少交易
- PITA 将关系数据映射到平面文件
- NTFS 不能很好地支持目录中的大量文件
- 缺乏 Adhoc 数据搜索/操作
- 强制数据完整性
- 从网络中断中恢复
- 等待其他客户端更改提交时客户端延迟
- 出于充分的理由,大多数人很久以前就停止使用平面文件进行这种类型的存储了
- 负载平衡/复制
如果我现在不能阻止它,我担心有一天它会成为 Daily WTF 上的一个很棒的帖子。
另外
有谁知道是否可以在这场战斗中使用有关 HIPPA 的任何内容?我们的许多记录都是患者记录...
【问题讨论】:
-
你确定他们不是在提倡 No-SQL 方法吗?这是当今的热门话题。如果他们提倡 NoSQL,您可能会想以不同的方式解决这个问题。
-
@jamone:滚出去!说真的 - 如果那些“高层”有其他“朋友”告诉他们知道什么......
-
是的,我得出了这个结论,而不仅仅是基于此。我要看看能不能再坚持几个月,以便更好地安排。
-
遗憾的是,这个确切的论点已经向我提出过一次,并在 thedailywtf.com:thedailywtf.com/Articles/…
-
也许你会争辩说 MySQL 是分层在平面文件系统之上的中间件,以提供更高的效率并使 99% 的程序员更容易编程,不像老板的朋友那样“熟练”:- )
标签: sql-server flat-file