MPP 기반 데이터 저장소를 확보한다고 해서 모든 것이 해결되는 것이 아닙니다. 데이터 저장이라는 단계에서 데이터를 비용 효율적으로 저장한다는 것은 너무나 당연한 이야기이자 사실 고민의 대상조차 되지 못합니다. 정말 중요한 과제는 어떤 데이터를 어느 위치에 어떻게 저장하여 데이터의 고립과 중복을 최소화하고, 데이터의 정합성을 유지하며, 다운스트림 유저들의 분석 요건을 만족시킬 것인가입니다. 물론 이 과제는 데이터 저장 단계에서만 고민해야 할 문제가 아니라 데이터 엔지니어링 전반에 걸쳐 고민해야 할 한 조직의 데이터 전략이지만, 데이터 저장과 관련된 요소가 가장 크게 영향을 미치므로 여기서 언급하고자 합니다.
데이터의 저장 전략을 한 마디로 정의하면 두 가지 상충하는 요건의 균형점을 찾는 것입니다. 여기서 두 가지 상충하는 요건들이 바로 SSOT (Single Source of Truth) 와 MVOT (Multiple Versions of Truth) 입니다. SSOT란 조직 내 데이터 자원에 대한 일괄적이고 강력한 통제를 통해 정합성, 통일성, 보안을 확보해 잘못된 데이터가 유통되는 것을 방지하고자 하나의 데이터 원본을 저장하는 방식입니다. MVOT란 이와 반대로 다양한 부서의 다양한 상황과 데이터 요건을 만족시키기 위해 데이터베이스를 분산시켜 필요에 따라 여러 본의 데이터를 저장하는 방식입니다. 쉽게 비유하자면 데이터 웨어하우스는 SSOT, 데이터 마트는 MVOT라고 할 수 있습니다.

위의 그림처럼만 구성된다면 SSOT와 MVOT의 균형이 잘 이루어졌다고 할 수 있습니다. 왜냐하면 데이터 웨어하우스가 SSOT로서 뒤를 받쳐주고, 복수의 데이터 마트들이 MVOT 역할을 수행하며 데이터 웨어하우스만을 원천으로 삼고 있기 때문입니다. 하지만, 데이터 마트가 하나의 데이터 웨어하우스가 아닌 다른 복수의 데이터 소스를 참조하거나, 데이터 웨어하우스가 복수로 존재하는데 각각이 데이터를 저장하고 처리하는 방식이 다르다거나, 심지어 데이터 웨어하우스가 데이터 마트의 데이터를 참조하는 등 SSOT와 MVOT의 경계가 완전히 무너진 경우는 상당히 흔하게 찾아볼 수 있습니다. 모든 데이터는 SSOT에서 MVOT, 그리고 MVOT에서 다시 SSOT로 환원될 수 있어야 합니다. 이렇게 하기 위해서는 데이터 변환의 역사 혹은 계보를 유지하는 것이 중요한데 이를 데이터 리니지 (Data Lineage) 라고 합니다.
이에 대한 대안으로 등장한 개념들이 EDW (Enterprise Data Warehouse) 와 데이터 레이크 (Data Lake) 입니다. EDW와 데이터 레이크는 쉽게 말해 궁극적인 SSOT입니다. SSOT와 MVOT의 경계선이 무너져 더이상 기존의 데이터 웨어하우스들이 SSOT의 역할을 수행하지 못하게 되자 아예 조직 내 모든 데이터의 제 1 기착지를 만들어 SSOT를 구성하고 나머지 모든 시스템들은 MVOT로서 이곳의 데이터를 참조하도록 하자는 것이 기본사상입니다. 오늘날 빅데이터 플랫폼의 대부분은 이러한 사상에 따라 구성되어 있습니다. 하단의 Amazon의 상용 클라우드 기반 데이터 서비스 아키텍쳐를 참조해 보시기 바랍니다.