Bom, eu gostaria da opinião de vocês, estou desenvolvendo uma app para desktop e não sei qual compensa usar, hsqldb ou mysql:
qual delas vocês preferem? se for o mysql, eu deveria pedir que o usuário da app instala-se o mysql?
eu poderia vender essa app mesmo que eu use o mysql ou o hsqldb?
Já o HQSLDB pode ser usado no modo standalone ou no modo servidor.
Sobre desempenho, acho que qualquer um dos 2 tem muito bom desempenho.
L
luzales
Como o software que está desenvolvendo é desktop, vc poderia pensar em implementar sua aplicação com o banco de dados embarcado, ou seja, já embutido no software e com armazenamento local de dados. Dessa forma, o usuário não precisaria baixar o banco de dados e configurá-lo. Para isso existem opções de SGBD’s tais como:
-Java Derby
-H2 Database
-HSQLDB
O Java Derby, inclusive já integrado no Netbeans e se vc pesquisar no site desta IDE irá encontrar tutoriais sobre ele e sua utilização com app desktop, sem contar na documentação no próprio site do produto.
fasc90
obrigado pelas respostas, mas meu maior problema é em relação ao inconveniente do usuário ter que baixar o mysql, embora não acredito que alguém terá muitas dificuldades em fazer uma instalação típica do mysql, e sobre distribuir a minha app tanto com o mysql quanto o hsqldb, caso eu esteja infringindo alguma lei de copyright se eu quiser vender minha app, em relação ao desempenho dos BDs, ambos dão conta do serviço.
L
luzales
Por que a insistência no MySQL? Conforme minha resposta, com os SGBD’s citados vc poderá implementar sua aplicação sem o ônus de obrigar o usuário baixar o banco de dados e sem problemas com licença.
Java Derby - open source
H2 - "You can use H2 for free. You can integrate it into your applications (including in commercial applications), and you can distribute it."
HSQLDB - open source
Veja se as licenças se enquadram no seu propósito.
J
jmmenezes
Amigo…
Dependendo da quantidade de registros (se tiver tabelas com mais de 50 mil registros)… será necessário um grande uso de memória utilizando o HSQLDB ou outros bancos embutidos.
Vejo que tendo tabelas com até 100 mil registros, podes usar estes bancos embutidos numa boa… caso contrário vai de Mysql!
Digo isso pois já usei bastante estes bancos embutidos e também Mysql.
Em relação a distribuir, não pode distribuir o mysql (nesse caso entra a licença comercial). O usuário que teria de baixar / instalar / configurar.
Já o HSQLDB não tem esse problema!
L
luzales
jmmenezes:
Amigo…
Dependendo da quantidade de registros (se tiver tabelas com mais de 50 mil registros)… será necessário um grande uso de memória utilizando o HSQLDB ou outros bancos embutidos.
Vejo que tendo tabelas com até 100 mil registros, podes usar estes bancos embutidos numa boa… caso contrário vai de Mysql!
Digo isso pois já usei bastante estes bancos embutidos e também Mysql.
Em relação a distribuir, não pode distribuir o mysql (nesse caso entra a licença comercial). O usuário que teria de baixar / instalar / configurar.
Já o HSQLDB não tem esse problema!
Ok, entendi. Bem, outro banco de dados robusto e open source é o PostgreSQL.
Boa sorte no projeto!
A
ADEMILTON
Discussão sobre SGBD já suficiente… todos os participantes contribuiram com as melhores respostas.
Agora, e se pensar numa outra oportunidade de negócio aí ? Construa sua aplicação de forma que rode independente de qual SGBD. Distribua com um desses que rode embarcado H2, HSQLDB, Derby, ou mesmo Firebird que não foi citado. Avise ao usuário que esta primeira versão rodará bem com um limite de x tamanho para a base de dados e se ele quiser algo maior… você vende o serviço de migração pra um banco mais parrudo.
fasc90
ADEMILTON:
Discussão sobre SGBD já suficiente… todos os participantes contribuiram com as melhores respostas.
Agora, e se pensar numa outra oportunidade de negócio aí ? Construa sua aplicação de forma que rode independente de qual SGBD. Distribua com um desses que rode embarcado H2, HSQLDB, Derby, ou mesmo Firebird que não foi citado. Avise ao usuário que esta primeira versão rodará bem com um limite de x tamanho para a base de dados e se ele quiser algo maior… você vende o serviço de migração pra um banco mais parrudo.
Agradeço a todos pelas respostas, me ajudou bastante a decidir sobre qual bd utilizar. Vou fazer como o ADEMILTON disse.