1. At best how many column family is accepted?
2. How many column qualifier?
3. In terms of value inserted is there any limit, like length?
4. Is it okay to be inserting json like data?
anything else you can probably recommend to improve performance and design
1. 1's to 10's of families encompass near every use-case I have seen.
2. As many as you'd like
3. By default, the limit of the size of the value is 1MB. You can change this; however there are performance implications for mixed storage of small and large values for low-latency queries. You should consider the use of the new MOB feature to help alleviate this issue.
4. HBase does not care what the bytes of the data you store are. It is agnostic of it.
Have you read any of the community documentation? http://hbase.apache.org/book.html#casestudies
Thanks for sharing the documentation I'll read on it.
For the naming of the tables, column families, and column qualifier are there any limits? or standard?
I've heard before that the lesser the length of the table name, column family and column qualifier has effect on the hbase utilization. Any say on this?
For reasonable lengths, the table name has little to no impact.
Larger column families and qualifiers will result in a larger footprint on disk, and a commensurate increase in memory (as the name "asdf" takes up twice as much space as "as" would).
As in any storage system, don't put unnecessary data into the system.