I thought the same thing as they seemingly overlap some. However at SpringOne there was a presentation on this very thing and it turns out they are not mutually exclusive. You can use XD as a Source and Spark as a processor. There is also more in the works for adding support for Spark in XD.
I have not watched the presentation yet as I was in a different session at the time, however the slide deck is already available.