https://medium.com/@asierr/handle-massive-data-like-a-pro-javascript-tips-for-large-data-sets-c88b92e87c41