In the past few years, a large variety of IoT applications has been witnessed by fast proliferation of IoT devices (e.g., environment surveillance devices, wearable devices, city-wide NB-IoT devices). However, launching data collection from these mass IoT devices raises a challenge due to limited computation, storage, bandwidth, and energy support. Existing solutions either rely on traditional data gathering methods by relaying data from each node to the sink, which keep data unaltered but suffering from costly communication, or tackle the spacial data in a proper basis to compress effectively in order to reduce the magnitude of data to be collected, which implicitly assumes the sparsity of the data and inevitably may result in a poor data recovery on account of the risk of sparsity violation. Note that these data collection approaches focus on either the fidelity or the magnitude of data, which can solve either problem well but never both simultaneously. This paper presents a new attempt to tackle both problems at the same time from theoretical design to practical experiments and validate in real environmental datasets. Specifically, we exploit data correlation at both temporal and spatial domains, then provide a cross-domain basis to collect data and a low-rank matrix recovery design to recover the data. To evaluate our method, we conduct extensive experimental study with real datasets. The results indicate that the recovered data generally achieve SNR 10 times (10 db) better than compressive sensing method, while the communication cost is kept the same.