  Particle filtering is a numerical Bayesian technique that has great potential
for solving sequential estimation problems involving non-linear and
non-Gaussian models. Since the estimation accuracy achieved by particle filters
improves as the number of particles increases, it is natural to consider as
many particles as possible. MapReduce is a generic programming model that makes
it possible to scale a wide variety of algorithms to Big data. However, despite
the application of particle filters across many domains, little attention has
been devoted to implementing particle filters using MapReduce.
  In this paper, we describe an implementation of a particle filter using
MapReduce. We focus on a component that what would otherwise be a bottleneck to
parallel execution, the resampling component. We devise a new implementation of
this component, which requires no approximations, has $O\left(N\right)$ spatial
complexity and deterministic $O\left(\left(\log N\right)^2\right)$ time
complexity. Results demonstrate the utility of this new component and culminate
in consideration of a particle filter with $2^{24}$ particles being distributed
across $512$ processor cores.
