Hello, The hoenix is the client implementation of HBase, hoenix
has HBase features, HBase is good at making Phoenix, and HBase is not good at
Phoenix. For this kind of aggregate function like count/groub by, Phoenix
Processing is also very weak, the implementation is not fast, it is easy to
time out, the timeout is divided into two layers, one is the query timeout of
Phoenix itself, one is the timeout of the scan after the magazine is
disassembled into scan, see from the above log, this Obviously the latter,
socket timeout.
Divide your problem into two resolution
levels:
1. Analyze whether the statement is
reasonable to use in Phoenix, and whether it can meet the requirements in other
ways, such as MR tasks.
2. If the client has to solve with SQL, then
analyze the table and statement to see if you can reduce the timeout by
changing the table structure, such as placing the query column into a separate
column family.
3. Even if the tables and statements are
analyzed and the table structure and statements are optimized, there may still
be timeouts, so the two timeout parameters of scan are moderately large.