BigQuery与Amazon Redshift的优缺点

use*_*344 15 google-bigquery amazon-redshift

比较Google BigQuery与Amazon Redshift表明两者都可以满足相同的要求,主要因成本计划而异.似乎Redshift配置(定义键和优化工作)与Google BigQuery相比可能在连接表时存在问题.

是否存在Google BigQuery与Amazon Redshift的优缺点列表?

Fel*_*ffa 33

我在reddit上发布了这个比较.很快,一位长期的RedShift从业者开始评论我的陈述.有关完整的对话,请参阅https://www.reddit.com/r/bigdata/comments/3jnam1/whats_your_preference_for_running_jobs_in_the_aws/cur518e.

调整群集大小:

  • Redshift会要求您选择多个CPU,RAM,HD等,并将它们打开.
  • BigQuery并不关心.随时使用,无需配置.

无所事事时的每小时成本:

  • Redshift会要求您每小时支付这些服务器的运行费用,即使您什么都不做.
  • 闲置时BigQuery只收取每GB每月0.02美元的费用.每GB每月2美分,就是这样.

查询速度:

  • Redshift性能受到您支付的CPU数量的限制
  • BigQuery透明地引入了所需的资源,可以在几秒钟内运行您的查询.

索引:

  • Redshift会要求您在特定条件下索引(更正:分发)您的数据,并且您只能根据此索引运行快速查询.
  • BigQuery没有索引.每次操作都很快.

吸尘:

  • Redshift需要定期维护和持续数小时的"真空"操作.您需要为这些服务器小时数付费.
  • BigQuery没有.忘记'吸尘'.

数据分区和分发:

  • Redshift要求您考虑如何在服务器中分发数据以保持性能 - 优化仅适用于某些查询.
  • BigQuery没有.只需运行您想要的任何查询.

流式实时数据:

  • Redshift不可能(?)
  • BigQuery可以轻松处理每个表每秒最多100,000行的输入.

发展你的集群:

  • 如果您有更多数据,或者更多并发用户扩展将使用Redshift很痛苦.
  • BigQuery会起作用.

多区域:

  • 您想要一个多区域Redshift以获得可用性和数据完整性吗?痛苦.
  • BigQuery默认是多分区的.

要尝试BigQuery,您不需要信用卡或任何设置时间.试试吧(快速说明试试BigQuery).

当您准备将自己的数据放入BigQuery时,只需将JSON换行新行分开的日志复制到Google云端存储并导入它们.

请参阅云端数据仓库定价的深入指南: 了解云定价第3.2部分 - 更多数据仓库

  • 试试https://cloud.google.com/blog/big-data/2017/01/how-to-run-a-terabyte-of-google-bigquery-queries-each-month-without-a-credit-card (2认同)

Joe*_*ris 11

Amazon Redshift是一个标准的SQL数据库(基于Postgres),具有MPP功能,可以扩展.这些功能还要求您在某种程度上符合您的数据模型,以获得最佳性能.它支持大量的SQL标准,大多数可以与Postgres通信的工具可以不加改变地使用它.

BigQuery不是一个数据库,因为它不使用标准SQL并且不提供JDBC/ODBC连接.它是一个独特的服务,拥有自己的API和接口.它为SQL查询提供有限的支持,但大多数用户通过自定义代码(Java,Python等)进行交互.一些第三方工具增加了对BigQuery的支持,但现有工具无法在不进行修改的情况下工作.

tl; dr - Redshift更适合与现有工具交互并使用复杂的SQL.BigQuery更适合自定义编码交互和不喜欢SQL的团队.

更新2017-04-17 - 这是一个更新的成本和速度差异的总结(包括在销售摊位,所以YMMV).TL; DR - Redshift通常更快,如果您经常查询数据会更便宜.http://blog.panoply.io/a-full-comparison-of-redshift-and-bigquery


更新 - 由于我一直在这个(♂️)投票,这里是对另一个答案项目的最新回应:

调整群集大小:

  • Redshift允许您根据您的使用情况定制成本.如果您想要尽可能快的查询,请选择SSD节点,如果您希望每GB的成本最低,请选择HDD节点.从小处开始,随时添加节点.

无所事事时的每小时成本:

  • Redshift使您的集群为查询做好准备,可以毫秒响应(结果缓存),并提供简单,可预测的月度账单.
  • 例如,即使某个脚本在周末意外地运行10,000个巨型查询,您的Redshift账单也不会增加.

查询速度:

  • Redshift性能在课堂上绝对是最好的,并且一直变得更快.在过去的6个月里快了3-5倍.

索引:

  • Redshift没有索引.它允许您定义排序键以优化从快速到快速的性能.

吸尘:

  • 当您的群集具有可用资源时,Redshift现在会自动运行例如ANALYZE和VACUUM DELETE的日常维护.

数据分区和分发:

  • Redshift从不需要分发.它允许您定义分布键,这可以非常快速地进行大型连接.
  • {向竞争对手询问加入表现......}

流式实时数据:

  • Redshift有2种选择
    • 使用Amazon Kinesis Firehose将实时数据流式传输到Redshift.
    • 通过使用Redshift Spectrum外部表降落(并以高速度)立即在S3上查询您的实时,完全跳过摄取.

发展你的集群:

  • Redshift可以在几分钟内弹性调整大多数群集的大小.

多区域:

  • Redshift可以无缝地替换任何发生故障的硬件,并持续备份您的数据,包括跨区域(如果需要).

  • BigQuery使用类似SQL的语法,因此您的"BigQuery更适合自定义编码交互和不喜欢SQL的团队".是不准确的. (4认同)
  • BQ是一个柱状分布式数据库.可以使用它自己的SQL重音轻松查询.主要区别在于易于与标准db,etl,ui工具集成,这里redshift具有较小的优势.管理所需的努力,这里bq有一些优势. (3认同)
  • 好的,公平的一点,BQ是_technically_一个'柱状数据库',_practically_不是一个'数据库',从支持无数现有工具的JDBC/ODBC连接的意义上说. (3认同)
  • 它已经存在了三年,并且基于Google使用的完全相同的技术.为什么你会认为它会被抛弃?Google是否放弃了其他云技术? (2认同)
  • 它现在也有ODBC连接.在此讨论中不确定它是否存在.https://cloud.google.com/bigquery/partners/simba-drivers/ (2认同)
  • 是的,Google在过去几年中对BigQuery进行了相当多的改进:JDBC,DML支持等.定价模型对于"经典"DW使用来说仍然是相当不透明的IMO,但是对于小型团队来说,按次付费是很好的. (2认同)