티스토리 뷰

최근들어 서비스를 운영하면서


업데이트이후 서버에 부하가 과도하게 걸리는 현상이 발생했다.


내부적으로 무척 많이 콜되는 api에서 업데이트를 하는 코드가 들어간게 문제였는데.


문제를 해결하면서 두 스토리지 엔진의 차이점을 찾아보았다.



간단하게 비교하면


MyISAM의 경우 

InnoDB보다 먼저 개발되었는데

select속도는 무척 빠르지만

별로 지원하는 기능이 없다

또 쓰기(insert, update)작업을 할 때 테이블 단위로 락을 걸어버리기때문에 

업데이트 속도가 느리다는 단점이있다.


InnoDB의 경우

상대적으로 더 무겁지만

데이터 무결성보장, 트렌젝션, 복구처리 등 여러 기능들을 지원한다


만들고자하는 제품의 구조를 보고 결정을 하면 될 듯하다.

잦은 변경 혹은 생성이 일어나는 서비스에서는 InnoDB를

아닌곳에서는 MyISAM을 사용하자.



http://dba.stackexchange.com/questions/1/what-are-the-main-differences-between-innodb-and-myisam

스택오버플로에서 잘 정리된 내용이 있어서 첨부

  • InnoDB has row-level locking, MyISAM can only do full table-level locking.
  • InnoDB has better crash recovery.
  • MyISAM has FULLTEXT search indexes, InnoDB did not until MySQL 5.6 (Feb 2013).
  • InnoDB implements transactions, foreign keys and relationship constraints, MyISAM does not.


공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함