phoenix-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Taylor <>
Subject Re: rowkey tricks in hbase schema design
Date Tue, 07 Jan 2014 17:33:59 GMT
Hi LiLi,
I agree - row key design in HBase is extremely important. That's why
Phoenix supports composite primary keys.

There are a few good ways to learn about the tricks that Phoenix does:
1) Read the wiki:
2) Listen to my conference talks: (see #1)
3) Read my blog (see #1)
4) Implement a built-in function (see #3)


On Tue, Jan 7, 2014 at 1:33 AM, Li Li <> wrote:

> hi all,
>     as a hbase user, I am told to carefully design table schema for
> data access pattern. e.g. you should balance wide table and tall
> table, you should do many tricks with rowkey(and even
> columnfamily,quantifier). to get followed users you should implement
> observers to add A-followedBy-B when insert B-follow-A. Using
> coprocessor to push aggregating work to server. Avoiding hot spot by
> md5(key) or adding salt....
>     In phoenix, all tricks gone. phoenix hide all from user. That's
> fine. But as phoenix is not mature as sql(even sql, many query plan is
> not well constructed and we should explain it and check the detail of
> query), how can I be convinced it's as quick as pure hbase with many
> tricks?
>     Another question, the secondary index is a great feature. will it
> slow down writing performance?
> I found many secondary indexing strategy in
> and also found
> some third-part solution like this:
> How is secondary implemented?
> If I add an index to a table that already filled with many rows, will
> the old rows be indexed automatically?

View raw message