본문으로 바로가기

RECENT POST

TAG

rss   |   mail

접속 지연과 서비스 중단, 데이터베이스 이중화로 해결하세요

호스팅 | Posted at 2013.01.02 10:12

카페24 The 퍼펙트한 호스팅 _IT issue briefing
데이터베이스 이중화가 중요한 이유

사용자 삽입 이미지



인터넷 서비스를 하면서 가장 중요하게 신경써야 할 부분이 바로 백업과 이중화입니다. 인터넷 사이트의 특성상 데이터 유실 또는 서비스 중단으로 치명타를 입을 수 있기 때문이죠~


한번쯤 불의의 사고를 경험한 기업이라면 백업과 이중화의 필요성에 대해 크게 공감하실 텐데요, 그렇지 않은 곳들이라도 결코 방심해서는 안됩니다. 누차 말씀드리지만 인터넷 서비스를 하는 기업들에게는 백업이나 이중화가 특히 더 중요하답니다!


이번에 함께 알아볼 내용은 데이터베이스의 이중화 인데요, 호스팅 이용자들이 가장 많이 사용하는 “Mysql 데이터베이스의 이중화”를 주제로 데이터베이스는 어떤 역할을 하고 데이터베이스 이중화가 왜 중요한지, 그리고 Mysql 데이터베이스를 이중화하는 방법과 실제 구현 사례를 하나씩 살펴보도록 하겠습니다.




백업 VS 이중화 바로 알고가기!!


- 백업(backup): 작업 중이던 데이터 등의 사본을 만들어 저장해 두는 것. 사용자의 실수나 컴퓨터상의 오류, 바이러스 감염 등의 문제로 데이터 손실 혹은 삭제되는 것에 대비할 수 있음
  
- 이중화(replication): 신뢰도와 가용성을 증대시키기 위해 동시에 여러대의 서버에 동일한 데이터를 기억시켜 두는 것. 메인 서버에 장애가 발생해도 다른 서버를 투입해 바로 서비스 복구 가능




● 관심있는 데이터의 집합체 ‘데이터베이스’


데이터베이스(DBMS)는 사람들이 관심을 가지고 있는 데이터를 모아둔 것입니다. 일상 생활에서 자주 접할 수 있는 데이터베이스의 예로는 은행의 고객 자료 데이터베이스나 학교의 학생 자료 데이터베이스, 도서관의 도서 데이터베이스 등을 들 수 있습니다.


하나의 데이터베이스에는 서로 관련된 데이터들이 컴퓨터가 처리할 수 있는 형태로 저장되어 있습니다. 저장된 데이터는 사용자의 물음에 대해 대답할 수 있어야만 의미를 가질 수 있습니다.


도서관 데이터베이스를 예로 든다면, 데이터베이스에는 현재 도서관에 있는 책들에 대한 데이터 즉 작가, 출판년도, 도서명 등등의 데이터들이 저장되어 있으며 사용자는 데이터베이스로부터 찾고자 하는 책에 관한 정보를 추출해낼 수 있습니다.


사용자 삽입 이미지




다시 말하면 데이터베이스는 데이터를 보관하고 사용자의 물음에 대답하는 시스템이라고 볼 수 있습니다. 데이터베이스에 저장된 데이터는 끊임없이 변화합니다. 도서관 데이터베이스의 경우 새로운 책이 들어올 때마다 새로운 도서에 대한 데이터가 저장되어야하고 책이 대출되었을 때나 반납되었을 때 대출과 반납에 대한 정보가 저장되어야 합니다.



● 이중화 시 사이트 신뢰도와 가용성 증대


데이터베이스는 이러한 외부의 변화에 맞추어 적절히 저장된 데이터를 변경시킬 수 있어야합니다. 새로운 데이터를 저장하거나 기존의 데이터를 삭제, 변경시키는 작업을 수행하고 저장된 데이터는 일관성을 유지하도록 합니다.


이러한 일련의 작업을 통해 사용자 물음에 대답을 할 수 있는 겁니다. 사용자의 요구에 맞게 제대로 서비스를 제공하기 위해서는 데이터베이스의 역할이 중요합니다.

특히 인터넷 서비스를 하는 기업의 데이터베이스에는 쇼핑몰의 제품정보, 주문/결재내역을 비롯하여 언론사의 기사자료, 병원의 진료기록, 인터넷 커뮤니티사이트의 게시판 자료 등 서비스에 필요한 각종 중요 데이터들이 저장됩니다.


서두에 인터넷 서비스를 하는 기업들에게는 이중화가 특히 더 중요하다고 강조한 이유도 바로 이 때문입니다. 데이터베이스를 이중화하게 되면 늘어나는 사이트 접속자에 대응해 부하를 분산시킬 수 있고 서버 장애가 발생해도 10초 내 서비스 복구가 가능하므로 중단없는 서비스를 제공할 수 있습니다.



사용자 삽입 이미지



그러므로 사이트의 부하 분산과 중단없는 서비스 운영을 원한다면 데이터베이스 이중화를 하시는 것이 좋습니다. ^^

데이터베이스의 종류는 Oracle, DB2, MS-SQL, Mysql, Altibase, Cubrid 등 다양한데요, 이 가운데 호스팅 이용자들이 가장 많이 사용하는 Linux 기반의 Mysql 데이터베이스 이중화에 대해 알아보도록 하겠습니다. 이어지는 다음 호에서는 Mysql 데이터베이스 이중화 방법과 구현 사례가 공개되오니 많은 관심부탁드립니다. ^^ 


☞ 바로 보기: Mysql 데이터베이스 이중화 방법
☞ 바로 보기: 365일 신뢰받는 데이터베이스 이중화 사례

* 본 내용은 네이버 오픈백과 데이터베이스의 정의를 참조해 작성되었습니다.

Posted by cafe24