문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 NoSQL (문단 편집) == 정의 == “Not Only SQL”: 데이터를 저장하는 데에는 SQL 외에 다른 방법들도 있다. NoSQL이라고 하는 말은 대한민국이 아닌 모든 나라를 [[외국]]이라고 부르는 것과 비슷하다. 세상에는 한국 말고도 각자의 문화를 가진 수많은 나라가 존재한다. [[MongoDB]]에서 사용하는 쿼리 언어와 CouchDB에서 사용하는 쿼리 언어는 서로 전혀 다르다. 그럼에도 이 두 쿼리 언어는 같은 NoSQL 카테고리에 속한다. 어쨌거나 [[SQL]]이 아니기 때문이다. 또한 NoSQL이 No RDBMS를 의미하지는 않는다. BerkeleyDB같은 예외가 있기 때문이다. 그리고 No RDBMS가 NoSQL인 것도 아니다. SQL호환 레이어를 제공하는 KV-store라는 예외가 역시 존재한다. 물론 KV-store의 특징상 range query를 where절에 넣을 수 없으므로 완전한 SQL은 못 되고 SQL의 부분집합 정도를 제공한다. 사실 아직까지 NoSQL에 내려진 구체적인 정의는 없다. 하지만 NoSQL이라 불리는 데이터베이스들은 대체로 다음과 같은 공통적인 성향을 보인다. * 대부분 '''클러스터에서 실행할 목적'''으로 만들어졌기 때문에 '''관계형 모델을 사용하지 않는다'''. 그러나 모든 NoSQL 데이터베이스가 클러스터에서 실행되도록 맞춰진 것은 아니다. 예를 들어 NoSQL 데이터 모델 중 하나인 그래프 데이터베이스는 관계형 데이터베이스와 비슷한 분산 모델을 사용한다. * 대부분 '''오픈 소스'''다. * 보통 21세기 초반 웹 환경의 필요에 기초를 두고 있어서, 이 시기에 개발된 시스템만을 NoSQL이라고 부른다. 따라서 그 이전에 만들어진 ODBMS(Objective Database Management System)은 NoSQL에 해당하지 않는다. * '''스키마 없이 동작'''하며, 구조에 대한 정의를 변경할 필요 없이 데이터베이스 레코드에 자유롭게 필드를 추가할 수 있다. 요약하자면, '''대부분'''이 오픈소스고, 21세기 초반에 개발되었으며, SQL을 사용하지 않는 Schema-less 데이터베이스를 말한다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기