Analyzing spatial and spatio-temporal data over complex multi-dimensional domains