ERDism beta

ERDism 소개

갱신 2026-10-30

ERDism 은 팀이 데이터베이스 스키마를 두는 곳입니다. 데이터베이스를 다루는 모든 사람이 같은 최신 스키마를 읽고, 스키마의 모든 변경이 기록되며, 변경은 발행되기 전에 승인을 거칩니다.

대부분의 팀은 스키마를 한 번 설계하고 나면 다음 일로 넘어갑니다. 다이어그램은 실제와 어긋나고, 저장소의 SQL 만이 믿을 수 있는 유일한 자료가 되며, "이 컬럼은 무엇이고 누가 바꿨나?" 라는 질문은 가장 오래 일한 사람에게 돌아갑니다. ERDism 은 첫 설계 이후의 시간, 곧 서비스가 운영되고 스키마가 계속 바뀌는 몇 년을 위해 만들어졌습니다.

팀이 ERDism 을 열어 두는 이유

  • 스키마를 이해하기 위해. 백엔드 개발자, QA, PM, 새로 합류한 사람이 같은 테이블 · 컬럼 · 키 · 관계를 읽습니다. 한 프로젝트에 같은 테이블을 보는 다이어그램을 여러 개 둘 수 있어, 팀마다 자기가 맡은 부분을 봅니다. 테이블마다 Markdown 으로 쓰는 문서 페이지가 있고, 별도의 위키가 아니라 테이블과 함께 보관됩니다.
  • 무엇이 바뀌었는지 보기 위해. 모든 변경이 누가 언제 했는지와 함께 프로젝트 타임라인에 기록됩니다. 삭제와 복원도 타임라인에 남습니다. 실행 취소와 다시 실행은 내가 한 변경에만 적용되고, 지금 보고 있는 다이어그램만이 아니라 프로젝트의 모든 다이어그램에 걸쳐 동작합니다.
  • 무엇을 발행할지 통제하기 위해. SQL 블록에는 승인 상태가 있습니다. 동료가 승인하거나 거부하고, 승인된 SQL 만 발행됩니다. 발행할 때마다 기록된 버전으로 남고, 그 버전을 내보낼 수 있습니다.

지금 할 수 있는 일

  • 세 가지 방법으로 스키마를 편집합니다. CREATE TABLE SQL 을 쓰거나, 캔버스에서 작업하거나, 속성을 편집합니다. 세 가지는 하나의 모델을 보는 세 화면이라, 한 곳에서 바꾸면 나머지에도 나타납니다.
  • 이미 운영 중인 스키마를 가져옵니다. SQL 을 붙여 넣거나 파일을 올리고, 무엇이 바뀔지 확인한 뒤, 적용하기 전에 어느 테이블을 어느 다이어그램에 둘지 고릅니다. ERDism 이 모델로 다루지 않는 구문은 쓰인 그대로 보존됩니다.
  • 데이터베이스 버전에 맞춰 검사합니다. MySQL 또는 MariaDB 와 버전을 고릅니다. 그 버전이 지원하지 않는 타입과 기능은 발행하기 전에 이슈로 표시됩니다.
  • 팀으로 일합니다. 워크스페이스에 멤버를 초대하고 역할을 정합니다. 누군가 테이블을 편집하는 동안 다른 사람들은 그 테이블이 사용 중이라는 것을 봅니다.

아직 하지 못하는 일

가입한 뒤에 알게 되기보다 여기서 먼저 말씀드리는 편이 낫다고 생각합니다.

  • MySQL 과 MariaDB 만 지원합니다. 다른 엔진은 지원하지 않습니다. SQL 편집기, 타입 카탈로그, 가져오기 검증기가 모두 MySQL 계열을 바탕으로 만들어졌습니다.
  • 발행하면 마이그레이션이 아니라 전체 스키마가 나옵니다. 발행된 버전은 완전한 CREATE TABLE SQL 입니다. ERDism 은 아직 두 버전 사이의 ALTER 문을 만들지 않습니다.
  • 운영 중인 데이터베이스에서 거꾸로 읽어 오지 않습니다. 데이터베이스에서 직접 하거나 마이그레이션 도구로 한 변경은 반영되지 않습니다. SQL 을 다시 가져와서 반영합니다.
  • 코드를 생성하지 않습니다. ERDism 은 애플리케이션 코드를 만들거나 읽지 않습니다.
  • 한 테이블을 동시에 편집할 수 없습니다. 2명이 같은 프로젝트에서 동시에 일할 수는 있지만, 테이블이나 SQL 블록은 편집 중인 사람이 다른 곳으로 옮길 때까지 그 사람이 잡고 있습니다.

다음으로

작동 방식은 빈 다이어그램에서 발행된 버전까지 프로젝트 하나를 따라갑니다. 릴리스 노트에는 무엇이 언제 바뀌었는지가 있습니다.