Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 行数较少但大小较大?_Sql_Amazon Redshift - Fatal编程技术网

Sql 行数较少但大小较大?

Sql 行数较少但大小较大?,sql,amazon-redshift,Sql,Amazon Redshift,我有两个不同的红移表,比如说A和B。两个表都有3列数据类型相同 与A相比,B的行数是A的3倍,而A的行数比B大。这怎么可能 A上的行数:6789634116 B上的行数:18191553916 A的大小:491604 MB B的大小:423745 MB [编辑] 表创建查询如下所示: CREATE TABLE A ( uid varchar(128) NOT NULL, client_id_1 integer NOT NULL, clien

我有两个不同的红移表,比如说AB。两个表都有3列数据类型相同

A相比,B的行数是A的3倍,而A的行数比B大。这怎么可能

A上的行数:6789634116

B上的行数:18191553916

A的大小:491604 MB

B的大小:423745 MB

[编辑]

表创建查询如下所示:

CREATE TABLE A
(
   uid          varchar(128)   NOT NULL,
   client_id_1  integer        NOT NULL,
   client_id_2  integer        NOT NULL
);
表B也一样。

在亚马逊红移中

更新=删除+插入

因此,当您看到这些已删除的记录时,请从A中选择count(*)。 但删除的记录占用了硬盘上的空间,因此表A中的大小更大

在桌子a上做一个吸尘器。你应该看到更小的尺寸

Vacuum A;

有关更多信息,请参阅亚马逊红移文档。

索引之类的内容可能会导致表的大小发生变化。您研究过这个问题吗?两个表都是使用相同的设置创建的,并且都在相同的架构中。您可以在两个表上进行比较,然后再比较大小吗?VARCHAR的压缩也是一个原因,但这看起来更像是表膨胀(这是
vacuum full
应该清理的)请不要用
postgresql
标记红移问题。尽管它们有着共同的根源,但它们有着足够的不同