Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. "MySQL is faster than MS SQL Server", Should I believe it?

"MySQL is faster than MS SQL Server", Should I believe it?

Scheduled Pinned Locked Moved The Lounge
databasemysqlsql-serversysadminquestion
22 Posts 11 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • V Vuemme

    Romeo wrote: There some one say that MySQl is faster than Ms SQL Server, should I believe it? It may be. MySQL is a very small DB engine and it lacks many of the features that other DB servers, like SQL server and oracle, have (transaction, just to name one...) so it can have better performances in some situations, typically when its accessed by a single user, just like MSAccess-Jet or other DB-engines. If you need to prove a statement you can always build a benchmark to support your opinion :) -- Looking for a new screen-saver? Try FOYD: http://digilander.iol.it/FOYD

    J Offline
    J Offline
    Jon Hulatt
    wrote on last edited by
    #5

    MySQL does now support transactions. http://www.mysql.com/products/mysql-4.0/index.html[^] Although i've never benchmarked them, i do personally have the touchy-feely feeling that it's quicker. Which kind of doesn't suprise me... mysql's primary goal has always been speed. and, the dev cycle is such that new code gets out to a product release far quicker than MS can. they are driven by commerical process, not technology. mysql still lacks a decent user interface, none of the ones available are anywhere near as useful as query analyser/enterprise manager combo. Signature space for rent. Apply by email to....

    J V 2 Replies Last reply
    0
    • R Romeo

      There some one say that MySQl is faster than Ms SQL Server, should I believe it? :omg::omg:

      T Offline
      T Offline
      Todd Smith
      wrote on last edited by
      #6

      In some cases yes and in some cases no. As an example MySQL supports different table types. Two of those types are ISAM and InnoDB. We moved a database from ISAM to InnoDB to get better performance. Overall InnoDB was faster (it supports row level locking and ISAM does not) but because of the underlying DB structure a simple select count(*) from table was slow on InnoDB whereas it was pretty much instant on ISAM. Todd Smith

      1 Reply Last reply
      0
      • R Romeo

        There some one say that MySQl is faster than Ms SQL Server, should I believe it? :omg::omg:

        L Offline
        L Offline
        Lost User
        wrote on last edited by
        #7

        Or is it "My SQL is faster than yours" time ;P Elaine (fluffy tigress emoticon) Would you like to meet my teddy bear ?

        1 Reply Last reply
        0
        • R Romeo

          There some one say that MySQl is faster than Ms SQL Server, should I believe it? :omg::omg:

          J Offline
          J Offline
          Jon Sagara
          wrote on last edited by
          #8

          Yes, believe it. MySQL (usually) doesn't support transactions, which is why it is so fast. It also doesn't support referential integrity constraints. Their current 4.x development effort is supposed to fix these problems. I can't wait to see how it holds up. :) Jon Sagara Damnit Jim!

          1 Reply Last reply
          0
          • J Jon Hulatt

            MySQL does now support transactions. http://www.mysql.com/products/mysql-4.0/index.html[^] Although i've never benchmarked them, i do personally have the touchy-feely feeling that it's quicker. Which kind of doesn't suprise me... mysql's primary goal has always been speed. and, the dev cycle is such that new code gets out to a product release far quicker than MS can. they are driven by commerical process, not technology. mysql still lacks a decent user interface, none of the ones available are anywhere near as useful as query analyser/enterprise manager combo. Signature space for rent. Apply by email to....

            J Offline
            J Offline
            Jon Sagara
            wrote on last edited by
            #9

            Unfortunately, 4.x is still in beta. The version they recommend for production servers doesn't usually support transactions. I know you can enable transactions with 3.23.x, but most web hosts do not. I can't wait for version 4. :) Jon Sagara Damnit Jim!

            1 Reply Last reply
            0
            • R Romeo

              There some one say that MySQl is faster than Ms SQL Server, should I believe it? :omg::omg:

              D Offline
              D Offline
              David Stone
              wrote on last edited by
              #10

              You should qualify that statement to say "MySQL is faster than MS SQL Server when doing SELECT statements." This is true. But, usually only when you load a table into memory. In MySQL you can load a table into the heap and then the engine will run a query against RAM. Faster, yes...but only on SELECT statements against RAM which will be faster than Hard Drive data anyway. Hope that clarified things. :) Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

              C 1 Reply Last reply
              0
              • D David Stone

                You should qualify that statement to say "MySQL is faster than MS SQL Server when doing SELECT statements." This is true. But, usually only when you load a table into memory. In MySQL you can load a table into the heap and then the engine will run a query against RAM. Faster, yes...but only on SELECT statements against RAM which will be faster than Hard Drive data anyway. Hope that clarified things. :) Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

                C Offline
                C Offline
                Chris Maunder
                wrote on last edited by
                #11

                But SQLServer caches everything in RAM as well. Take a look at the CodeProject server one day - millions of queries a day and nary a flicker of hard drive activity to be seen. cheers, Chris Maunder

                N D 2 Replies Last reply
                0
                • C Chris Maunder

                  But SQLServer caches everything in RAM as well. Take a look at the CodeProject server one day - millions of queries a day and nary a flicker of hard drive activity to be seen. cheers, Chris Maunder

                  N Offline
                  N Offline
                  NormDroid
                  wrote on last edited by
                  #12

                  So if your server goes down without a UPS backup you're so shafted, so to speak :~ Developing with C++ is like programming by the seat of your pants

                  C 1 Reply Last reply
                  0
                  • N NormDroid

                    So if your server goes down without a UPS backup you're so shafted, so to speak :~ Developing with C++ is like programming by the seat of your pants

                    C Offline
                    C Offline
                    Chris Maunder
                    wrote on last edited by
                    #13

                    Which is why we have a UPS backup :) cheers, Chris Maunder

                    N 1 Reply Last reply
                    0
                    • C Chris Maunder

                      Which is why we have a UPS backup :) cheers, Chris Maunder

                      N Offline
                      N Offline
                      NormDroid
                      wrote on last edited by
                      #14

                      OK smart ass, which goes sooner your UPS dying or your MS SQL server purging its guts out to disk. ;) Developing with C++ is like programming by the seat of your pants

                      C 1 Reply Last reply
                      0
                      • C Chris Maunder

                        But SQLServer caches everything in RAM as well. Take a look at the CodeProject server one day - millions of queries a day and nary a flicker of hard drive activity to be seen. cheers, Chris Maunder

                        D Offline
                        D Offline
                        David Stone
                        wrote on last edited by
                        #15

                        Yeah, but what I meant was that in MySQL you can shove stuff into RAM. It's optimized for that. SQLServer has to put the stuff into RAM. And even then, I think that it only puts part of it into ram...:~ Maybe you could ask someone on the SQL Server team about this very issue while you're there Chris...:-D Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

                        M 1 Reply Last reply
                        0
                        • N NormDroid

                          OK smart ass, which goes sooner your UPS dying or your MS SQL server purging its guts out to disk. ;) Developing with C++ is like programming by the seat of your pants

                          C Offline
                          C Offline
                          Chris Maunder
                          wrote on last edited by
                          #16

                          LOL. cheers, Chris Maunder

                          1 Reply Last reply
                          0
                          • D David Stone

                            Yeah, but what I meant was that in MySQL you can shove stuff into RAM. It's optimized for that. SQLServer has to put the stuff into RAM. And even then, I think that it only puts part of it into ram...:~ Maybe you could ask someone on the SQL Server team about this very issue while you're there Chris...:-D Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

                            M Offline
                            M Offline
                            Mark Conger
                            wrote on last edited by
                            #17

                            I don't know what the Codeproject Db looks like (Is there a way to look at it??? ;P) but what you are talking about is a cacheing mechanism found in most RDBMS (Oracle has it, as does DB2. Basically run most any DML and depending on your buffer cache a certain number of blocks/pages are cached to RAM. You can get a really quick query on those till they are flushed/aged out. The buffer cache typically works on a least used, flush queue principle. You can also do what's called pinning/nailing to load tables into memory automatically upon server start... this is great for lookup and small tables with no updating cause they are locked in memory, but try nailing a couple 100 million row table sometime :) KA-BOOM! :omg: Mark

                            D 1 Reply Last reply
                            0
                            • M Mark Conger

                              I don't know what the Codeproject Db looks like (Is there a way to look at it??? ;P) but what you are talking about is a cacheing mechanism found in most RDBMS (Oracle has it, as does DB2. Basically run most any DML and depending on your buffer cache a certain number of blocks/pages are cached to RAM. You can get a really quick query on those till they are flushed/aged out. The buffer cache typically works on a least used, flush queue principle. You can also do what's called pinning/nailing to load tables into memory automatically upon server start... this is great for lookup and small tables with no updating cause they are locked in memory, but try nailing a couple 100 million row table sometime :) KA-BOOM! :omg: Mark

                              D Offline
                              D Offline
                              David Stone
                              wrote on last edited by
                              #18

                              Oh cool. I had no idea that's how it worked. I knew that you could load MySQL stuff into memory, but I didn't know that SQL Server cached stuff as well. Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

                              M 1 Reply Last reply
                              0
                              • D David Stone

                                Oh cool. I had no idea that's how it worked. I knew that you could load MySQL stuff into memory, but I didn't know that SQL Server cached stuff as well. Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

                                M Offline
                                M Offline
                                Mark Conger
                                wrote on last edited by
                                #19

                                I know squat about MySQL but a buffer cache is one of the primary elements in doing server tuning to accomodate load. Otherwise the darn thing goes to disk for evenything so query returns go up an order of magnitude in return time. SQL server I think is a bit weak on how they did this compared to say...Oracle, but it works. The command in SQL Server is to use DBCC PINTABLE. In SQLServer's case it doesn't load the table at server start but at first query. Pages hit by the query are flagged as pinned and then they never age out of the buffer cache and stay there forever. Lots of DBAs cheat and build a job that runs on server start up that does something like a select * or a row count to force all pages into memory. (Can you tell I do this for a living :P) Mark

                                D 1 Reply Last reply
                                0
                                • M Mark Conger

                                  I know squat about MySQL but a buffer cache is one of the primary elements in doing server tuning to accomodate load. Otherwise the darn thing goes to disk for evenything so query returns go up an order of magnitude in return time. SQL server I think is a bit weak on how they did this compared to say...Oracle, but it works. The command in SQL Server is to use DBCC PINTABLE. In SQLServer's case it doesn't load the table at server start but at first query. Pages hit by the query are flagged as pinned and then they never age out of the buffer cache and stay there forever. Lots of DBAs cheat and build a job that runs on server start up that does something like a select * or a row count to force all pages into memory. (Can you tell I do this for a living :P) Mark

                                  D Offline
                                  D Offline
                                  David Stone
                                  wrote on last edited by
                                  #20

                                  Mark Conger wrote: Can you tell I do this for a living :laugh: No. Not at all... ;-) Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

                                  M 1 Reply Last reply
                                  0
                                  • D David Stone

                                    Mark Conger wrote: Can you tell I do this for a living :laugh: No. Not at all... ;-) Your bullshit is so effusive I can smell it across oceans... You impress no-one. You are a world-class sleazeball; an incomparable jerk. No-one is fooled by your idiotic attempts to slant votes. -A. N. Onymous on Bill SerGio

                                    M Offline
                                    M Offline
                                    Mark Conger
                                    wrote on last edited by
                                    #21

                                    hehe. Man I need to get a real job :) I've been doing this too long. Mark

                                    1 Reply Last reply
                                    0
                                    • J Jon Hulatt

                                      MySQL does now support transactions. http://www.mysql.com/products/mysql-4.0/index.html[^] Although i've never benchmarked them, i do personally have the touchy-feely feeling that it's quicker. Which kind of doesn't suprise me... mysql's primary goal has always been speed. and, the dev cycle is such that new code gets out to a product release far quicker than MS can. they are driven by commerical process, not technology. mysql still lacks a decent user interface, none of the ones available are anywhere near as useful as query analyser/enterprise manager combo. Signature space for rent. Apply by email to....

                                      V Offline
                                      V Offline
                                      Vuemme
                                      wrote on last edited by
                                      #22

                                      Jon Hulatt wrote: MySQL does now support transactions. I checked it some months ago and I didn't read the new release descriptions. I'm sorry for the wrong information I gave. I think that the problem with benchmarks and with database benchmarks in particular is that they are focused on a specific issue and sometime you will find yourself with the DB that is the fastest doing something you don't need :) I think that both oracle and ms have benchmarks showing that their DB is the fastest DB running on a x86 platform and IBM did the same with its DB2... -- Looking for a new screen-saver? Try FOYD: http://digilander.iol.it/FOYD

                                      1 Reply Last reply
                                      0
                                      Reply
                                      • Reply as topic
                                      Log in to reply
                                      • Oldest to Newest
                                      • Newest to Oldest
                                      • Most Votes


                                      • Login

                                      • Don't have an account? Register

                                      • Login or register to search.
                                      • First post
                                        Last post
                                      0
                                      • Categories
                                      • Recent
                                      • Tags
                                      • Popular
                                      • World
                                      • Users
                                      • Groups