我已经加载了一个 1.5GB 的 csv 文件并成功加载了我的表大小是 250MB 为啥会这样?
Posted
技术标签:
【中文标题】我已经加载了一个 1.5GB 的 csv 文件并成功加载了我的表大小是 250MB 为啥会这样?【英文标题】:I have loaded a 1.5GB csv file and successfully loading my table size is 250MB why this is so?我已经加载了一个 1.5GB 的 csv 文件并成功加载了我的表大小是 250MB 为什么会这样? 【发布时间】:2014-01-09 06:26:11 【问题描述】:在 google Bigquery ....我在成功加载后从 googlstorage 加载了一个 1.5GB 的 csv 文件,....我的表大小是 250MB,为什么会这样?
【问题讨论】:
【参考方案1】:可能是因为数字的二进制编码比将它们编码为字符串更有效。例如,字符串"1234567890"
占用 10 个字节(至少,如果是 UTF-16 编码则占用 20 个字节),但它可以用一个 4 字节整数表示,它只占用 4 个字节。
此外,bigquery 中的表也可以省略分隔符,因为它知道每个字段有多少字节宽。这是为每个 ,
保存的另一个字节。
【讨论】:
这是一个宽泛的问题,您不妨从这里开始:en.wikipedia.org/wiki/BigTable 查看这个关于 BQ 对象大小估计的问题:***.com/questions/19906717/… 谢谢大家,我明白了... ***.com/questions/19906717/... – user2881671以上是关于我已经加载了一个 1.5GB 的 csv 文件并成功加载了我的表大小是 250MB 为啥会这样?的主要内容,如果未能解决你的问题,请参考以下文章
将 CSV 文件加载到 NumPy memmap 数组使用太多内存