Hive is an SQL-like language for data processing, which gets converted into a MapReduce job behind the scenes. Hive is popular because it is written using familiar SQL-like syntax. This is often confusing, because Hive doesn’t have all the controls of a relational database. but the query language is familiar.
Spark is popular, especially for data processing, analytics and distributed machine learning. Spark jobs can be written in Scala or Python. The latter makes Spark especially popular with data scientists and those from a statistics background.
With the speed of open source software development, this answer may be very different in a year’s time.