代码之家  ›  专栏  ›  技术社区  ›  FlySwat

关系数据库设计模式问题——海量只读数据库

  •  0
  • FlySwat  · 技术社区  · 17 年前

    我有一个有趣的挑战,那就是建立一个从大约500个不同来源导入数据的数据库。

    每个源都有自己的模式,很多都非常不同。然而,它们都是关于一个共同实体的数据。

    我的第一个想法是一个典型的实体/属性/值模式,然而,在将一个源(550k行)的非规范化导入转换为AEV之后,我在Attribute_Value表中得到了3600万行。有了适当的索引,这仍然非常快,但这只是迄今为止500个进口来源中的一个。

    我认为这不会扩展,但是它确实有助于非常好的逻辑分区,我们不需要跨导入源连接,所以我们可以(理论上)构建50个左右的独立数据库。

    我正在寻找那些使用过大量数据源的人,以及他们在行数达到数亿时如何处理事情的经验。

    2 回复  |  直到 17 年前
        1
  •  2
  •   Mehrdad Afshari    17 年前

    您考虑过OLAP解决方案吗?它们可能是为你这样的情况设计的。需要读取和分析的大量数据。

        2
  •  2
  •   SQLMenace    17 年前

    我有超过10亿行的表格,行的数量没有碎片级别和表格本身的宽度那么重要,表格越宽,你在页面上能容纳的就越少

    除了OLAP/SSAS 您是否研究过使用分区函数(SQLServer2005中的新功能)

    您还可以利用页和行级别的压缩(sql server 2008中新增的)这将帮助您将更多数据存储到RAM中,我对压缩进行了自己的测试,查看此链接,了解它与无压缩相比的效果 A Quick Look At Compression In SQL 2008