엘리슨이 IBM 논문으로 오라클을 세운 SQL 50년 비하인드
코드는 IBM 사내에서 IBM 제품을 비판했다
에드거 코드는 IBM 직원이었지만, 자기 회사 주력 상품이 잘못됐다고 논문에 적어 발표했어요.
1970년의 일이에요.
당시 IBM의 캐시카우는 IMS라는 데이터베이스 시스템이었어요.
IMS는 데이터를 나무처럼 위에서 아래로 쌓는 계층형 구조였어요.
서울 지도에서 '강남구 역삼동 테헤란로 427번길'을 찾듯이, 경로를 미리 알아야만 데이터에 닿을 수 있는 구조였어요.
코드는 이게 근본적으로 잘못됐다고 봤어요.
그는 "데이터는 어디에 저장되어 있는지 몰라도, 무엇인지만 알면 꺼낼 수 있어야 한다"고 주장했어요.
그게 바로 코드가 논문에서 제안한 관계형 모델이에요. 데이터를 표 형태로 쌓아두고, 표와 표 사이의 관계로 원하는 것을 뽑아내는 방식이에요.
삼성 직원이 "갤럭시 폰 설계가 틀렸습니다"라는 논문을 학회에 공개 발표하는 상황을 상상해보세요.
코드가 한 게 정확히 그거였어요.
IBM 내부에서 이 논문을 환영하는 사람은 많지 않았어요.
SEQUEL은 영국 항공사 때문에 SQL이 됐다
SQL은 원래 SEQUEL이었어요.
그 이름을 영국 항공사가 먼저 등록해놓아서, 모음 두 개를 빼야 했어요.
1974년 IBM의 도널드 체임벌린과 레이먼드 보이스가 코드의 이론을 실제로 쓸 수 있는 언어로 만들었어요.
이름은 SEQUEL, Structured English Query Language의 줄임말이에요.
"구조화된 영어 질의 언어"라는 뜻인데, 영어 문장처럼 쓰면 데이터베이스가 알아들을 수 있게 만들겠다는 의도였어요.
그런데 영국 항공기 제조사 호커 시들리(Hawker Siddeley)가 SEQUEL이라는 상표를 이미 등록해놓고 있었어요.
가게 이름을 정했는데 옆 동네 빵집이 그 이름을 먼저 쓰고 있는 꼴이에요.
결국 SEQUEL에서 E를 두 개 빼서 SQL이 됐어요.
세계에서 가장 많이 쓰이는 데이터 언어의 이름이, 비행기 회사 상표권을 피하려다 탄생한 거예요.
프로그래머들이 'SQL을 에스큐엘이라고 읽냐, 시퀄이라고 읽냐' 오랫동안 싸워온 이유가 여기 있어요.
원래 이름이 시퀄(SEQUEL)이었으니까요.
엘리슨은 IBM이 공개한 논문으로 IBM을 이겼다
래리 엘리슨은 IBM 연구원들이 자랑스럽게 발표한 논문을 보고, IBM보다 2년 먼저 상용 제품을 만들어버렸어요.
1976년 IBM은 학술지에 System R 논문을 공개했어요.
System R은 SQL을 실제로 구현한 IBM 내부 시제품이었는데, IBM은 이 연구 성과를 논문으로 발표하면서 기술 커뮤니티에 공유했어요.
엘리슨은 그 논문을 읽고 바로 실행에 옮겼어요.
1977년 캘리포니아에서 회사를 세우고 IBM의 논문을 그대로 구현했어요.
그리고 1979년, 오라클 V2를 출시했어요.
정작 IBM의 상용 SQL 제품은 1981년에야 나왔어요.
IBM이 자기 논문 하나로, 자기보다 먼저 시장에 나온 경쟁자를 직접 만들어준 셈이에요.
회사가 신제품 설계도를 학회에서 공개했더니, 옆 회사가 그걸 먼저 출시한 상황이에요.
그 '옆 회사'가 지금의 오라클 제국이 됐어요.
엘리슨은 이후 수십 년간 세계 최고 부자 명단에서 빠지지 않았어요.
코드는 모든 상용 DB가 가짜라고 선언했다
1985년 코드는 시장에 깔린 모든 관계형 DB가 자기가 정의한 진짜 관계형 DB가 아니라고 선언했어요.
그는 컴퓨터 전문지 <컴퓨터월드>에 '관계형 데이터베이스의 12가지 규칙'을 발표했어요.
진짜 관계형 데이터베이스라면 이 열두 가지 조건을 모두 만족해야 한다는 기준이었어요.
그런데 당시 시장에 깔린 어떤 상용 DB도 열두 개를 다 만족하지 못했어요.
오라클도, 심지어 IBM의 DB2도 마찬가지였어요.
발명가가 자기 이름을 단 짝퉁이 시장에 넘쳐나는 걸 보고, 직접 '이건 다 가짜다' 명단을 공개한 격이에요.
코드는 이론을 만들었고, 엘리슨은 그 이론으로 돈을 벌었어요.
코드가 "이건 진짜가 아니야"라고 외쳤을 때도, 가장 많이 팔고 있는 회사는 여전히 오라클이었어요.
코드는 1981년 튜링상을 받았어요.
컴퓨터 과학의 노벨상이라 불리는 상이에요.
그 상패가 코드의 책상에 있는 동안, 엘리슨은 요트를 사고 있었을 거예요.



