accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Josh Elser <josh.el...@gmail.com>
Subject Re: Write or Ingest bottleneck
Date Tue, 29 Nov 2016 00:14:09 GMT
Ok, at least one tablet per tabletserver would be good. More than one 
tablet per tabletserver is not an issue. 5-10 per tserver would be OK.

Try increasing tserver.mutation.queue.max to something like 50M or 100M. 
4M is very small.

What is -Xmx in your accumulo-env.sh for ACCUMULO_TSERVER_OPTS?

You can also try setting table.durability=flush in accumulo-site.xml.

hujs wrote:
> Sorry, the post was wrong, these days the network is not good, just to see,
> figure in the "accumulo balance" this post can be seen. I'm tuning the
> accumulo ingest rate now. I do not know what is the reason to limit the
> accumulo ingest rate. I mainly used
> Here are a few ways:
>    1, per-splite, I through the custom j, n points will be divided into three
> tablets, each tserver one.
>    2, adjust table.file.max, tserver.compaction.minor.concurrent.max and
> table.durability = flush
>    3, by simulating multiple clients, with multiple Bathwriter send data.
>    4, the opening of the native map
>    5, configure the tserver's accumuo-site.xml and accumulo-env.sh memory
> settings to 2g.
>    However, ingest rate did not improve. My cluster is far from reaching the
> load: cpu utilization of less than 1/8, memory usage less than 1/5, IO 8-14%
> wa, with start-ingest.sh test ingest rate, but the average ingest rate less
> than 18 Million entry / s. My cluster each machine configuration: cpu 8,32 g
> Me. I would like to know what the impact ingest rate,
> How do I tune my cluster?
> Using the accumuluo 1.7.1 version.The accumulo-site.xml configuration is as
> follows:
>
> <configuration>
>
>
>    <property>
>      <name>instance.volumes</name>
>      <value>hdfs://master12:9000/accumulo</value>
>      <description>comma separated list of URIs for volumes. example:
> hdfs://localhost:9000/accumulo</description>
>    </property>
>
>    <property>
>      <name>instance.zookeeper.host</name>
>      <value>master12:2181,slave13:2181,slave10:2181,slave11:2181</value>
>      <description>comma separated list of zookeeper servers</description>
>    </property>
>
>    <property>
>      <name>logger.dir.walog</name>
>      <value>walogs</value>
>      <description>The property only needs to be set if upgrading from 1.4
> which used to store write-ahead logs on the local
>        filesystem. In 1.5 write-ahead logs are stored in DFS.  When 1.5 is
> started for the first time it will copy any 1.4
>        write ahead logs into DFS.  It is possible to specify a
> comma-separated list of directories.
>      </description>
>    </property>
>
>    <property>
>      <name>instance.secret</name>
>      <value>DEFAULT</value>
>      <description>A secret unique to a given instance that all servers must
> know in order to communicate with one another.
>        Change it before initialization. To
>        change it later use ./bin/accumulo
> org.apache.accumulo.server.util.ChangeSecret --old [oldpasswd] --new
> [newpasswd],
>        and then update this file.
>      </description>
>    </property>
>
>    <property>
>      <name>tserver.memory.maps.max</name>
>      <value>2G</value>
>    </property>
>
>    <property>
>      <name>tserver.memory.maps.native.enabled</name>
>      <value>true</value>
>    </property>
>
>    <property>
>      <name>tserver.cache.data.size</name>
>      <value>128M</value>
>    </property>
>
>    <property>
>      <name>tserver.cache.index.size</name>
>      <value>128M</value>
>    </property>
>
>    <property>
>      <name>trace.token.property.password</name>
>
>      <value>123456</value>
>    </property>
>
>
>
>    <property>
>      <name>trace.user</name>
>      <value>root</value>
>    </property>
>
>    <property>
>      <name>tserver.sort.buffer.size</name>
>      <value>500M</value>
>    </property>
>
>    <property>
>      <name>tserver.walog.max.size</name>
>      <value>2G</value>
>    </property>
>
>
>   <property>
>      <name>tserver.wal.blocksize</name>
>      <value>2G</value>
>    </property>
> <property>
>      <name>tserver.mutation.queue.max</name>
>      <value>4M</value>
>    </property>
> <property>
>      <name>tserver.compaction.major.concurrent.max</name>
>
>      <value>8</value>
>    </property>
> <property>
>      <name>tserver.compaction.minor.concurrent.max</name>
>
>      <value>8</value>
>    </property>
>
>    <property>
>      <name>general.classpaths</name>
>
>      <value>
>
>        $ACCUMULO_HOME/lib/accumulo-server.jar,
>        $ACCUMULO_HOME/lib/accumulo-core.jar,
>        $ACCUMULO_HOME/lib/accumulo-start.jar,
>        $ACCUMULO_HOME/lib/accumulo-fate.jar,
>        $ACCUMULO_HOME/lib/accumulo-proxy.jar,
>        $ACCUMULO_HOME/lib/[^.].*.jar,
>
>        $ZOOKEEPER_HOME/zookeeper[^.].*.jar,
>
>        $HADOOP_CONF_DIR,
>
>        $HADOOP_PREFIX/share/hadoop/common/[^.].*.jar,
>        $HADOOP_PREFIX/share/hadoop/common/lib/(?!slf4j)[^.].*.jar,
>        $HADOOP_PREFIX/share/hadoop/hdfs/[^.].*.jar,
>        $HADOOP_PREFIX/share/hadoop/mapreduce/[^.].*.jar,
>        $HADOOP_PREFIX/share/hadoop/yarn/[^.].*.jar,
>        $HADOOP_PREFIX/share/hadoop/yarn/lib/jersey.*.jar,
>
>      </value>
>      <description>Classpaths that accumulo checks for updates and class
> files.</description>
>    </property>
> </configuration>
>
> Think you dear josh Elser;
>
>
>
>
> --
> View this message in context: http://apache-accumulo.1065345.n5.nabble.com/Write-or-Ingest-bottleneck-tp19255p19319.html
> Sent from the Developers mailing list archive at Nabble.com.

Mime
View raw message