![]() |
Mysql
Im using mysql. Is there a better, faster db out there like mysql? Any input is welcome:thumbsup
|
oracle is good, but it costs an arm and a leg. but worth it if you can afford it
|
I know oracle....to expensive...anything else?
|
Depends on what you want to do...
Mysql is very fast for most things. The problems with mysql aren't so much with speed as with features. Mysql doesn't support subselects, stored proceedures and a few other useful things. If you're doing very complex queries the lack of features can slow things down. However, if you feel that mysql is running too slow its more likely a fault in how you have mysql set up. It could also be a hardware limitation. Spend some time reading about optimizing mysql, it can make a big difference. Check your buffer sizes and make sure you are properly indexed. Consider replication. Consider caching results of common queries. And buy more memory. Memory helps any database application. PostgreSQL is another popular open source database. It tends to be a bit slower than Mysql but is more feature rich. Oracle in and of itself isn't faster. Oracle seems faster because people who will shell out the money for oracle will also shell out the money for fancy hardware and a proper database admin. Oracle's biggest advantage seemingly is for its ability to spread a single database over several servers. Our general view is that mysql is good for data collection, but postgres is better for data analysis. |
Thats the kind of input im looking for.:thumbsup
Any tips on tuning the server settings for fastest mysql? I dont do complex querys...its just a lot :-) |
Take a look at this version - Not a sql person so I can't comment on its' peformance. I know of the guy and he's written some other pretty good applications. He'd probably be able to hook you up with a copy and appreciate feedback on perfomance.
http://marrison.com/?article=marrisonsql |
You should generally not be doing a *lot* of queries - and if you are, there's something wrong with your code. MySQL can handle a LOT of queries, but if you're doing so many that it can't handle it, look at your code, and work out how to reduce the number.
|
Quote:
|
I've got extensive experience with mysql, postgres, and oracle. I started using msql and migrated to mysql in 1996. Mysql has come a long, long way and is a reasonably solid product. For the majority of web hacks it's going to work great.
The last three software products we've developed have all be designed to work under heavy load with many thousands of requests. We also decided to switch to Postgres to make use of the more advanced features we found ourselves needing. What you need to do is put a layer inbetween your web requests and the database. You should only serve content directly from the database if there is no other way to do it. What you can do then is to write hits data to flatfiles on the individual machines in your cluster. Then run a cronjob which sucks up that data, collates it, and inserts the reduced data into sql. If you stagger this import on the machines in your cluster, your sql server won't get overburdened and you've no longer got that 1 to 1 association between hits and queries. Also make sure that you database is optimized, you use the smallest possible column, you have indexes on what you search on and none on the ones you don't, that you set all possible columns as NOT NULL, etc. There are plenty of sites with information on tweaking performance from SQL. Hope this helps. |
Thanks guys for the great input :thumbsup
It help(ed) a lot. Tuninng servers and scripting right now. I apriciated the idea about the " in between " layers. |
| All times are GMT -7. The time now is 10:10 PM. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
©2000-, AI Media Network Inc123