I have created one web application using Cloudera Impala as backend technology. As per my understanding from my POC to use cloudera impala[Hadoop]as a backend for web application where user base is more than 150 users is not good idea, but I need to use Cloudera Impala only, I have created our connection pool as no such api is available for impala. I have used com.cloudera.impala.jdbc41.Driver for jdbc connection provided by Cloudera. Before making the connection first I have authenticated with Kerberos using JAAS authentication.
I have used Subject.doAs() method provided by javax.security.auth package,where I have created each java connection.
Now I am facing below performance issues.
1. When we start the server with 10 connection it is taking approx. 1 minute to up the server because of Kerberos authentication and connection pooling. So if we increase the connection, server up time will also increase.
2. We are using the connection pool, In case of scenario's like connection idle or Kerberos ticket expiration (every 8 hour) , we need to create and add the same number of connections in connection pool as per point no. 1. This will also take the same time again.
We need help urgently. Kindly provide your inputs so that we can take the action accordingly.