Jump to content

  • You cannot start a new topic
  • You cannot reply to this topic

Myisam To Innodb Did You Tried? Rate Topic   - - - - -

 

Posted 14 February 2018 - 09:27 PM #1

Hello All,

 

have you ever tried MYISAM to INNODB converting? did it work?

 

 

I do understand that cs-cart started in year 2004 and those times only solution for the search and index text field was MyISAM storage engine, as on InnoDB was not possible.

 

but after MySQL 5.6, indexing text is allowed on InnoDB. but why cs-cart didn't convert the storage engine?

 

Actually InnoDB is much better than MyISAM, because it allows you write and read on the same time, but it was not possible on MyISAM.

 

it will effects the performance and work. as well, coding too. I am not PHP coder and I do code on windows. but still, I do very good understand what is what.

 

currently, what I found is that the cs-cart works like, this; read code little bit, read MySQL, and read code.. so, between code and server..

 

I am new to the cs-cart multi-vendor and don't know every thing yet. but why the architects didn't or don't want to convert to InnoDB?

 

 

on the other hand, like Amazon Arora services, only allows InnoDB, not the MyISAM. and I believe that InnoDB is better than MyISAM and still research.

 

 

have you ever tried MYISAM to INNODB converting? did it work?

 
Thanks in advance!


 
  • tbirnseth
  • CS Cart Expert
  • Authorized Reseller
  • Join Date: 08-Nov 08
  • 10,223 posts

Posted 14 February 2018 - 11:05 PM #2

You need to read up on the +/- of MyIsam versus InnoDB.  In short, updates to data take longer with InnoDB (due to managing record locks) but reads can happen while an update is in process (will block on locked record).  For MyIsam, the table is locked while being updated but reads are faster because the mySQL engine does't have to manage record locks.  Good indexing will help both methods.

 

InnoDB is much better for very large and very active tables.  MyIsam is better for smaller tables (less than a million rows) that don't change frequently.

 

As usual, every site is different. So suggest you experiment with things to see what performs best in your environment.  Given the extent of JOINs used in cs-cart, having table locks because an update is in process on one of the joined tables can really slow things down.  But the overhead of managing record locks for each joined table can be way too expensive.  I'm guessing that cs-cart has done the performance analysis.

 

You should research what tables are updated the most from the customer side of things.  You should ignore what goes on in admin since those updates are rarely the same as customer side.  The sessions tables (and maybe cart tables) might benefit from InnoDB where the products table would not.


EZ Merchant Solutions: Custom (USA based) B2B Development, Consulting, Development and Special Projects (get a quote here).
Commercial addons, payment methods and modifications to meet your business and operations needs.


 

Posted 15 February 2018 - 06:54 AM #3

Hi, thanks for the reply.

 

well, that's why I am asking this; have you ever tried MYISAM to INNODB converting? did it work?

 

look at shopclues.com and how they use with over 53 million products and 500k vendors?

 

I didn't tested to convert MyISAM to innoDB, maybe some one already converted and tested. just would like to know. how big/strong is their webserver?

 

imagine that when you have like the shopclues.com over 500k vendors, that means huge online write on MySQL server. it could be any table like product, companies, features, and many more.... so, I have thinking maybe they converted? MyISAM storage doesn't allow you reading while it's locked, but InnoDB does.

 

 

these kind of things not in documents and not any example configs. also, many people don't talk about this, as mostly websites should be very small marketplaces.

 

 

how strong/big is shopclues.com server? how is their configs? they are really successful guys, really. but nothing info..



 
  • tbirnseth
  • CS Cart Expert
  • Authorized Reseller
  • Join Date: 08-Nov 08
  • 10,223 posts

Posted 15 February 2018 - 07:09 PM #4

I have done it on specific tables on specific customer sites for specific reasons.  But only for those tables with high frequency of updates that have very high read rates (like I mentioned above).

 

You will need to analyze your usage and take appropriate actions.  This is not something you can just say X is better than Y.  I believe that MyISAM is the best overall strategy for the vast majority of sites.  Less memory and cpu usage with acceptable performance.  Just MHO.

 

Making these type of decisions is part of the performance analysis of any site who is large enough to be able to afford the staff/consulting to do proper analysis, monitor it and continually adjust it as situations change (I.e. not most merchants here).

 

Not quite sure what shopclues.com has to do with the discussion.  They're not cs-cart and their site generates tons of JS and Ajax errors when going to their home page.


EZ Merchant Solutions: Custom (USA based) B2B Development, Consulting, Development and Special Projects (get a quote here).
Commercial addons, payment methods and modifications to meet your business and operations needs.


 

Posted 15 February 2018 - 07:54 PM #5

shopclues.com site is build on cs-cart, check on cs-cart.com portfolio page. they put it #1 example.

 

I am comparing that shopclues.com website's database. you are not understanding.

 

 

MyISAM vs InnoDB issue is big thing, unless someone who has done the research can easy say anything.

 

why cs-cart company not say anything on this on docs? I am not sure.