원제 : Seven Signs You May Need a NoSQL Database
번역 : NoSQL 데이터베이스를 필요로 하는 일곱가지 징조
먼지가 가득한 낡은 도서관 서고를 뒤지다가, 노스트라다무스의 오래된 NoSQL 고문서(codex)를 찾았습니다. 이런 우연이 있을까요? 이상하지만, 댄 브라운의 다음번 소설의 줄거리(plot)를 주지만, 나는 분별의 이유를 위해 고문서를 빼놓았습니다. NoSQL에 관해서, 여기에 여러분이 NoSQL 데이터베이스를 필요로 하는 노스트라다무스(그의 친구들은 Nosty라 불렀습니다)가 예언한 징조들이 있습니다....
- 뚯밖에도 많은 데이터베이스 필드들이 실제로 직렬화된 복잡한 객체임을 깨달았습니다(You noticed a lot of your database fields are really serialized complex objects in disguise). RDBMS로 왜 골치아파야 할까요? 관계형 데이터베이스에 직렬화된 객체를 저장하는 일은 임신하기 위해 노력하면서 역효과를 내는 피임약과 같습니다. 그냥 시작부터 스키마가 없는 데이터베이스를 사용하세요.
- 표준 질의 언어(SQL) 사용은 너무 제한적으로 되고 있습니다(Using a standard query language has become too confining). 여러분은 그냥 자유롭고 싶을 뿐입니다. SQL은 매우 쉽고, 편리하고, 표준이지만, 더 이상 정말로 도전적이지 않습니다(not a challenge). 여러분은 달라져야 합니다. 여러분을 위해 NoSQL이 있습니다. 모든 NoSQL은 각기 자신만의 완전하게 다른 질의 메커니즘(query mechanism)을 가지고 있습니다.
- 여러분의 도구박스는 오직 큰망치만 들어있습니다(Your toolbox only contains a hammer). 큰망치는 놀랍도록 다용도지만, 맛있는 라테는 만들 수 없습니다. 하나의 크기는 더 이상 들어맞지 않습니다. 적당한 작업과 그런 것들을 위해(all that jazz) 적당한 도구를.
- 여러분은 무엇인가에 항의하고 싶지만, 정말로 멋진 이유들로 가득차 있습니다(You really feel like protesting something, but all the really cool causes are full up). 수세기 동안 지속된 관계형 데이터베이스 헤게모니에 저항은 여러분이 자랑스러워할 첫번째 평가입니다. 모든 구호(stirring chants)를 생각해봅시다: "스키마는 물러가라(Let My Schema Go)!" 또는 "나에게 프라이머리키 접근을 주던지 인덱스를 달라(Give Me Primary Key Access or Give Me Indexes)!" 또는"나를 조인시키지 마라(Don't Join On Me)!"
- 여러분은 거대한 임피던스 부조화(impedance mismatch)를 개선하고 있으며 여러분의 신발을 닦아야 합니다(You stepped in a giant pile of impedance mismatch and need to wash off your shoes). 구축하려는 제품이 무엇이든지간에 그래프로 더 잘 표현됩니까? 또는 문서 모델로? 또는 슈퍼 모델로? 색안경을 끼고 테이블로 세상을 보기를 중단하세요.
- 이미 비대해진 저장 시스템의 상단에 완벽하게 분리된 객체 캐싱 시스템 관리는, 조금 어리석어 보이는 것처럼 시작되었습니다(Maintaining a completely separate object caching system on top of an already beefy table storage system, has started to seem a little silly). 이는 노력, 자원의 막대한 중복이고, 일치성 문제는 잔혹합니다.
- 네 명의 기수가 그들의 새로운 시작을 관객에게 안내하기 위한 빠르고 무한정 확장가능한 웹사이트를 구축해달라고 여러분과 계약합니다.: EndOfTheWorld.me.
노스트라다무스가 다른 것들에 그랬던것처럼 NoSQL에 대한 예언이 정확했는지 오직 시간만이 말해줄 것입니다.
'실제 아키텍처' 카테고리의 다른 글
GEO-aware traffic load balancing and caching at CNBC.com (0) | 2010.02.22 |
---|---|
Twitter’s Plan to Analyze 100 Billion Tweets (0) | 2010.02.19 |
10 eBay Secrets for Planet Wide Scaling (0) | 2009.11.17 |
Why are Facebook, Digg, and Twitter so hard to scale? (0) | 2009.10.13 |
How Ravelry Scales to 10 Million Requests Using Rails (0) | 2009.09.22 |