【问题标题】:Parition a table across multiple physical nodes跨多个物理节点对表进行分区
【发布时间】:2010-03-01 08:15:08
【问题描述】:

所以我目前正在开展一个项目,该项目涉及收集和存储一些巨大的数据集(就我习惯使用的数据而言)。数据基本上由元信息组成,然后是实际值(这些值随时间变化)。

元信息本身相对较大,但没什么大不了的,我可能会说它会在未来几年内增长到 10-5000 万行大小。这对我来说似乎是可以管理的,如果索引得当(并且数据很容易索引,边界非常明确),一个强大的 SQL Server 应该足以提供对这些数据的快速访问......

但是,趋势数据是完全不同的故事。一年之内,我们每天很容易就会拉入 40-5000 万行,并且在接下来的 3 或 4 年内实际上可能每年翻一番。

这些趋势数据也有非常明确的边界,可以将其分成更易于管理的大小块。我希望我可以设置某种分区机制,将这些数据分布在多个物理数据库节点上。数据基本上都包含在一个表中。我研究了 SQL Server 表分区,但找不到将数据分布到多个服务器的方法。

我的问题是是否有一些“相对简单”的方式在多个物理节点上实现表分区。我也花了一些时间查看 Sql Server PDW,但很难在网上找到信息,我不想继续这样做,直到我确定没有简单的方法来使用构建的功能来实现这种解决方案进入 SQL Server。

任何建议将不胜感激......

【问题讨论】:

    标签: sql-server-2008 data-warehouse database-partitioning


    【解决方案1】:

    我不是这方面的专家,但我相信您可能正在寻找的是数据库“分片”。对分片here 的问题和好处进行了有趣的分析。

    最终,“分片”设计的实施可能会非常昂贵,但如果您的数据在单个数据库中无法管理,那么这可能是一个很好的解决方案。

    Wikipedia 页面上还有少量信息,其中包括支持分片的软件列表(例如 Hibernate ORM)

    【讨论】:

    • 感谢您的回复,这不是我所希望的,但我会给你一个 +1 的良好阅读...我想我可能需要查看分布式密钥值存储或其他东西,仅用于趋势表,应该比 SQL Server 更容易横向扩展
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-15
    • 2014-10-20
    • 1970-01-01
    相关资源
    最近更新 更多