Don't read all data at the first

We should parse input as stream to support large data.