Google Cloud Bigtable 压缩
Google Cloud Bigtable compression
我正在研究 BigTable 如何压缩我的数据。
我已经将 1.5GB 加载到 1 table;大约 500k 行包含 1 列,平均每个单元格包含大约 3kb。
在进一步的测试中,将向这些包含具有相似大小的相似数据的行添加更多列。
每个单元格中的数据当前是一个 JSON 字典序列化数组 [平均 10 个元素],例如:
[{
"field1": "100.10",
"field2": "EUR",
"field3": "10000",
"field4": "0",
"field5": "1",
"field6": "1",
"field7": "0",
"field8": "100",
"field9": "110.20",
"field10": "100-char field",
"dateField1": "1970-01-01",
"dateField2": "1970-01-01",
"dateTimeField": "1970-01-01T10:10:10Z"
},{
"field1": "200.20",
"field2": "EUR",
"field3": "10001",
"field4": "0",
"field5": "1",
"field6": "0",
"field7": "0",
"field8": "100",
"field9": "220.30",
"field10": "100-char field",
"dateField1": "1970-01-01",
"dateField2": "1970-01-01",
"dateTimeField": "1970-01-01T20:20:20Z"
}, ...]
BigTable 控制台显示集群拥有 1.2GB 的空间。因此,它将我插入的 1.5GB 压缩到原始大小的大约 80%。 Gzip 一个典型的字符串,因为它们存储在单元格中,但是给我一个大约 20% 的压缩率。
BigTable 的这种压缩性能对我来说似乎很低,因为我插入的数据包含很多重复值(例如字典键)。我知道 BigTable 以压缩换取速度,但我希望它能更好地处理我的数据。
对于上述数据,80% 的压缩率是否合适,或者是否可以预期更低的值?
除了重塑我正在上传的数据之外,是否有任何改进压缩的技术?
谢谢!
肯定会出现较低的值。我们发现并修复了与 Cloud Bigtable 中使用压缩相关的错误,该错误现已投入生产。
对于您发布的示例等数据,您现在应该会看到更高的压缩率和更低的磁盘使用率!
我正在研究 BigTable 如何压缩我的数据。
我已经将 1.5GB 加载到 1 table;大约 500k 行包含 1 列,平均每个单元格包含大约 3kb。 在进一步的测试中,将向这些包含具有相似大小的相似数据的行添加更多列。
每个单元格中的数据当前是一个 JSON 字典序列化数组 [平均 10 个元素],例如:
[{
"field1": "100.10",
"field2": "EUR",
"field3": "10000",
"field4": "0",
"field5": "1",
"field6": "1",
"field7": "0",
"field8": "100",
"field9": "110.20",
"field10": "100-char field",
"dateField1": "1970-01-01",
"dateField2": "1970-01-01",
"dateTimeField": "1970-01-01T10:10:10Z"
},{
"field1": "200.20",
"field2": "EUR",
"field3": "10001",
"field4": "0",
"field5": "1",
"field6": "0",
"field7": "0",
"field8": "100",
"field9": "220.30",
"field10": "100-char field",
"dateField1": "1970-01-01",
"dateField2": "1970-01-01",
"dateTimeField": "1970-01-01T20:20:20Z"
}, ...]
BigTable 控制台显示集群拥有 1.2GB 的空间。因此,它将我插入的 1.5GB 压缩到原始大小的大约 80%。 Gzip 一个典型的字符串,因为它们存储在单元格中,但是给我一个大约 20% 的压缩率。
BigTable 的这种压缩性能对我来说似乎很低,因为我插入的数据包含很多重复值(例如字典键)。我知道 BigTable 以压缩换取速度,但我希望它能更好地处理我的数据。
对于上述数据,80% 的压缩率是否合适,或者是否可以预期更低的值? 除了重塑我正在上传的数据之外,是否有任何改进压缩的技术?
谢谢!
肯定会出现较低的值。我们发现并修复了与 Cloud Bigtable 中使用压缩相关的错误,该错误现已投入生产。
对于您发布的示例等数据,您现在应该会看到更高的压缩率和更低的磁盘使用率!