What database shoud i pick for my java app?
-
hey guys, i'm developing a grocery store java desktop app, and i don't know much about databases and which one is better : an embedded data base or MySql,Postgres...considering performance and storage. thanks.
Both databases (MySQL and PostgreSQL) are very well known and have almost the same functionality. As to performance - it's opinion based only ;) Joking! The thruth is that the performance depends on many factors, such as:
Quote:
- You are not running with a transaction log (see "The transaction log"). A transaction log improves commit time for transactions that insert, update, or delete rows.
- You are using the 16-bit version of the Windows 3.x database engine. The 32-bit version has better performance, especially for larger databases.
- You are loading huge amounts of data into a database. See "Tuning bulk operations" for methods to improve performance.
- The database engine does not have an adequate amount of memory for caching database pages. See "The database engine" for command line options for controlling the cache size. Extra memory for your computer could improve database performance dramatically.
- Your hard disk is excessively fragmented. This becomes more important as your database increases in size. The DOS and Windows database engines cannot do direct (fast) reading and writing when the database file is very fragmented. There are several utilities available for DOS and Windows to defragment your hard disk. One of these should be run periodically. You could put the database on a DOS disk partition by itself to eliminate fragmentation problems.
- You are using a small page size for a large database. The page size is determined when the database is created by the initialization utility. You can find out the page size by using DBINFO. To change page size, you need to unload and reload your database.
- The database table design is not good. A bad database design can result in time-consuming queries to get information from the database. If indexes will not solve your performance problem, consider alternative database designs.
- Your hard disk is slow. A faster hard disk, a caching disk controller or a disk array can improve performance considerably.
- In a multiuser environment, your network performance is slow.
- You are fetching or inserting many rows of data. Consider using the multi-row operations.
See: [Comparison of relational database management systems - Wikipedia](https://en.wikipedia.org/wiki/Comparison\_of\_relational\_database\_management\_systems) [DB-Engines Ranking - popularity ranking of database management systems](https://db-engines.com/e
-
Both databases (MySQL and PostgreSQL) are very well known and have almost the same functionality. As to performance - it's opinion based only ;) Joking! The thruth is that the performance depends on many factors, such as:
Quote:
- You are not running with a transaction log (see "The transaction log"). A transaction log improves commit time for transactions that insert, update, or delete rows.
- You are using the 16-bit version of the Windows 3.x database engine. The 32-bit version has better performance, especially for larger databases.
- You are loading huge amounts of data into a database. See "Tuning bulk operations" for methods to improve performance.
- The database engine does not have an adequate amount of memory for caching database pages. See "The database engine" for command line options for controlling the cache size. Extra memory for your computer could improve database performance dramatically.
- Your hard disk is excessively fragmented. This becomes more important as your database increases in size. The DOS and Windows database engines cannot do direct (fast) reading and writing when the database file is very fragmented. There are several utilities available for DOS and Windows to defragment your hard disk. One of these should be run periodically. You could put the database on a DOS disk partition by itself to eliminate fragmentation problems.
- You are using a small page size for a large database. The page size is determined when the database is created by the initialization utility. You can find out the page size by using DBINFO. To change page size, you need to unload and reload your database.
- The database table design is not good. A bad database design can result in time-consuming queries to get information from the database. If indexes will not solve your performance problem, consider alternative database designs.
- Your hard disk is slow. A faster hard disk, a caching disk controller or a disk array can improve performance considerably.
- In a multiuser environment, your network performance is slow.
- You are fetching or inserting many rows of data. Consider using the multi-row operations.
See: [Comparison of relational database management systems - Wikipedia](https://en.wikipedia.org/wiki/Comparison\_of\_relational\_database\_management\_systems) [DB-Engines Ranking - popularity ranking of database management systems](https://db-engines.com/e
-
You're very welcome.
Maciej Los
-
hey guys, i'm developing a grocery store java desktop app, and i don't know much about databases and which one is better : an embedded data base or MySql,Postgres...considering performance and storage. thanks.
At one time, choosing a database platform required a few months of study, and a lot of meetings. Then the DBA's, etc. Now it's like deciding what color socks to wear, and anyone can "do it".
"(I) am amazed to see myself here rather than there ... now rather than then". ― Blaise Pascal
-
At one time, choosing a database platform required a few months of study, and a lot of meetings. Then the DBA's, etc. Now it's like deciding what color socks to wear, and anyone can "do it".
"(I) am amazed to see myself here rather than there ... now rather than then". ― Blaise Pascal
-
hey guys, i'm developing a grocery store java desktop app, and i don't know much about databases and which one is better : an embedded data base or MySql,Postgres...considering performance and storage. thanks.
It depends for what purpise you wanna use. Database are mainly divided into 2. Sql database. No Sql database. If you want banking application or like financial application where your transaction matters and there is a relation between tables like parent and vhild structure then go with sql database like Oracle, Mysql. If you dont worry about repetitive data or you want faster retrieval of data and you don't worry about successful transaction like if you update something and even it didn't update then you can try again like Facebook where showing data in less time is prority and you don't want major insertion. Regards Lauren Foster Dissertation Writers
-
My wife doesn't appreciate my choice of socks color, but she doesn't care about databases, so choosing adatabase is certainly less stressful!
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
-
hey guys, i'm developing a grocery store java desktop app, and i don't know much about databases and which one is better : an embedded data base or MySql,Postgres...considering performance and storage. thanks.
Embedded database if fine if you want to add small amount of data on regular basis. If you want to store huge data, then you should go for some custom database.
-
hey guys, i'm developing a grocery store java desktop app, and i don't know much about databases and which one is better : an embedded data base or MySql,Postgres...considering performance and storage. thanks.
Well, I do not now what KIND of database you need )) In case you need a NoSQL database then google "How to choose a (NoSQL) database system" And if you need a SQL database the answer is simple - PostgreSQL (And avoid MySQL like a plague) And if you do not know about "NoSQL" then just use PostgreSQL ))