Пример пула подключений Java-клиента Kerberized HBase 1.2.x - PullRequest
0 голосов
/ 04 февраля 2019

Согласно HBase документам org.apache.hadoop.hbase.client.Connection можно безопасно разделить между потоками.Я нашел несколько примеров с одним соединением, общим для всего приложения (например, этот ответ ), но я ищу наглядный пример пула соединений для веб-приложения с kerberized HBase внизу.

Пример.одиночного соединения в методе (при условии, что HBaseConfigurationSingleton является синглтоном, который содержит учетные данные kerberos + материал конфигурации hbase):

String principal = HBaseConfigurationSingleton.getInstance().getPrincipal();
String keytabLocation = HBaseConfigurationSingleton.getInstance().getKeytabLocation();
UserGroupInformation.setConfiguration(HBaseConfigurationSingleton.getInstance().getConfiguration());
UserGroupInformation.loginUserFromKeytab(principal, keytabLocation);

Connection connection = ConnectionFactory.createConnection(HBaseConfigurationSingleton.getInstance().getConfiguration());

try {
    //HBase magic stuff here
} finally {
    // closing scanner/tables etc.
    connection.close();
}
...