[ https://issues.apache.org/jira/browse/HIVE-7935?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vaibhav Gumashta updated HIVE-7935: ----------------------------------- Status: Patch Available (was: Open) > Support dynamic service discovery for HiveServer2 > ------------------------------------------------- > > Key: HIVE-7935 > URL: https://issues.apache.org/jira/browse/HIVE-7935 > Project: Hive > Issue Type: New Feature > Components: HiveServer2, JDBC > Affects Versions: 0.14.0 > Reporter: Vaibhav Gumashta > Assignee: Vaibhav Gumashta > Fix For: 0.14.0 > > Attachments: HIVE-7935.1.patch, HIVE-7935.2.patch, HIVE-7935.3.patch > > > To support Rolling Upgrade / HA, we need a mechanism by which a JDBC client > can dynamically resolve an HiveServer2 to connect to. > *High Level Design:* > Whether, dynamic service discovery is supported or not, can be configured by > setting HIVE_SERVER2_SUPPORT_DYNAMIC_SERVICE_DISCOVERY. ZooKeeper is used to > support this. > * When an instance of HiveServer2 comes up, it adds itself as a znode to > ZooKeeper under a configurable namespace (HIVE_SERVER2_ZOOKEEPER_NAMESPACE). > * A JDBC/ODBC client now specifies the ZooKeeper ensemble in its connection > string, instead of pointing to a specific HiveServer2 instance. The JDBC > driver, uses the ZooKeeper ensemble to pick an instance of HiveServer2 to > connect for the entire session. > * When an instance is removed from ZooKeeper, the existing client sessions > continue till completion. When the last client session completes, the > instance shuts down. > * All new client connection pick one of the available HiveServer2 uris from > ZooKeeper. -- This message was sent by Atlassian JIRA (v6.3.4#6332)