본문으로 건너뛰기
피드

MySQL부터 MongoDB까지, 오픈소스가 데이터베이스 판을 바꾼 30년

open-source 약 8분
vote
0
댓글
북마크

이 글은 MySQL, MariaDB, PostgreSQL, SQLite, MongoDB, Hadoop을 따라가며 데이터베이스 세계에서 오픈소스가 어떻게 표준이 되고 상업화의 대상이 됐는지 풀어낸다. 무료 코드가 스타트업과 빅데이터 생태계를 키웠지만, 동시에 인수, 라이선스, 클라우드 흡수 같은 현실적인 긴장도 만들었다는 얘기야.

  • 1

    MySQL은 1995년 공개된 뒤 LAMP 스택과 인터넷 붐을 타고 스타트업의 사실상 표준 데이터베이스가 됐고 2008년 Sun이 10억 달러에 인수함

  • 2

    Oracle의 Sun 인수 뒤 MySQL 통제 우려가 커지자 원 개발자가 MariaDB를 포크했고 Google, Wikipedia, Red Hat 등이 이동함

  • 3

    PostgreSQL은 표준 준수와 엄밀함, SQLite는 파일 하나에 담기는 단순함, MongoDB와 Hadoop은 빅데이터 시대의 유연성과 분산 처리를 대표함

무료 코드가 웹의 표준이 된 순간

  • 글은 데이터베이스 30년을 오픈소스의 흥망사로 읽어냄

    • 휴대폰 사진첩, Wikipedia 문서, 쇼핑몰 주문 내역 같은 일상 데이터가 결국 데이터베이스 위에 있음
    • 그중 상당수가 누군가 공개한 무료 코드 덕분에 돌아간다는 문제의식에서 출발함
  • MySQL의 시작은 1995년 스웨덴임

    • Michael Widenius와 David Axmark가 웹을 위한 가볍고 빠른 데이터베이스를 무료로 공개함
    • 2000년대 초 인터넷 붐과 함께 Linux, Apache, MySQL, PHP를 묶은 LAMP 스택이 스타트업의 무기가 됨
  • MySQL이 퍼진 이유는 단순했음. 적당히 빠르고, 충분히 쓸 만하고, 무엇보다 무료였음

    • Oracle 같은 비싼 상용 데이터베이스를 살 돈이 없던 스타트업에게 매력적인 선택지였음
    • 2008년 Sun Microsystems가 MySQL을 10억 달러에 인수하면서 무료 코드가 거대한 상업적 가치를 갖는다는 사실도 확인됨

무료에도 주인이 있다는 현실

  • 2010년 Oracle이 Sun을 인수하면서 분위기가 바뀜

    • MySQL 소유권이 오픈소스 진영이 가장 경계하던 회사로 넘어갔기 때문임
    • Oracle은 Java 라이선스 문제로 강하게 유료화를 밀어붙인 전력이 있어 MySQL도 같은 길을 갈 수 있다는 우려가 커짐
  • 이때 나온 방어 장치가 MariaDB 포크임

    • MySQL을 만든 Widenius가 코드를 통째로 복제해 별도 프로젝트로 갈라섬
    • 오픈소스에서 포크는 공개된 코드를 기반으로 원본과 다른 방향의 개발을 이어가는 방식임

ℹ️참고

> MySQL과 MariaDB 사례는 오픈소스의 핵심 방어력이 뭔지 보여줌. 코드가 공개돼 있으면 소유권은 넘어가도 생태계 전체를 완전히 잠그기는 어려움.

  • 실제로 큰 조직들도 MariaDB로 이동함
    • Google, Wikipedia, Red Hat 같은 곳들이 MySQL에서 MariaDB로 갈아탐
    • 두 데이터베이스는 여전히 많은 기능이 호환되지만, 점점 다른 방향으로 발전 중임

같은 오픈소스라도 철학은 완전 다름

  • PostgreSQL은 엄밀함과 표준 준수를 고집한 쪽임

    • 1986년 UC Berkeley 연구 프로젝트에서 출발함
    • 금융, 헬스케어, 공공 분야처럼 데이터가 틀리면 안 되는 곳에서 신뢰를 얻음
    • 지리정보와 복잡한 분석까지 끌어안는 다목적 플랫폼으로 진화함
  • SQLite는 반대로 극단적인 단순함을 택함

    • 서버도 관리자도 없이 데이터베이스 전체를 파일 하나에 담는 방식임
    • 작고 빠르고 믿을 수 있다는 원칙 덕분에 Android와 iOS의 기본 데이터베이스로 채택됨
    • 결과적으로 세상에서 가장 많이 깔린 데이터베이스가 됨
  • 이 대비가 재밌음. 오픈소스는 하나의 정답이 아니라 여러 철학을 동시에 키웠음

    • PostgreSQL은 엄밀함으로, SQLite는 단순함으로, MySQL은 접근성으로 각자 살아남음
    • 개발자가 데이터베이스를 고를 때 성능표만 보면 놓치는 맥락이 바로 이 지점임

빅데이터 시대에도 오픈소스가 다시 답이 됨

  • 2000년대 후반 데이터 규모가 폭발하면서 전통적 관계형 데이터베이스만으로는 버거운 문제가 생김

    • Google, Amazon, Facebook은 수십억 사용자와 페타바이트급 데이터를 다뤄야 했음
    • 한 줄씩 정돈된 관계형 모델만으로는 모든 문제를 풀기 어려워짐
  • 2006년 Google과 Amazon이 대규모 데이터 처리 기법을 논문으로 공개한 게 전환점이 됨

    • 내부 기밀로 묶어둘 수도 있던 아이디어가 공개되면서 새 생태계가 자라남
    • MongoDB는 개발자가 다루기 쉬운 문서형 데이터베이스로 스타트업의 사랑을 받음
    • Hadoop은 Google 논문을 바탕으로 등장해 빅데이터 처리의 사실상 표준이 됨
  • NoSQL이라는 말도 이 시기에 자리 잡음

    • 원래는 SQL이 없다는 뜻처럼 보였지만, 실제 흐름은 SQL만 쓰지는 않는다는 의미에 가까움
    • 관계형을 완전히 대체하기보다, 데이터 규모와 형태에 따라 보완하는 기술로 자리 잡음

오픈소스는 선의만으로 굴러가지 않음

  • 글의 결론은 “오픈소스 만세”가 아니라 훨씬 현실적임

    • MySQL은 무료라서 표준이 됐지만, 무료라서 인수와 통제의 표적도 됨
    • MongoDB는 상장으로 상업적 성공을 증명함
    • Hadoop의 개념은 결국 Amazon, Google, Microsoft의 유료 클라우드 서비스로 흡수됨
  • 그래도 디지털 세계의 바닥을 떠받치는 건 여전히 공개된 코드임

    • 우리가 매일 쓰는 서비스의 데이터베이스 선택지 상당수는 누군가 코드를 공개하기로 결정한 데서 시작됨
    • 다음 데이터베이스를 고를 때는 성능, 비용, 생태계, 라이선스, 장기 소유권까지 같이 봐야 함

기술 맥락

  • 데이터베이스를 고를 때 MySQL, PostgreSQL, SQLite, MongoDB를 단순히 기능 목록으로 비교하면 중요한 걸 놓쳐요. 각 데이터베이스는 만들어진 배경과 철학이 다르고, 그 철학이 운영 리스크와 개발 경험에 그대로 영향을 주거든요.

  • MySQL이 스타트업 표준이 된 이유는 최고로 엄밀해서가 아니라 웹 초창기에 싸고 빠르게 서비스를 띄울 수 있었기 때문이에요. 반대로 PostgreSQL은 표준 준수와 데이터 정합성을 중시해서 금융이나 공공처럼 틀리면 안 되는 영역에서 신뢰를 얻었어요.

  • MariaDB 포크는 오픈소스 라이선스와 생태계가 왜 중요한지 보여주는 사례예요. 특정 회사가 프로젝트를 소유하더라도 코드가 열려 있으면 커뮤니티가 다른 방향으로 이어갈 수 있고, 그게 장기 운영에서 일종의 보험이 될 수 있어요.

  • MongoDB와 Hadoop은 데이터 규모와 형태가 바뀌면 아키텍처도 바뀐다는 걸 보여줘요. 관계형 모델이 틀렸다는 게 아니라, 페타바이트급 데이터나 유연한 문서 구조를 다룰 때는 다른 선택지가 필요해진 거예요.

데이터베이스 선택은 기능표만 보는 일이 아니라 생태계와 라이선스, 장기 운영 리스크를 같이 보는 일이라는 걸 잘 보여줘. 오픈소스는 공짜라서 강력했지만, 공짜라서 더 쉽게 거대한 상업 플랫폼에 흡수되기도 했음.

댓글

댓글

댓글을 불러오는 중...

open-source

UCLA가 3천 달러짜리 오픈소스 로봇 손 ‘마이다스 핸드’를 공개

UCLA 로봇연구소 RoMeLa가 로봇 조작과 AI 학습 연구용 오픈소스 로봇 손 MIDAS Hand를 공개했어. 13개 능동 자유도, 3개 수동 자유도, 283개 3축 촉각센서, 약 3,000달러 부품 원가를 내세워 고성능 로봇 손 연구의 접근성을 낮추려는 프로젝트야.

open-source

러스트로 다시 만든 로컬 코딩 에이전트 ‘파이’, 자동화까지 노린다

파이는 기존 pi 코딩 에이전트를 러스트로 다시 만든 터미널 기반 AI 코딩 에이전트다. 프로젝트 안에서 파일을 읽고 수정하고, 셸 명령을 실행하고, 세션을 이어가며, 로컬 모델과 여러 모델 제공자를 쓸 수 있다. 단순 채팅 UI가 아니라 트리거, 크론, MCP 알림, 에이전트 간 허브 메시징까지 넣은 로컬 에이전트 런타임을 지향한다.

open-source

윈도우 95 시절 쉘 API로 만든 명령줄 도구, WinUtils 회고

글쓴이가 1996~1997년에 만든 WinUtils는 윈도우 95의 쉘 API를 감싼 얇은 명령줄 도구 모음이었다. 직접 파일 입출력을 구현하는 대신 탐색기와 같은 복사, 이동, 삭제, 휴지통, 확인창 동작을 그대로 활용한 점이 핵심이다.

open-source

Paseo, 여러 코딩 에이전트를 한 화면에서 돌리는 오픈소스 인터페이스 공개

Paseo는 Claude Code, Codex, Copilot, OpenCode, Pi 같은 코딩 에이전트를 한 인터페이스에서 실행하고 관리하는 오픈소스 도구다. 로컬 daemon이 에이전트 프로세스를 관리하고, 데스크톱·모바일·웹·CLI 클라이언트가 여기에 연결되는 구조라 자기 개발 환경 위에서 병렬 작업을 돌릴 수 있다.

open-source

줄리아 반응형 노트북 Pluto가 6년 만에 1.0을 찍었다

줄리아용 반응형 노트북 환경 Pluto.jl이 6년 개발 끝에 1.0을 공개했다. 이번 1.0 자체는 제거된 deprecated 기능 정도로 조용하지만, 재현성, 공유, 반응형 실행, 교육용 기능, 접근성, 편집기 도구까지 지난 몇 년의 누적 개선을 정리한 릴리스에 가깝다.