DB 고수님께 도움을 요청 드립니다...

 
1) Mysql 의 innodb 이며
    DB 단독 서버 운영으로 16M Ram 을 사용하려고 할때
 
2) 하나의 테이블안에 1억건의 Record 가 있고
    필드 갯수는 대략 30 개이며
    타입은 int, varchar, text 등의 타입들이고

3) select 와 insert 와 update 가 자주 일어나며
    delete 은 가끔 있고
 
4) 다른 테이블과 Join 관계가 존재하며
    일부분의 내용을 가지고 오고, 수정하는 빈도수가 잦고
 
5) index 을 구성해서 최적화 하겠지만
    기능 추가로 인해 Table 이 가공될것입니다. ( 필드 추가 )
 

이때 하나의 테이블안에 계속 쌓게 하는 것이 낳을까요?
 
 
 
|

댓글 9개

로그 분석용인것 같은데, NoSQL나 빅데이타쪽으로 알아보시는게 좋을것 같습니다.
명량폐인님 답변 감사합니다.

로그분석용이 아니라
실제 업무 로직용 Table 인데
저는 위와 같은 패턴으로 설계한적이 없어서
요구자의 요구사항이
옳은건지, 맞은 말인지 의아해서 도움을 받고자 질문 올렸습니다.
index가 걸린테이블에 데이타가 insert가 되면 부하가 많이 발생합니다.
인덱스가 없는 테이블이라면, 1억건이 가능할지도 모르겠지만, 위의 상황으로 보면, 힘들거라 봅니다.
고수이신 명량폐인님 께서
직접 답변 달아 주셔서 감사합니다.....(ㅡㅡ)(__)
저 상태로의 운용은 불가능한거 같지만.
제가 저 상황이라면
정규화나 통테이블 처리로는 안될거 같고.
CPU의 L2, L3 캐쉬처럼 캐쉬테이블을 만들어서 처리를 시도해보겠어요.
물론 한번 사용한 데이터가 또 사용될 확률이 높다는 가정하에 만들 수 있는거고
운용하면서 캐쉬테이블에 원하는 데이터가 있을 확률(hit rate)을 높이는 방법을 생각하겠죠.
답변 감사드립니다...

문제는 금전이 왔다갔다하는 테이블이라서요
말씀하신 방식으로 사용할 경우,
메모리 부족이나, 시스템의 과부하로 인해
데이타 손실이나 불일치 할 가능성이 있지 않을까 싶어요..
SWAP 을 절대 지향 하지 않은 편이라,
혹시 모를 SWAP 까지 FULL 로 찰때......ㅠㅠ


손실이 발생해도 되는 세션이나 로그라면 무관하지만,
금전과 관계된 것이라 1 Record 의 손실도 타격이거든요.
data File 을 1G 단위로 짤라서 생성시켜 놓은다 쳐도
Table 내용이 나눠질께 뻔하고....
where 절로 일부분을 짤라 메모리에 상주한다고 해도
Disk I/O 현상이 많아 부하 및 DB 가 깨질것 같고...

경험이 있으시거나, 위의 내용이 가능하다면 어떤 방법이 있를까요?
하드웨어로 때려 넣은다는건 한도 끝도 없는 일인지라..
옵티마이저 최적화... 이걸 잘하는 플머는 상단한 금액을 받는다죠.
DB 전문가 말씀하시는 ... ?
과거에 Oracle 튜닝 전문가가
어느 모업체에 방문해서 처리하는데
하루에 1천만원이라는 소리을 들은적이 있기는 했어요..
댓글을 작성하시려면 로그인이 필요합니다. 로그인

자유게시판

+
제목 글쓴이 날짜 조회
13년 전 조회 1,100
13년 전 조회 1,064
13년 전 조회 941
13년 전 조회 1,229
13년 전 조회 995
13년 전 조회 1,098
13년 전 조회 1,117
13년 전 조회 1,219
13년 전 조회 1,039
13년 전 조회 3,732
13년 전 조회 1,195
13년 전 조회 1,217
13년 전 조회 1,728
13년 전 조회 1,182
13년 전 조회 1,354
13년 전 조회 1,482
13년 전 조회 1,346
13년 전 조회 1,106
13년 전 조회 1,864
13년 전 조회 1,156
13년 전 조회 1,125
13년 전 조회 1,062
13년 전 조회 1,240
13년 전 조회 1,123
13년 전 조회 1,105
13년 전 조회 1,113
13년 전 조회 1,158
13년 전 조회 4,907
13년 전 조회 1,496
13년 전 조회 1,240
🐛 버그신고