Part 1 – Acquiring the data with Spark Structured Streaming