Programming big data analysis: principles and solutions | Synapse