2011-06-08 69 views
1

嗨,我正在建立一个窗口应用程序零售商pos但想知道什么是最好的方法来设计数据库。我应该只使用1个数据库来存储我所有的客户数据吗? 这意味着如果我有100个客户来自不同的企业使用我的应用程序,他们的所有数据将被存储在1个数据库中。 例如我将在用户表中存储1个公司列以指示客户或交易属于哪个公司。 我目前的做法是我为每个企业创建新的数据库,并将其安装到他们的本地机器。 (必须手动安装sqlserver + sqlexpress)。我应该只使用1个数据库吗?

你认为用这种方式设计更容易吗?我可以把数据库联机到sql服务器。我会得到任何延迟?它会有多糟糕?我听说Window Azure能够很好地处理这个问题。就我而言,我认为每个企业的速度和数据大小并不是真正的问题。

你能建议吗?

+3

http://www.brentozar.com/archive/2011/06/how-design-multiclient-databases/ – 2011-06-08 01:34:21

+0

这样的声音是以前讨论过的一个很棒的话题。谢谢 – VeecoTech 2011-06-08 01:46:09

+0

SO有这样一些问题的标签:[多租户]。 – 2011-06-08 18:25:37

回答

1

为了存储数据,尤其是Azure存储表和Blob,您一定要查看Azure中的其他替代方法。 将所有Azure存储选项与SQL Azure结合使用,将允许您根据应用程序的需求和所需的成本结构来选择不同的数据层。在SQL Azure内部运行所有内容将使您在长期运行中付出更多代价,但它为将关联数据用于关系报告的联合数据提供了一个很好的平台,而您可以使用分区键将每个租户的数据存储在Azure表中,这些分区键将每个客户端的数据分开从其他人那里。

相关问题