云数据仓库比较:Redshift、Snowflake、OushuDB、AnalyticDB

数据已成为企业的命脉,数据仓库是数据驱动和智能化升级必不可少的一部分。企业用户选择和搭建数据仓库之前,非常有必要了解数据仓库之间的差异。今天,我们比较一下普通用户都关注的几个问题,来分析下Redshift,Snowflake,OushuDB 和 AnalyticDB 的差异。

厂商定位

无论是美国的 Redshift 和 Snowflake 还是中国的 OushuDB 和 AnalyticDB,都是比较强大的云数据仓库,在数据管理方面提供了新颖却又不同的模式。 

作为云厂商的数据仓库产品,AWS Redshift 和阿里云 AnalyticDB 是一种完全托管的 PB 级云数据仓库服务。随着需求的增长,企业用户从几百 GB 的数据扩展到 PB 级甚至更多。

Snowflake 和 OushuDB 是更加富有弹性的 Data Warehouse,提供基于云设施的数据存储和分析服务。企业用户能够使用基于云的硬件和软件来存储分析数据。Snowflake 的数据存储在对象存储(比如Amazon S3等);OushuDB 的存储可以是对象存储,也可以是分布式表存储Magma(Magma用于支持T+0实时场景)。这两家数据仓库厂商实际上充分利用了公有云的生态环境。

如前所述,云厂商和数据库厂商的解决方案都很强大,也在管理数据方面提供了一些独特的功能,但是差异也是存在的。

生态系统和集成

使用Amazon生态的用户会发现,Redshift 与各种 AWS 服务集成,例如 Kinesis Data Firehose、SageMaker、EMR、Glue、DynamoDB、Athena、数据库迁移服务 (DMS)、架构转换工具 (SCT)、CloudWatch 等;同理,使用AnalyticDB也同时会集成阿里云的诸多服务。

另一方面,Snowflake 和 OushuDB 作为云中立的数据库,支持多云,可以集成各大云厂商的各种服务,这个是 Snowflake 和 OushuDB 这类中立数据库的优势。当然,OushuDB 和Snowflake 端实施存储集成的工作其实不用企业用户投入太多精力来完成,用户得到的是已经集成好的服务。

两种路线选择都提供广泛的集成,并拥有完善的生态合作伙伴。尽管AWS Redshift 和阿里云 AnalyticDB 背靠云厂商,但作为创业公司的核心产品 OushuDB 和 Snowflake 作为云中立的厂商,在多云趋势大背景下有着天然优势,尤其是 Snowflake 和 OushuDB 近年在资本市场上得到的关注也足以让大家充满想象空间。

价格模式和灵活性

Snowflake、OushuDB、Redshift 和 ADB 都提供按需定价,但对相关功能的打包方式不同。前两者作为非云厂商,Snowflake 和 OushuDB 云数据仓库在其定价结构中将计算与存储分开,而作为云厂商的 Redshift 和 ADB 将计算和存储捆绑在一起。

相比云厂商,Snowflake 和 OushuDB 的定价更加灵活, 其数据仓库基于计算单位,用户可以采用不同程度的计算资源。用户需要创建一个 session 进行查询的时候,选择要创建的数据库,使用之前无需付费。超小型 Virtual Warehouse 虽然非常便宜,但执行查询需要更长的时间;当用户需要最强性能时,可以选择更高性能的计算节点。比如,在 Snowflake 上可以选择 4xlarge 进行更快地执行查询,能够非常灵活并快速响应需求。

账单金额 = 集群类型 [元/小时]  * 时长 [小时] + 存储等费用

使用 Redshift 和 ADB,用户需要为每个实例/集群或特定数量的容量付费。也就是说,无论您是否使用,用户都要指定所需的计算量并支付固定费用。尽管 Redshift 和 ADB 提供即用即付和按需定价,但关键区别在于数仓集群对变化的响应能力。因为Redshift和ADB存算耦合,基本无法实现计算资源的弹性启停。

小结

Snowflake 和 OushuDB 的定价在很大程度上取决于用户的使用模式。由于数据存储与计算解耦,两者分开计费。其提供动态定价模式——集群将在没有查询运行时停止并在查询时自动恢复,因此可以根据不断变化的工作负载灵活地调整数仓的大小。当查询负载减少时,这类模式可能会为用户节省成本。

当然,如果用户与云厂商签订一年或三年的合同,可能会得到长期大幅折扣,比如 Redshift 提供按小时费率(按每个集群中的类型和节点)或按扫描的字节数。

企业在比较和选择云数据仓库时,应该区分支持多云的数仓( Snowflake 和 OushuDB )和云厂商数仓( Redshift 和 ADB ),考虑需要多少资源来支持企业自身的数据量、处理和分析需求。长期来看,建立合适的数仓将会持续提高数据驱动的速度、效率和准确性,进而获得更好投资回报率。

猜你喜欢

转载自blog.csdn.net/oushukeji/article/details/128645557