HBase KeyValue.maxSize 无法禁用
HBase KeyValue.maxSize cannot be disabled
我已经添加了
<property>
<name>hbase.client.keyvalue.maxsize</name>
<value>0</value>
</property>
在 hbase-site.xml 中。
我将 hbase.client.keyvalue.maxsize
值从 hbase-0.94.27/docs/hbase-default.xml
更改为 0
<glossentry id="hbase.client.keyvalue.maxsize">
<glossterm>
<varname>hbase.client.keyvalue.maxsize</varname>
</glossterm>
<glossdef>
<para>Default: <varname>0</varname></para>
</glossdef>
</glossentry>
并将其从 hbase-0.94.27/src/main/resources/hbase-default.xml
更改为 0
<property>
<name>hbase.client.keyvalue.maxsize</name>
<value>0</value>
</property>
我还把它设置在 Java
Configuration config = HBaseConfiguration.create();
config.setInt("hbase.client.keyvalue.maxsize", 0);
none 个已禁用 keyvalue.maxsize
。还有另一种方法可以禁用检查键值大小吗?
首先,您在正确的位置 hbase-default.xml(不确定您在应用此设置后是否重新启动)
如果 0 不适合您,可以按照屏幕截图的描述标签中的描述尝试任何小于零的值。
提示 1:
要打印所有 HBase 配置,您可以使用来自调用者的此语句,它将打印来自不同来源的所有配置条目(系统属性或 XML 统一方式的条目)。检查您的设置更改是否已应用。
HBaseConfiguration.create().writeXml(System.out);
提示 2:
也可以使用转储主服务器和区域服务器配置
http 服务。例如"http://master:16010/dump"
其次,(预防)不推荐Hbase,一个cell存储的数据量太大,可能会OOM。
For ex: KeyValue size too large at org. apache. hadoop. hbase.
client. hbase.client.keyvalue.maxsize <value. (3896):
java.lang.OutOfMemoryError: bitmap size exceeds too large for this the
size of 16MB, it will throw out of memory.
附带说明一下,如果您有 200MB 的值要放入 HBase,我会建议您将其写入 HDFS 中的一个文件(几乎 2 个块!),然后将该文件中的引用写入 HBase。 . 或者做一些其他的事情。
我已经添加了
<property>
<name>hbase.client.keyvalue.maxsize</name>
<value>0</value>
</property>
在 hbase-site.xml 中。
我将 hbase.client.keyvalue.maxsize
值从 hbase-0.94.27/docs/hbase-default.xml
更改为 0
<glossentry id="hbase.client.keyvalue.maxsize">
<glossterm>
<varname>hbase.client.keyvalue.maxsize</varname>
</glossterm>
<glossdef>
<para>Default: <varname>0</varname></para>
</glossdef>
</glossentry>
并将其从 hbase-0.94.27/src/main/resources/hbase-default.xml
更改为 0
<property>
<name>hbase.client.keyvalue.maxsize</name>
<value>0</value>
</property>
我还把它设置在 Java
Configuration config = HBaseConfiguration.create();
config.setInt("hbase.client.keyvalue.maxsize", 0);
none 个已禁用 keyvalue.maxsize
。还有另一种方法可以禁用检查键值大小吗?
首先,您在正确的位置 hbase-default.xml(不确定您在应用此设置后是否重新启动)
如果 0 不适合您,可以按照屏幕截图的描述标签中的描述尝试任何小于零的值。
提示 1: 要打印所有 HBase 配置,您可以使用来自调用者的此语句,它将打印来自不同来源的所有配置条目(系统属性或 XML 统一方式的条目)。检查您的设置更改是否已应用。
HBaseConfiguration.create().writeXml(System.out);
提示 2: 也可以使用转储主服务器和区域服务器配置 http 服务。例如"http://master:16010/dump"
其次,(预防)不推荐Hbase,一个cell存储的数据量太大,可能会OOM。
For ex: KeyValue size too large at org. apache. hadoop. hbase.
client. hbase.client.keyvalue.maxsize <value. (3896):
java.lang.OutOfMemoryError: bitmap size exceeds too large for this the
size of 16MB, it will throw out of memory.
附带说明一下,如果您有 200MB 的值要放入 HBase,我会建议您将其写入 HDFS 中的一个文件(几乎 2 个块!),然后将该文件中的引用写入 HBase。 . 或者做一些其他的事情。