Hi all, currently I am struggling with a performance issue in my Rest API. The API receives loads of requests coming from frontend in parallel, makes SQL queries using Phoenix JDBC driver to fetch data from HBase. For each request, the api makes only 1 query to phoenix/hbase.
I find out, that the very first ResultSet.next() always take long time to get data from hbase. As far as I know, it gets data in batch, stores them in main memory, enables the following next() to get data directly from main memory and thus save up the network overload. The following next() takes usually less than 10 ms to finish. Sometimes this first next() takes more than 10 seconds and gets increasing from time to time to 30 or even 40 secs. For each query we expect maximal 25000 rows. What can be here the bottleneck for this behaviour? Some information regarding my setup: Hadoop: 2.7.1 HBase: 1.1.2 Phoenix: 4.4.0 Hbase 1.1 Table has 605M rows - salted in 7 buckets - 26 regions across 10 region servers phoenix.query.threadPoolSize = 128 (default) phoenix.query.queueSize = 5000 (default) Thanks! Lee -- View this message in context: http://apache-phoenix-user-list.1124778.n5.nabble.com/Bad-performance-of-the-first-resultset-next-tp3424.html Sent from the Apache Phoenix User List mailing list archive at Nabble.com.