如何计算 bigquery 行大小?
Posted
技术标签:
【中文标题】如何计算 bigquery 行大小?【英文标题】:How to calculate bigquery row size? 【发布时间】:2016-11-28 23:43:46 【问题描述】:我正在使用 bigquery 流 api(java) 插入数据,并意识到表行有 1MB 的大小限制,但是有没有人知道更多关于这个限制的信息,比如这个 1MB 是如何计算的? (我猜它不应该是 TableRow 对象的大小)。谢谢!
【问题讨论】:
【参考方案1】:数据大小是根据每种数据类型的大小计算的。
Data type Size
STRING 2 bytes + the UTF-8 encoded string size
INTEGER 8 bytes
FLOAT 8 bytes
BOOLEAN 1 byte
TIMESTAMP 8 bytes
RECORD 0 bytes + the size of the contained fields
查看https://cloud.google.com/bigquery/pricing#datafor更多详情
【讨论】:
嗨,我只是想仔细检查一下我的计算是否正确。我在 Python cloud.google.com/bigquery/docs/samples/… 中使用流式插入。如果我插入这个 json 对象:data = 'event': 'signup', 'email': 'abc@email.com'。要计算大小,我应该对 json 对象进行字符串化并将字符串长度乘以 2 个字节,如下所示:len(json.dumps(data)) * 2 bytes = total size?以上是关于如何计算 bigquery 行大小?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Apache Beam 向 BigQuery 传播插入时如何指定 insertId