[ 
https://issues.apache.org/jira/browse/PHOENIX-1740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

binlijin updated PHOENIX-1740:
------------------------------
    Description: 
I want to share a idea for implment global secondary index, it is eventually 
consistent, the index table will out of sync with the primary table for a short 
periods. We do add a notify family for the primary table, when the primary 
table a row modified, we will add a corresponding qualifier for the row and the 
time to record the change(capture change), and write with the data. A daemon 
will continue  scanning the notify family and get the data to write to the 
index table, when write success we will delete the corresponding qualifier in 
notify family, so the index table will be a little behind the primary table. 
The idea inspired by Percolator, you can read the idea in
http://blog.cloudera.com/blog/2014/11/how-cerner-uses-cdh-with-apache-kafka/.
We improve the  scan notifications performance because we store the 
notifications in coprocessor and it is in memstore, and the hbase notify family 
for persistent storage.

  was:
I want to share a idea for implment global secondary index, it is eventually 
consistent, the index table will out of sync with the primary table for a short 
periods. We do add a notify family for the primary table, when the primary 
table a row modified, we will add a corresponding qualifier for the row and the 
time to record the change, and write with the data. A daemon will continue  
scanning the notify family and get the data to write to the index table, when 
write success we will delete the corresponding qualifier in notify family, so 
the index table will be a little behind the primary table. The idea inspired by 
Percolator, you can read the idea in
http://blog.cloudera.com/blog/2014/11/how-cerner-uses-cdh-with-apache-kafka/.
We improve the  scan notifications performance because we store the 
notifications in coprocessor and it is in memstore, and the hbase notify family 
for persistent storage.


> A Eventually Consistent Secondary Index solution for Global Indexing
> --------------------------------------------------------------------
>
>                 Key: PHOENIX-1740
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1740
>             Project: Phoenix
>          Issue Type: New Feature
>            Reporter: binlijin
>
> I want to share a idea for implment global secondary index, it is eventually 
> consistent, the index table will out of sync with the primary table for a 
> short periods. We do add a notify family for the primary table, when the 
> primary table a row modified, we will add a corresponding qualifier for the 
> row and the time to record the change(capture change), and write with the 
> data. A daemon will continue  scanning the notify family and get the data to 
> write to the index table, when write success we will delete the corresponding 
> qualifier in notify family, so the index table will be a little behind the 
> primary table. The idea inspired by Percolator, you can read the idea in
> http://blog.cloudera.com/blog/2014/11/how-cerner-uses-cdh-with-apache-kafka/.
> We improve the  scan notifications performance because we store the 
> notifications in coprocessor and it is in memstore, and the hbase notify 
> family for persistent storage.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to