你知道所有的时间都花在了什么地方吗?我对可能发生的事情有一个或两个猜测,但数据会有所帮助。
Redshift 是一个列式数据库,专为批量上传数据而不是逐行更新而设计。它还专为大量数据(100GB 及以上)而设计。这看起来不像是匹配的用例,但您没有提供足够的信息来确定。 Redshift 也未针对将数据从 SQL 移动到计算节点进行优化,因此如果您通过 SQL 文字加载数据,则速度不会很快。
如果您确实有大量数据,则需要在加载到 redshift 之前捆绑足够的记录 (100MB+),并通过 S3 执行此操作。这意味着数据在 Redshift 中可用之前将等待一段时间。如果这不能满足您的需求,那么您可能没有选择正确的服务。在此模型中,您的 Lambda 会将记录合并为大型 S3 文件。这些将被复制到 Redshift 和间隔中。这基本上就是 Kinesis Firehose 所做的,因此您可能需要研究此 AWS 服务。
Redshift 针对大量读取和少量大量写入进行了优化。如果您需要与读取相同数量的(小)写入,您可能需要一个事务数据库。如果你想继续使用 Postgresql 风格的界面,那么 RDS 中的 Postgresql 是一个选择。
本文链接:https://www.f2er.com/45949.html