Setting the Execution Engine

Consider the following definitions:

  • Runtime: execution time of job.
  • Session time: time from the start of Hive shell or Beeline until you exit.

You can change the execution engine during a session (session time), but not while executing job in the session (runtime). If you specify the execution engine before starting the job, it will override the hive.execution.engine property in hive-site.xml file. For example, to specify the execution engine:

hive> set hive.execution.engine=tez;
hive> *perform some query here*

If you open another session of hive shell or beeline, you will not see the setting in the session from before and you can set needed properties for every session.

MapR Technologies highly recommends configuring Tez as an execution engine instead of MR execution engine. MR execution engine is deprecated in Hive.

If you are currently using the MR execution engine for accessing Hive CLI and HS2, Hive will throw the following warning message:
Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. spark, tez) or using Hive 1.X releases.

To install and configure Tez as an execution engine for Hive, see Configuring Hive and Tez.