물론 충분한 시간과 돈을 들이면 어떤 문제라도 해결할 수 있다. 질문은 “할 수 있느냐?”가 아니라 “해야만 하는가?”일 것이다. 현실을 짚어보자.
대부분 데이터베이스는 물리적인 파티셔닝 메커니즘을 제공한다. 이를 통해 물리 데이터를 네트워크를 통해 분리할 수 있다. 여기서 네트워크에는 개방형 인터넷이 포함되는데, 클라우드에서 파티션이 호스팅되는 네트워크이다. 일부 기업은 이런 아키텍처를 하이브리드 클라우드에 사용한다. 하지만 원래 이 기능은 클라우드나 인터넷을 이용하는 느린 네트워크에 맞춰 개발된 것이 아니다.
문제라면 많다. 동작 가능한 상태로 구현한다고 해도, 저장된 데이터의 절반은 눈에 띌 만한 지연이 발생할 것이다. 생각해 보자. 클라우드 기반 애플리케이션이 클라우드와 온프레미스에 파티션된 데이터에 액세스한다. 원격지 파티션, 이 경우 온프레미스 파티션에 있는 데이터는 심각한 지연 문제를 겪게 될 것이다.
성능은 가장 느린 부품이 결정한다는 것을 잊지 말기 바란다. 어떤 데이터베이스가 지연이 있는 데이터를 생산하면, 전체 데이터의 지연 시간 역시 늘어난다. 성능 모델링을 사용해 증명할 수도 있고, 그냥 시도해 봐도 좋다. 데이터를 가까이에 보존한다는 기쁨을 얻는 대신 성능을 대가로 치르게 될 것이다. 실제로는 대부분 제대로 동작하지도 않는다.
클라우드 여부와 관계없이 많은 데이터베이스 솔루션 업체가 이 구조를 사용하고 싶다는 유료 고객에게 안된다고 말하지 않을 것이다. 분명 돈으로 문제를 해결할 수도 있다. 전용 네트워크 회선 같은 것에 비용을 지불하면 된다. 하지만 이렇게 하는 대가로 클라우드 기반 데이터베이스가 가져다줄 어떤 가치도 얻지 못하게 된다. 다시 말해, 그냥 온프레미스 환경에 두는 것이 더 저렴한 방법이다.
클라우드로의 이전은 말 그대로 클라우드로 이전하는 것이다. 이런 주술에 가까운 하이브리드 방식을 시도해 기술을 원래 설계된 영역 너머로 억지로 확장하면, 결국에는 마이그레이션을 두 번 하게 될 것이다. 한 번은 제대로 동작하지 않는 솔루션으로, 그리고 또 한 번은 제대로 동작하는 솔루션으로. 처음에 제대로 하는 것이 가장 좋다. editor@itworld.co.kr