Support Questions

Find answers, ask questions, and share your expertise

HBase Table/Row Key Design - User Specified Mandatory and Optional Filters

New Contributor

We are using HBase as the underlying data store for a web application. The web application allows the user to specify certain filters that are mandatory, as well as optional. The result coming from HBase are precalculated aggregates based on the filters of the application. What is the appropriate row key, table design to accommodate future filters, both mandatory and optional?

2 REPLIES 2

Contributor

By the way is it a final decision that you will store the data in HBase?

Kevin, you wrote:

> The web application allows the user to specify certain filters that are mandatory, as well as optional. The result coming from HBase are precalculated aggregates based on the filters of the application.

I am afraid this is not sufficient information to design your HBase tables. Can you please elaborate on what kind of data will be stored in the db? What kind if filters will be applied, what kind of aggregate calculations will be done?

New Contributor

Raw data are individual events of user click and user open. The goal is to track the aggregate clicks and opens with respect to the filters being applied. An example of a mandatory filter would be the date the message was sent to the user, an example of an optional filter would be what device the user open/clicked the message. The events themselves are at the granularity of the user, and contain when the message was sent to the user, in addition to other contextual information surrounding the message (subject txt, message origin, etc.)