refactor to seperate download from ingest and make the ingest an mr job