Viraj Jasani created PHOENIX-7709:
-------------------------------------
Summary: Index committer post writer lazy mode - Async RPC call
for verified index mutations
Key: PHOENIX-7709
URL: https://issues.apache.org/jira/browse/PHOENIX-7709
Project: Phoenix
Issue Type: Improvement
Reporter: Viraj Jasani
In case of the mutable covered index, the sequence of mutations that takes
place synchronously are
# Unverified index row mutations
# Data table row updates
# Verified index row mutations
Phoenix provides config "org.apache.hadoop.hbase.index.lazy.post_batch.write"
to enable async or lazy mode for the last phase i.e. verified index row
mutations.
If the config is enabled, it uses LazyParallelWriterIndexCommitter
implementation which prepares the batch of mutations per table and prepares the
TaskBatch objects. However, it does not submit the mutations to the thread-pool
as of today. As a result, if the lazy mode is enabled, every read on the index
table will end up performing read-repair.
The purpose of this Jira is to submit the post writer tasks to the respective
thread-pool without getting blocked on it, to be able to make the third phase
asynchronous. When the number of indexes are higher, this mode can help reduce
the write latencies of the data table updates and improve the overall
throughput.
User can enable this mode for the given table by using DDL statements.
e.g.
{code:java}
ALTER TABLE T1 SET
"org.apache.hadoop.hbase.index.lazy.post_batch.write"=true{code}
{code:java}
CREATE TABLE T1 (PK1 VARCHAR NOT NULL, C1 VARCHAR)
"org.apache.hadoop.hbase.index.lazy.post_batch.write"=true{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)