amazon-web-services - 当我连续更新 dist 键的值时,redshift 是否会重新分配数据?
问题描述
我有一个简单的问题...
我在 dist 键列中使用值 x 将行插入到 redshift 中。如果稍后在任何阶段我将 x 的值更新为 y ... 1. redshift 会自动重新分配数据吗?2.如果是怎么办?3. 如果不是我如何重新分配数据,VACUUM 是唯一的解决方案吗?
解决方案
是的,UPDATE
在 Redshift 中被处理为DELETE
当前行和INSERT
更改行的一个。(注意:这就是我们提供可以回滚的事务的方式。)
当更新分布键列的值时,更改的行将发送到新值的正确节点和数据切片。
删除的行将暂时占用您表中的存储空间,直到VACUUM DELETE
运行为止。但是,它现在在后台自动运行,因此您不需要管理它。
推荐阅读
- c - 为什么这个小 C 程序在 ESP32 上会崩溃?
- java - 更改加密密钥后,Microsoft JDBC driver for Java 找不到 Azure Always Encrypted 列加密密钥
- r - 函数内部的并行 R 代码比外部慢
- angular - 从 ReactJS 应用程序中的 Angular 应用程序恢复 Redux 存储
- python - 堆叠在一个循环中,与 tweepy 建立友谊
- c# - 使用 txt 文件中的信息重命名一组文件
- excel - 从本地html文件导入数据后调整结果
- python - matplotlib 表中的粗体文本
- python - 在增强数据集上训练 Faster RCNN v2 初始但未使用 SSD Mobilenet v1 coco 时出错
- tensorflow - Tensorflow 和 Pytorch 中的 tf.losses.log_loss 和 tf.nn.softmax