phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Taylor (JIRA)" <>
Subject [jira] [Created] (PHOENIX-2028) Improve performance of write path
Date Fri, 05 Jun 2015 17:54:02 GMT
James Taylor created PHOENIX-2028:

             Summary: Improve performance of write path
                 Key: PHOENIX-2028
             Project: Phoenix
          Issue Type: Bug
            Reporter: James Taylor

The following improvements can be made to bring the cost of UPSERT VALUES more inline with
direct HBase API usage:
- don't re-compile a prepared UPSERT VALUES statement that is re-executed (see patch on PHOENIX-1711).
- change MutationState to use a List instead of a Map at the top level. It's ok to have duplicate
rows here, as they'll get folded together when we generate the List<Mutation>.
- change each mutation in the list to be a simple List<byte[]>. We can keep a pointer
to the PTable and a List<int> of positions into the PTable columns instead of maintaining
a Map for each row. Again, this will get folded together when we generate the List<Mutation>.
- we don't need to create Mutations for PhoenixRuntime.getUncommittedDataIterator() and it
appears we don't need to sort (though we should verify that). Instead, we'll just generate
a List<KeyValue> for each row in MutationState, allowing duplicate and out-of-order
row keys.

This message was sent by Atlassian JIRA

View raw message