Leia grande CSV em java

Eu quero ler dados enormes de CSV, contendo cerca de 500.000 linhas. Eu estou usando a biblioteca OpenCSV para isso. Meu código para isso é assim

    CsvToBean<User> csvConvertor = new CsvToBean<User>();
    List<User> list = null;
    try {
        list =csvConvertor.parse(strategy, new BufferedReader(new FileReader(filepath)));
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }

Até 200.000 registros, os dados são lidos na lista de objetos do bean User. Mas para dados mais do que isso eu estou recebendo

java.lang.OutOfMemoryError: Java heap space

Eu tenho essa configuração de memória no arquivo "eclipse.ini"

-Xms256m
-Xmx1024m

Eu estou pensando em uma solução de dividir o arquivo enorme em arquivos separados e ler esses arquivos novamente, o que eu acho que é uma solução demorada.

Existe alguma outra maneira, pelo qual eu possa evitar a exceção OutOfMemoryError.

questionAnswers(3)

yourAnswerToTheQuestion