1

我有一个hive table2.7 MB(以镶木地板格式存储)。当我impala-shell将此配置单元表转换为 时kudu,我注意到/tserver/文件夹大小增加了大约 300 MB。在进一步探索后,我发现它是/tserver/wals/占据大部分增长的文件夹。因此,我面临着严重的问题。如果一个 2.7 MB 的文件生成一个 300 MB 的 WAL,那么我就无法真正处理更大的数据。有针对这个的解决方法吗?

我的kudu版本是1.1.0,黑斑羚是2.7.0

4

1 回答 1

1

我从来没有使用过 KUDU,但我可以用谷歌搜索一些关键字,并阅读一些文档。

来自Kudu 配置参考部分“不支持的标志” ...

--log_preallocate_segments
WAL 是否应该在写入之前预分配整个段
默认 true

--log_segment_size_mb
日志翻转的默认段大小,以 MB 为单位
默认 64

--log_min_segments_to_retain 始终
保留的过去日志段的最小数量,无论持久性需要什么。必须至少为 1。
默认为 2

--log_max_segments_to_retain
为赶上其他对等方而始终保留的过去日志段的最大数量。
默认 10

看起来您的最低磁盘要求为 (2+1)x64 MB per tablet,仅适用于 WAL。如果某些平板电脑落后且无法赶上,它可以增长到 10x64 MB。

加上一些用于压缩等的临时磁盘空间等。


[编辑] Kudu 1.4(2017 年 6 月发布)中更改了这些默认值引用发行说明...

预写日志 (WAL) 段的默认大小已从 64MB 减少到 8MB。此外,如果平板电脑的所有副本都是最新的并且数据已从内存中刷新,服务器现在将只保留一个 WAL 段而不是两个。
这些更改有望将配置的 WAL 磁盘上的磁盘空间平均消耗减少16 倍

于 2017-02-22T09:43:24.800 回答