Large-Scale Data Processing with DataChain