Final answer:
MapReduce v1 was limited by TaskTrackers becoming a bottleneck and by being applicable only to MapReduce workloads, in addition to inefficient resource utilization.
Step-by-step explanation:
The two primary limitations of MapReduce v1 include TaskTrackers being a bottleneck to MapReduce jobs and workloads limited to MapReduce itself. The architecture of MapReduce v1 relied heavily on TaskTrackers for scheduling and executing tasks, and having a central TaskTracker could lead to it becoming a performance bottleneck, especially as the scale of data and computation increased. Furthermore, this version was limited in applicability to just MapReduce programming, meaning that other types of workloads couldn't be processed efficiently if they didn't fit the MapReduce model. Additionally, issues with resource utilization were prominent, where the static allocation of resources led to inefficient use of the cluster's capacity.