datanode (ndb) ->
ndb 들어갈 경우 메모리는 static char 계열로 계산하라
total stored size x3 의 사이즈가 ndb로 입력했을때 필요로 한 사이즈다.
따라 인덱스 사이즈도 적절히 여분을 두고 구성해야한다. (datamemory, indexmemory)
또 여기의 x2 가 디스크 스토리지에 필요한 사이즈다.
ndb node는 shm 형식의 network data block 이므로 shared 된다. 그러나 어떤테이블의 alloc을 어느 노드의 어느 allocation 이 가지고 있는지는 모른다.
failover시 query result 가 변동되며, 이상태에서 update, insert 가 동작한다는 문제점이 있다는것을 주의하라.
(stored procedures는 동작하지 않는다, 또한 극도로 위험한 부분이기도 하다)
failover risk migration 은 사실상 힘든부분이며 db활용형식에 따라 틀리다. 전체 row를 exam하는 경우 혹은 특정 row를 exam하여 값을 입력하는 경우는 failover시 대응책이 없다.
따라 replica를 올려 서버를 증량한다. 동일메모리 블락구간을 복제하여야 한다.
10GB의 sql data (dbtype)을 가지고 있다면, 통상 80GB의 메모리를 운용하여야한다.(안정적 운영시)
10gb * 3 = 30GB <- 필요 최소메모리
+ 30 GB (리플리카 더미) + 20GB (테이블 증량분을 위한 대책)
노드가 끊어지면 메모리할당공간부족으로.. insert가 안되는 경우도 발생한다는걸 잊지마라.
Posted by LeCieL


