public class HiveDriver extends Object implements LensDriver
Modifier and Type | Field and Description |
---|---|
static long |
DEFAULT_EXPIRY_DELAY |
static String |
HIVE_CONNECTION_CLASS
The Constant HIVE_CONNECTION_CLASS.
|
static String |
HIVE_QUERY_HOOK_CLASS |
static String |
HS2_CALCULATE_PRIORITY |
static String |
HS2_CONNECTION_EXPIRY_DELAY
The Constant HS2_CONNECTION_EXPIRY_DELAY.
|
static String |
HS2_COST_CALCULATOR |
static String |
HS2_PRIORITY_DEFAULT_RANGES |
static String |
HS2_PRIORITY_RANGES
Config param for defining priority ranges.
|
static String |
SESSION_KEY_DELIMITER |
Constructor and Description |
---|
HiveDriver()
Instantiates a new hive driver.
|
Modifier and Type | Method and Description |
---|---|
boolean |
areDBResourcesAddedForSession(String sessionHandle,
String database)
Return true if resources have been added to this Hive session
|
boolean |
cancelQuery(QueryHandle handle)
Cancel the execution of the query, specified by the handle.
|
void |
close()
Close the driver, releasing all resouces used up by the driver.
|
void |
closePreparedQuery(QueryPrepareHandle handle)
Close the prepare query specified by the prepared handle, releases all the resources held by the prepared query.
|
void |
closeQuery(QueryHandle handle)
Close the query specified by the handle, releases all the resources held by the query.
|
void |
closeResultSet(QueryHandle handle)
Close the resultset for the query.
|
void |
closeSession(LensSessionHandle sessionHandle)
Close session.
|
void |
configure(org.apache.hadoop.conf.Configuration conf)
Configure driver with
Configuration passed. |
QueryCost |
estimate(AbstractQueryContext qctx)
Estimate the cost of execution for given query.
|
LensResultSet |
execute(QueryContext ctx)
Blocking execute of the query
|
void |
executeAsync(QueryContext ctx)
Asynchronously execute the query.
|
HiveQueryPlan |
explain(AbstractQueryContext explainCtx)
Explain the given query.
|
DriverQueryPlan |
explainAndPrepare(PreparedQueryContext pContext)
Explain and prepare the given query.
|
LensResultSet |
fetchResultSet(QueryContext ctx)
Fetch the results of the query, specified by the handle.
|
org.apache.hadoop.conf.Configuration |
getConf()
Get driver configuration
|
com.google.common.collect.ImmutableSet<QueryLaunchingConstraint> |
getQueryConstraints() |
com.google.common.collect.ImmutableSet<WaitingQueriesSelectionPolicy> |
getWaitingQuerySelectionPolicies() |
boolean |
hasLensSession(LensSessionHandle session)
Checks for lens session.
|
void |
prepare(PreparedQueryContext pContext)
Prepare the given query.
|
void |
readExternal(ObjectInput in) |
void |
registerDriverEventListener(LensEventListener<DriverEvent> driverEventListener)
Add a listener for driver events.
|
void |
registerForCompletionNotification(QueryHandle handle,
long timeoutMillis,
QueryCompletionListener listener)
Register for query completion notification.
|
void |
setResourcesAddedForSession(String sessionHandle,
String database)
Tell Hive driver that resources have been added for this session and for the given database
|
void |
updateStatus(QueryContext context)
Update driver query status in the context object.
|
void |
writeExternal(ObjectOutput out) |
public static final String HIVE_CONNECTION_CLASS
public static final String HIVE_QUERY_HOOK_CLASS
public static final String HS2_CONNECTION_EXPIRY_DELAY
public static final String HS2_CALCULATE_PRIORITY
public static final String HS2_COST_CALCULATOR
public static final String HS2_PRIORITY_RANGES
public static final long DEFAULT_EXPIRY_DELAY
public static final String HS2_PRIORITY_DEFAULT_RANGES
public static final String SESSION_KEY_DELIMITER
public HiveDriver() throws LensException
LensException
- the lens exceptionpublic boolean areDBResourcesAddedForSession(String sessionHandle, String database)
sessionHandle
- lens session identifierdatabase
- lens databasepublic void setResourcesAddedForSession(String sessionHandle, String database)
sessionHandle
- lens session identifierdatabase
- lens databasepublic org.apache.hadoop.conf.Configuration getConf()
LensDriver
getConf
in interface LensDriver
public void configure(org.apache.hadoop.conf.Configuration conf) throws LensException
LensDriver
Configuration
passed.configure
in interface LensDriver
conf
- The configuration objectLensException
- the lens exceptionpublic QueryCost estimate(AbstractQueryContext qctx) throws LensException
LensDriver
estimate
in interface LensDriver
qctx
- The query contextLensException
- the lens exception if driver cannot estimatepublic HiveQueryPlan explain(AbstractQueryContext explainCtx) throws LensException
LensDriver
explain
in interface LensDriver
explainCtx
- The explain contextLensException
- the lens exceptionpublic DriverQueryPlan explainAndPrepare(PreparedQueryContext pContext) throws LensException
LensDriver
explainAndPrepare
in interface LensDriver
pContext
- the contextLensException
- the lens exceptionpublic void prepare(PreparedQueryContext pContext) throws LensException
LensDriver
prepare
in interface LensDriver
pContext
- the contextLensException
- the lens exceptionpublic void closePreparedQuery(QueryPrepareHandle handle) throws LensException
LensDriver
closePreparedQuery
in interface LensDriver
handle
- The query handleLensException
- the lens exceptionpublic LensResultSet execute(QueryContext ctx) throws LensException
LensDriver
execute
in interface LensDriver
ctx
- the contextLensException
- the lens exceptionpublic void executeAsync(QueryContext ctx) throws LensException
LensDriver
executeAsync
in interface LensDriver
ctx
- The query contextLensException
- the lens exceptionpublic void updateStatus(QueryContext context) throws LensException
LensDriver
updateStatus
in interface LensDriver
context
- The query contextLensException
- the lens exceptionpublic LensResultSet fetchResultSet(QueryContext ctx) throws LensException
LensDriver
fetchResultSet
in interface LensDriver
ctx
- The query contextLensException
- the lens exceptionpublic void closeResultSet(QueryHandle handle) throws LensException
LensDriver
closeResultSet
in interface LensDriver
handle
- The query handleLensException
- the lens exceptionpublic void closeQuery(QueryHandle handle) throws LensException
LensDriver
closeQuery
in interface LensDriver
handle
- The query handleLensException
- the lens exceptionpublic boolean cancelQuery(QueryHandle handle) throws LensException
LensDriver
cancelQuery
in interface LensDriver
handle
- The query handle.LensException
- the lens exceptionpublic void close()
LensDriver
close
in interface LensDriver
public void registerDriverEventListener(LensEventListener<DriverEvent> driverEventListener)
registerDriverEventListener
in interface LensDriver
driverEventListener
- the driver event listenerpublic com.google.common.collect.ImmutableSet<WaitingQueriesSelectionPolicy> getWaitingQuerySelectionPolicies()
getWaitingQuerySelectionPolicies
in interface LensDriver
WaitingQueriesSelectionPolicy
s to be used to select waiting queries eligible to be moved out
of waiting state. If there are no driver level waiting query selection policies, then an empty set is returned.
null is never returned.public void registerForCompletionNotification(QueryHandle handle, long timeoutMillis, QueryCompletionListener listener) throws LensException
LensDriver
registerForCompletionNotification
in interface LensDriver
handle
- the handletimeoutMillis
- the timeout millislistener
- the listenerLensException
- the lens exceptionpublic void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
IOException
ClassNotFoundException
public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
IOException
public void closeSession(LensSessionHandle sessionHandle)
sessionHandle
- the session handlepublic boolean hasLensSession(LensSessionHandle session)
session
- the session@Generated(value="lombok") public com.google.common.collect.ImmutableSet<QueryLaunchingConstraint> getQueryConstraints()
getQueryConstraints
in interface LensDriver
QueryLaunchingConstraint
s to be checked before launching a query on driver. If there are no
driver level constraints, then an empty set is returned. null is never returned.Copyright © 2014–2015 Apache Software Foundation. All rights reserved.