You need Java installed (Java 8 or later), and to build, you need to have Maven installed as well.
You need to have an RDBMS for storing stream, task and app states in the database. The
local Data Flow server by default uses embedded H2 database for this.
You also need to have Redis running if you are running any streams that involve analytics applications. Redis may also be required run the unit/integration tests.