apache / accumulo

Apache Accumulo
https://accumulo.apache.org
Apache License 2.0
1.07k stars 445 forks source link

Look into using a Striped lock for bulk load zookeeper checks. #873

Open keith-turner opened 5 years ago

keith-turner commented 5 years ago

Bulk load RPCs check to see if the transaction is still alive in ZooKeeper before executing. While doing this check a tablet server wide lock is held. Therefore concurrent bulk loads executing different transactions may have to wait on each other. This could be avoided by using a Striped lock.

It's possible that allowing more concurrency may not be a good thing in that it could place more load on zookeeper. Could possibly make the stripe size small to allow a small amount of concurrency.

tynyttie commented 4 years ago

I will take a look at it. Question, how do I properly test to see the performance benefits if any?

ctubbsii commented 4 years ago

@tynyttie I believe we now have a continuous ingest bulk load test in the accumulo-testing repository, that you may be able to adapt. Or, you may need to experiment and devise your own performance testing for something like this.

tynyttie commented 4 years ago

I understand. Thank you.

ivakegg commented 2 years ago

It appears that we do not want the striped lock to be used, and I believe @tynyttie is no longer actively participating in this community. I vote we simply close this ticket and unassign the issue for somebody else to pick up.