Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Thrift IDL file for TCLIService: <BaseDir>/service-rpc/if/TCLIService.thrift (<BaseDir> is typically: <YourWorkspace>/hive/) 
  • TCLIService.Iface implemented byorg.apache.hive.service.cli.thrift.ThriftCLIService class 
  • ThriftCLIService subclassed byorg.apache.hive.service.cli.thrift.ThriftBinaryCLIService and org.apache.hive.service.cli.thrift.ThriftHttpCLIService for TCP mode and HTTP mode respectively.
  • org.apache.hive.service.cli.session.HiveSessionImpl class: Instance of this class are created on server side and managed by org.apache.accumulo.tserver.TabletServer.SessionManager instance.

  • org.apache.hive.service.cli.operation.Operation class: defines an operation (e.g. a query). Instances of this class are created on server and managed by org.apache.hive.service.cli.operation.OperationManager instance.
  • org.apache.hive.service.auth.HiveAuthFactory class: a helper used by both HTTP and TCP mode for authentication. Refer to Setting Up HiveServer2 for various auth options.

Client Side

  • org.apache.hive.jdbc.HiveConnection class: implements java.sql.Connection interface (part of JDBC). An instance of this class holds a reference to SessionHandle instance which is retrieved when making Thrift API calls to server.
  • org.apache.hive.jdbc.HiveStatement class: implements java.sql.Statement interface (part of JDBC). The client (e.g. beeline) calls the HiveStatement.execute() method for the query. Inside the execute() method, Thrift client is used to make API calls.
  • org.apache.hive.jdbc.HiveDriver class

Interaction between client and server

...