자세히 보기

Thor Olavsrud
Senior Writer

안이한 접근은 금물! NoSQL DB 도입 팁 10가지

NoSQL 데이터베이스는 오늘날 많은 애플리케이션을 지원함에 있어 민첩성과 확장성, 성능, 가용성을 구현한다. 그러나 도입이 쉽지는 않다.

데이터는 기업의 혁신과 성장을 유도할 수 있다. 그러나 전제가 있다. 데이터를 효과적으로 처리할 수 있는 준비가 되어 있는 기업에만 해당된다.

오늘날 관계형 데이터베이스는 여전히 유효하지만, 경우에 따라 적합하지 않을 수 있다. 데이터 복잡성, 규모 등의 이유 때문이다. 많은 경우에 NoSQL 기술이 이런 공백을 메우게 된다. 하지만 조직에 NoSQL 시스템을 도입하는 것이 쉽지 않을 수 있다.

마크로직(MarkLogic)의 제품 부사장 조 파스콰는 노력의 대가는 충분하지만 신중한 계획과 조직의 지원이 필요하다며 많은 조직들이 이런 중요한 부분을 간과하고 있다고 지적했다. 마크로직의 NoSQL 데이터베이스는 미국의 ‘Healthcare.gov’에 적용된 바 있다.

파스콰는 기업과 NoSQL 기술을 매끄럽게 통합하는 것과 관련해 다음과 같은 10가지 요령을 공유했다.

1. 사용 사례를 개발한다
“성공적인 NoSQL 프로젝트를 위한 첫 단계는 비밀을 없애는 것이다.” 파스콰는 이렇게 말하며 자신이 달성하고자 하는 것을 명확히 이해하고 탄탄한 사용 사례를 개발해야 한다고 말했다.

그는 “이런 자세가 없는 기업은 실패할 가능성이 높다. 빅데이터 영역에서 이런 모습이 자주 보인다. 우리는 하둡(Hadoop)이 필요하고 하둡을 도입해야 한다고 말하는 사람들을 많이 만났다. 그들은 무엇을 왜 달성하려는지 모르고 있지만 하여튼 하둡이 필요하다고 주장하곤 한다. 어지간한 행운 없이는 결코 성공할 수 없는 태도다. 이러한 자세는 종종 비즈니스 가치를 이해하는데 방해가 되기도 한다.”

NoSQL은 거대한 규모와 방대한 데이터를 필요로 하는 프로젝트에 적절한 선택이 될 수 있다. 개인화, 사용자 프로필 관리, 운영 데이터에서 실시간 정보 추출, 콘텐츠 관리, 카탈로그, 고객 360도 관찰, 모바일 애플리케이션, 사물인터넷(Internet of Things) 애플리케이션, 디지털 통신, 사기 감지 등이 그것이다.

2. 기존의 데이터베이스 인프라와 NoSQL 모델이 어떻게 맞아 떨어지는지 파악한다
명확한 용도를 파악한 후에는 NoSQL이 해당 프로젝트에 적합한지 여부를 판단할 수 있다. 팀에서 익숙하게 이용 중인 기존의 툴이 비용상 적합해볼 수 있다. 그러나 파스콰는 적합하지 않은 것을 억지로 적용하는 것에 대해 다음과 같이 경고했다.

“이런 모습을 자주 보게 된다. 그들은 사용 사례를 파악하고 그들이 무엇을 달성하고 싶은지 알게 된다. 그리고 그들은 ‘이미 우리가 보유하고 있는 툴과 기술로 시도해 보자.’고 말할 것이다. 하지만 빅데이터(Big Data) 또는 데이터 민첩성이 필요한 많은 프로젝트에서 기존의 툴을 사용할 수 없을 때가 있다. 때로는 수 년 동안 사용하려 시도하다가 결국 적합하지 않다는 사실을 깨닫는다.”

Healthcare.gov가 실패한 사례에서 이런 문제가 발견되었다고 파스콰가 말했다. 해당 서비스는 본래 오라클 데이터베이스에 구축했지만 데이터의 기저를 이루는 엄격한 스키마(Schema)에 대한 필요 때문에 시스템에 엄청난 부담이 가해지게 되었다. 이 사용 사례에서는 NoSQL의 개요 민첩성이 필요했다.

파스콰는 “NoSQL이 정말로 자신의 문제 영역에 적합할 때를 파악하는 것이 정말로 중요하다”라고 말했다.

3. NoSQL이 파괴적이라는 사실을 인정한다
기업 인프라에서 NoSQL 도입을 결정한 경우 파괴적인 여파가 나타날 수 있음을 인지하고 이에 대비해야 한다. 파스콰는 다음과 같이 설명했다.

“NoSQL은 파괴적이다. 다양한 방식으로 파괴적이다. 개발자들은 자신의 기존 툴과 기술을 활용하고 싶어한다. 그들이 다른 것을 원하더라도 애플리케이션을 구축하고 데이터베이스를 활용하는 방법에 관한 생각이 이미 정립되어 있다. 이런 경험을 토대로 NoSQL이 동일한 기능을 제공하도록 하려는 것이 당연하다. 그러나 그렇게 되지는 않는다. 그들은 NoSQL이 SQL인양 사용하려다가 최악의 결과를 얻게 된다. 한 걸음 물러서서 실제로 NoSQL을 사용하는 적절한 방법에 관해 생각해 보아야 한다. 싸우려 들지 말고 관계형 데이터베이스처럼 만들려하지 말아야 한다. 이것은 새로운 모델이며, 파괴적인 모델이다. 이를 감안해 활용해야 한다.”

예를 들어, 전통적인 관점에서 보면 보유하고 있는 대형 애플리케이션에 대해 DBA(Database of Administrators)를 확보해야 한다. 하지만 NoSQL 세계에서는 10명의 DBA가 있었던 곳에 1명의 DBA만 있기도 한다. 나머지 DBA들은 다른 곳에 배치할 수 있는 것이다.

비용 모델 또한 바뀌게 된다. NoSQL은 확장형 상용 하드웨어 기반 기술이다. 파스콰는 이와 관련해 다음과 같이 설명했다.

“구매하고 사용하는 방식은 실제로 매우 다르다. 비용 효율적인 하드웨어를 구매하고 필요에 따라 확장할 수 있다. 이것이 실제로 조달 과정에 영향을 끼친다. 초기에 1,000 또는 2,000만 달러어치의 하드웨어를 구매할 필요가 없으며, 이에 따라 조달 과정을 매우 신속하게 진행할 수 있다. 담당자들은 그것을 활용할 것이다.”

4. 작게 시작해서 확장한다
관계형 기술은 작게 시작하기 어렵다. 대형 조직의 경우 수만 곳, 수십 만 명의 고객이 있기 마련이다. 또 데이터에 관한 다양한 정책 또는 인수한 다른 기업의 데이터 병합 등과 관련된 다양한 문제에 직면하게 된다. 파스콰는 “다른 데이터 사일로들의 데이터를 통합해야 할 필요성이 점차 커지기 마련이다”라고 설명했다.

관계형 기술로 이런 데이터 사일로 문제를 해결하려면 데이터를 통합하려면 모든 사일로를 확인하고 데이터를 조화시키는 스키마를 작성하고 이 모든 데이터를 통합하는 ETL 프로세스를 개발 및 배치해야 한다. 이 프로세스에만 수 개월 이상이 소요될 수 있다.

파스콰는 “하지만 새로운 제품을 만들어내거나 새로운 기업을 인수하거나 새로운 규제 요건이 있으며 다시 처음으로 되돌아가게 된다. 각 상황마다 초기에 모든 데이터 모델링을 수행해야 한다”라고 말했다.

반면 NoSQL의 확장형 상용 기반 아키텍처와 그 스키마 유연성 덕분에 처음에는 일부 데이터로 작게 시작해서 필요에 따라 확장할 수 있다. 엉망이고 구조화되지 않은 데이터에서 시작해 가치를 얻어낸 후에 필요에 따라 구조를 추가할 수도 있다.

5. 조직 내 의사결정자와 실행자를 확인한다
비단 NoSQL에만 해당되는 이야기가 아니다. 파괴적인 변화를 진행할 때는 변화 관리가 가장 어려운 문제일 수 있다.

파스콰는 “의사결정자의 의지와 후원이 필수적이다. 동시에 실행자도 참여를 이끌어내야 한다”라고 말했다.

도입의 핵심 세부사항에 따라 초기 계획이 달성되거나 망가질 수 있다. 즉 CIO와 함께 일하며 기술을 구현하는 사람들이 실제 변화를 만들어낼 수 있다는 점을 명심해야 한다고 그는 설명했다.

6. 계획을 저해하거나 가능하게 하는 프로세스를 확인한다
NoSQL 세계에서는 프로세스를 다시 생각해보는 것이 중요하다. 가장 큰 저해 요소 중 하나가 관성이다. 파스콰는 “프로세스를 바꾸지 않으면 기존에 해 왔던 것을 그대로 처리하려는 내적 관성으로 인해 상황의 진척 속도가 느려진다”라고 표현했다.

사용 사례와 새로운 기술에 의한 파괴적인 변화를 파악함으로서 프로세스를 정립하여 새로운 역량을 확인할 수 있다. 핵심 설계자와 기술 책임자가 이런 과정을 수립하고 조직을 참여시키는데 도움이 될 수 있다.

7. 내재적으로 적절한 역량이 있는지 파악한다
애플리케이션 디자인 절차와 시스템 애플리케이션 아키텍처를 수정하여 NoSQL을 수용하는 것이 중요하다며 파스콰는 다음과 같이 말했다.

“적절한 역량과 기술을을 보유하는 것이 필수적이다. NoSQL이 특별히 복잡한 것은 아니다. 사실 일반적으로 더욱 간소하다. 그러나 기존 기술과 차이가 있는 것도 사실이다. 많은 사람들이 30년 동안 데이터베이스 사업에 몸 담았고 그들이 사용했던 것은 오직 관계형 기술이다. 그들이 NoSQL이 학습하기는 것은 충분히 가능하다. 단 시간이 필요하다.”

교육은 이 과정의 핵심적인 부분이다. 파스콰는 마크로직이 고객을 포함한 모든 사람들에게 무료 교육을 제공한다고 말했다.

8. NoSQL DBMS와 쿼리(Query) 언어에 대한 이해를 측정한다
NoSQL에 대한 조직의 이해와 그 사용 방식을 측정할 필요가 있다. 파스콰는 “보유하고 있는 사람들은 이미 스마트한 데이터베이스 전문가들이다. 그들은 문제 없이 NoSQL을 이해할 수 있을 것이다. 기술적인 접근방식에서 대처할 수 없는 문제는 아니다. 문화적인 문제에 더 가깝다”라고 말했다.

9. 해결책이라는 의식을 수립한다
모든 이해당사자들이 NoSQL 이행의 필요성과 어떤 종류의 이익을 기대할 수 있도록 도와야 한다. 조직 내에서 압박 상황에 처한 이들에게 NoSQL이 기회가 될 수 있다.

파스콰는 “빅 데이터, 데이터 통합과 관련해 문제가 있는 사람은 이미 기존의 툴로 이 문제를 해결하려 노력하며 그 과정에서 많은 시간을 허비했을 것이다. 그들은 이미 많은 시간을 소비했기 때문에 압박감이 존재할 것이다”라고 말했다.

이를 테면 영업부문에서는 비즈니스 또는 규제에 따른 기한으로 머릿속이 복잡할 수 있다. 기술 전문가들 그리고 조달을 담당하는 사람들이 이들을 도울 수 있도록 해야 한다.

그는 “작게 시작해서 빠르게 시작하고 확장하라. 모든 이해당사자들에게 적용될 수 있도록 하라”라고 말했다.

10. 경험이 있는 사람에게 도움을 받는다
경험이 모든 차이를 만들어낸다며 파스콰는 다음과 같이 말했다.

“파괴적인 기술은 함정에도 빠지기 쉽다. 외부에서 이런 유형의 새로운 기술을 사용해 보고 수익을 얻어 본 다른 사람들과 관계를 맺고 공조하는 것이 매우 중요하다. 누군가 마크로직을 사용하고 있다면 이를 이용해 은행을 운영하거나 교육 시스템의 일환으로 활용하는 것이다. Healthcare.gov는 이를 이용해 증권거래소를 운영하고 있다. 이미 경험이 있는 외부의 누군가와 대화하는 것이 최선이다. 기술, 문화, 프로세스 부문의 전문가와 상담하고 조직 내에서 활용하여 활용도를 극대화할 수 있는 방법을 파악하라.”

서드파티 컨설턴트를 초빙하는 경우 파스콰는 직원들이 적절하게 시작할 수 있도록 돕는 설계자와 자문위원을 영입하도록 구조화된 전문 서비스를 찾으라고 조언했다. 이것이 전문적인 위탁 서비스보다 결국 자신에게 남는 것이라고 그는 덧붙였다.  

dl-ciokorea@foundryco.com

Thor Olavsrud

Thor Olavsrud is an award-winning senior writer for CIO.com, with 20+ years of experience covering IT and the tech industry. He focuses on AI, analytics, and automation. The American Society of Business Publication Editors (ASBPE) recognized him with a national silver award for his article, “How big data analytics helped hospitals stop a killer.” He also contributed to CIO.com’s 2018 and 2021 Azbee Awards of Excellence for Website of the Year and a 2024 Azbee national silver award for online industry news coverage.

이 저자의 추가 콘텐츠