Observe que eu forneci esta resposta em 2011. Ela pode estar desatualizada
Minha empresa desenvolve uma biblioteca de abstração de banco de dados ( jOOQ ), que suporta os dois bancos de dados. Nossos testes de integração cobrem muitas funcionalidades, incluindo a chamada de stored procedures e funções, arrays, aninhados selects, etc. Acho que sou um HSQLDB 2.1
pouco mais rápido do que H2 1.3
bancos de dados pequenos no que diz respeito a DML.
No entanto, HSQLDB altamente supera H2 em operações DDL, bem como ao iniciar / encerrar a instância, mesmo para um pequeno banco de dados (devido a compilação funções armazenadas de H2 de novo com javac a cada inicialização do banco de dados!) . Isso depende da maneira como você armazena as funções armazenadas. Aparentemente, esse é um "problema" específico do JOOQ, veja também o comentário de Thomas Mueller.
Por outro lado, concordo com o trashgod do usuário, você deve testar o desempenho em um esquema e caso de uso razoáveis.