如果我在镶木地板中只有一列只有空值的列,那么其权重的数量级是多少。 它会是1的量级吗?或者是其他东西。
答案 0 :(得分:1)
权重应为O(1)。空值是用定义级别编码的,定义级别是游程长度编码的。您可以通过从Python编写这样的文件来向自己证明这一点
In [1]: import pyarrow.parquet as pq
In [2]: import pyarrow as pa
In [3]: t = pa.table([pa.array([None] * 10000000)], ['a'])
In [4]: pq.write_table(t, 'all_nulls.parquet')
In [5]: !ls -l all_nulls*
-rw------- 1 wesm wesm 391 Dec 9 06:35 all_nulls.parquet
因此,具有一千万个空列的表占用了391个字节的全部信息(主要是我猜到的元数据...)