Mengapa Derby dan MySQL satu-satunya RDMBS yang Anda pertimbangkan? Jika Anda mengatakan Derby , Anda harus memeriksa HSQLDB , H2 , SQLite demikian juga. Jika Anda mengatakan MySQL , Anda harus memeriksa Postgres juga (yang memiliki lebih banyak fitur).
Ini hanya untuk menyebutkan beberapa RDBMS gratis. Tentu saja, seperti yang sudah Charlie katakan, ada banyak alasan lain dan banyak alasan untuk memilih keduanya. Lihat halaman perbandingan (IMO excellent) ini di Wikipedia, di mana Anda akan menemukan manfaat dan batasan dari setiap RDBMS:
http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems
Sejauh persyaratan Anda tentang aplikasi web Anda yang "dapat diunduh", tentu saja Anda dapat menyematkan RDBMS (salah satu dari Derby, H2, HSQLDB) di aplikasi web Anda. Tetapi Anda juga dapat membuat MySQL atau Postgres Anda atau integrasi apa pun yang dapat dikonfigurasi dan memberikan instruksi kepada pengunduh Anda tentang cara menyiapkan aplikasi web Anda sendiri. Lagi pula, ketika Anda menggunakan DataSource
yang dikonfigurasi dengan container untuk aplikasi web Anda, konfigurasi ini dapat dilakukan dengan mudah.
Sekarang, bahkan jika Anda berpikir akan lebih mudah bagi Anda untuk mengembangkan aplikasi web Anda dengan database tertanam, Anda harus selalu berpikir selangkah lebih maju. Pertanyaan seperti:
- Apakah Anda dapat terhubung ke database tersebut secara langsung, untuk memperbaiki ketidakkonsistenan data dengan mudah? (Itu akan terjadi pada kita semua)
- Apakah Anda dapat mengubah skema dengan mudah?
- Apakah Anda dapat mencadangkan data dengan mudah?
- dll dll... ada lebih banyak pertanyaan pemeliharaan juga
Karena komentar Anda menunjukkan bahwa data Anda meningkat dari waktu ke waktu, dan itu harus tetap ada, saya tidak akan memilih versi yang disematkan, tetapi pisahkan data dari aplikasi. Perhatikan bahwa ini tidak mengecualikan Derby dari desain aplikasi Anda. Artinya, Anda harus menjalankan Derby sebagai server mandiri.