Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I came to know about the Free DB2 Express C today. I have a few questions about it. Can someone please tell me
How does Free DB2 Express C compare with MySQL?
Is it a bad idea to switch from MySQL to Express C?
What are the restrictions on the free version? I couldn't find that information on its website.
DB2 is a real database with all the minimal components such as referential integrity, stored procedures, ACID, etc. and some interesting extras such as native XML.
MySQL begins to adopt some of these minimal requirements for one of its storage engines, however this still remains immature. MySQL could be better than DB2 for some specific cases when transactions are not really important, such as a small web site that shows simple content.
DB2 is NOT open source, and for the version express-c you can only download the latest (most recent) version of DB2. It means, that you cannot apply patches, nor fix bugs. However, when there is a new release in the DB2 family, the express-c version is also release, so you always have access to the most recent updates (not like in Oracle, that the express version is still 10G)
The restriction in the DB2 express-c version is the memory size used (for buffer pools and other elements) and its size is 4GB. It could use only 2 cores if the machine has several ones.
There is not limit for the storage or quantity of users.
http://www.ibm.com/developerworks/wikis/display/DB2/DB2+Express-C+FAQ
When you business needs grow, you can update to another version in the DB2 family easily, because your platform (applications) are already designed to work with DB2.
DB2 is good for very small database, and for very bigs database with several TBs.
MySQL is Open Source, and it was bought by Sun, which was bought by Oracle. Some days ago, several Open Sources projects maintained by Oracle were finished, and they will only work with the payed versions; such as OpenSolaris and OpenOffice. We do not know the future of MySQL with Oracle as owner.
In the other side, IBM has been working hard with the Open Source (Eclipse, Apache Derby), and in the last years, there has been a continuous effort to use DB2 express-c, so it seems that IBM will continue this way.
"DB2 is DB2 is DB2"
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I'm currently setting up ghost on my server. I will host my own blog and probably some more for my friends.
Ghost uses sqlite per default. Sqlite is good for small applications and development environments.
I plan to run my blog for at least 1 - 2 years or longer if ghost will work out well. A blog contains a lot of images and text. The sqlite db will grow over time with more and more images and so on.
Is it ok to use sqlite for this purpose for several years? MySQL would be much more powerful but also more complex to setup.
What would be the best choice for a Ghost Blog?
Please note that database performance depends not so much on the amount of data (until you run out of local disk space) but on the amount of concurrency.
The SQLite documentation says:
SQLite usually will work great as the database engine for low to medium traffic websites (which is to say, 99.9% of all websites). The amount of web traffic that SQLite can handle depends, of course, on how heavily the website uses its database. Generally speaking, any site that gets fewer than 100K hits/day should work fine with SQLite. The 100K hits/day figure is a conservative estimate, not a hard upper bound. SQLite has been demonstrated to work with 10 times that amount of traffic.
[…]
But if your website is so busy that you are thinking of splitting the database component off onto a separate machine, then you should definitely consider using an enterprise-class client/server database engine instead of SQLite.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I'm considering implementing a cluster server. I have currently used MySQL for my application for the past few years but I've read a lot of uncertainty over the past year on what is going to be happening with MySQL and also the advantages and improvements of MariaDB.
If it were a single server, based on everything I've read I would switch over to MariaDB right now so I wouldn't need to do it later, but since it's a cluster I am torn about whether I should switch to MariaDB Galera right now or wait awhile before it's more mature.
Does anyone have experience implementing both of these solutions and "pros" and "cons" of those implementations?
My other worry is that with improvements, MariaDB won't be a complete drop-in replacement after a year or 2 as it improves and adds new features, so now WOULD be a better time to switch to MariaDB.
You can also use Galera in Percona XtraDB Cluster, which is backward compatible with MySQL.
(disclaimer: I work for Percona.)
No one can truthfully guarantee backward compatibility forever -- not even Oracle.
FWIW, if you're worried about drop-in replacement technology, then you should know that MySQL Cluster is a great example of not satisfying that criterion.
Because of the way the NDB storage engine partitions data, most users need to redesign their schema to take advantage of NDB. Many users "upgrade" an existing app to MySQL Cluster but experience worse performance, because their queries tend to touch every node in the cluster anyway. MySQL Cluster is a brilliant solution for the cases it handles well, but you can't assume it's a drop-in replacement for conventional InnoDB architecture. You have to do careful functional testing, performance testing, and load testing.
First of all - I should point out that I'm part of the MySQL team within Oracle.
I'm not going to criticise MariaDB or Galera but suggest that if you switch to them then it should be because you're convinced that they provide a better solution and not because of any FUD you've heard that Oracle is planning to kill or wind down MySQL - the opposite is true. Take a look at this presentation by the VP of MySQL engineering (Oracle) from this year's Percona conference for details of the great stuff that's been happening.... http://www.youtube.com/watch?feature=player_embedded&v=OpHTV59I1gs#at=16
Regarding MySQL Cluster, we've just declared General Availability for MySQL Cluster 7.3 which contains some major enhancements such as:
Support for Foreign Keys
JavaScript/Node.js API
Performance enhnacements
Browser-based auto-installer
Take a look at http://www.clusterdb.com/mysql-cluster/mysql-cluster-7-3-is-now-ga/ for some details.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I am studying possibilities for a project for my company and after many considerations, I'm investigating building the application on NHibernate for object mapping, which would allow our customers to use whatever database management system they'd prefer or are used too, etc... be it MySQL, MSSQL, PostgreSQL or even SQLite in case of little amounts of data. Some our customers have various database systems already in place.
My concern is about licensing around these database management systems, in respect to how we plan to develop the application. For example, MySQL is GPL and MSSQL proprietary. Of course, I would not distribute the related connectors all in the final solution but, instead, let the customer choose its own and install the relevant connectors and database server...
In this case, would we need to buy licenses for all those connectors and systems (which would represent a lot of money I guess) ?
Or should our customer buy a license for the database system of its choice ?
Or can we just ship the application without any database related file and let the customer do its business ?
Thanks for the help,
Pierre.
I'm not a lawyer, but:
Only if the adapter is used (e.g for testing) or supplied/distributed. Contact the DB vendor for the the applicable usage and distribution rules.
If it is the customers responsibility to do so, then yes: the adapters may be provided by the DB vendor or by a 3rd party (commercial or otherwise). Contact the DB vendor for information on obtaining and using said adapters (so that this information can be distributed to customers). Let the customer handle any database licensing.
Yes. See the above two points.
Happy coding.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I am starting a simple windows forms application that requires a database to store inventory and purchasing records (less than 1000 items). What I want to ask is for your opinion which 'lite' database should I use for this small project, considering that the prerequisites I'll be installing in a client computer should have 'minimal' file size.
The client computer has a running OS of Windows 7, and I don't want him to install so many files, such as the .NET framework and the server that hosts the database, just to install the main application I'm currently developing.
What I'm really asking from you guys is to find out which of these two commonly known databases should I use, and look for the 'right recipe' to be used when building the installer. Thank you.
Of the two, SQLite is simpler to install and deploy. Fewer files, smaller distribution footprint and fewer configuration options to deal with (mostly because SQLite is a library that links into your application where as MySQL is a full client/server RDBMS).
SQLite is made for extremely simple database needs, and is probably a good fit based on your description.
I have never heard of MySQL Lite and a web search turned up nothing, so I will assume you meant MySQL. MySQL is a RDBS client/server system and probably major overkill unless you plan to store many records, or to have multiple people accessing the database at the same time.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I am working on an open source project which can use a number of DBMS' as backend. So far we supports SQL Server 2005 and SQL Server 2008 but we would also like to support some additional databases including some file based DBs.
Note: The file based databases must work on a 64-bit platform, so MS Access is not an option as there is no 64-bit provider AFAIK.
Which DBMS should a database centric open source project support in your opinion?
SQLite, definitely.
Provide ODBC support, then the end-user can choose from just about any database going.
Firebird, either in its embedded variant or as a (small footprint) server.
MySQL, it's a widely used free/open source RDBMS.
Not a file based DBMS, but you didn't say it had to be, only that you wanted a few of those too.
Support these: sqlite,mysql,postgresql
You don't mention what language you're developing in. Some, like Java, have standard database APIs, so supporting multiple SQL servers is easy, provided you can use the common denominator of the SQL language in your application.
I agree that firebird can be better than SQL Lite and M$SQL Express , or even is better than mysql , scales better with the number of CPUS and is more mature (triggers , and transactions are implemented for many many light years ago)