【问题标题】:How does Snowflake's storage work differently from normal relational database in the cloud, like SQL Server on Azure?Snowflake 的存储与云中的普通关系数据库(如 Azure 上的 SQL Server)有何不同?
【发布时间】:2020-02-07 15:41:44
【问题描述】:

此外,Snowflake 如何“列”所有数据?

我读过的任何东西都没有很好地解释它

【问题讨论】:

    标签: cloud snowflake-cloud-data-platform snowflake-schema


    【解决方案1】:

    Snowflake 的存储层与计算分离。因此,您可以立即分别扩展和缩减您的计算和存储(对于较大的实例在几秒钟内)。 Snowflake 使用称为micro-partitions 的专有存储格式。您还可以在SIGMOD paper 中阅读有关 Snowflake 存储架构的更多信息。

    云中的普通关系数据库 - 假设它只是一个安装了关系数据库的虚拟机 - 与您习惯于在本地托管的关系数据库相同,但实际上它已被“提升和转移” “上云。所以这样做的缺点是计算和存储是紧密耦合的。痛苦在于您需要提前计划更多关于您计划在最高使用天数使用多少;即使不使用系统也在收费;并且迁移到更强大的计算或存储更加复杂、风险和耗时。

    【讨论】:

      【解决方案2】:

      Snowflake 中的数据被划分并存储为微分区,它们是连续的存储单元。

      每个微分区包含 50 MB 到 500 MB 之间的未压缩数据。

      行的分组是在一个表上执行的,并映射到单独的微分区中,以列的方式组织。

      https://docs.snowflake.net/manuals/user-guide/tables-clustering-micropartitions.html#what-are-micro-partitions

      【讨论】:

        猜你喜欢
        • 2012-01-07
        • 1970-01-01
        • 1970-01-01
        • 2022-07-25
        • 2013-08-25
        • 2011-03-26
        • 1970-01-01
        • 1970-01-01
        • 2017-02-02
        相关资源
        最近更新 更多