Java manipulando grandes quantidades de dados

Eu tenho um aplicativo Java que precisa exibir grandes quantidades de dados (da ordem de 1 milhão de pontos de dados). Os dados nem todos precisam ser exibidos ao mesmo tempo, mas apenas quando solicitados por um usuário. O aplicativo é um aplicativo de desktop que não está sendo executado com um servidor de aplicativos ou que atinge qualquer banco de dados centralizado.

Meu pensamento era executar um banco de dados na máquina e carregar os dados lá. O banco de dados será lido apenas na maior parte do tempo, portanto, devo poder indexar para ajudar a otimizar as consultas. Se estiver executando em um sistema local, não tenho certeza se devo tentar implementar algum cache (não sei com que rapidez as consultas serão executadas, atualmente estou trabalhando nelas).

Essa é uma maneira lógica de abordar o problema ou haveria abordagens melhores?

Obrigado Jeff

questionAnswers(4)

yourAnswerToTheQuestion