단어 뜻 그 자체를 따지자면 "Not only SQL"로, SQL만을 사용하지 않는 데이터베이스 관리 시스템(DBMS)을 지칭하는 단어이다. 관계형 데이터베이스를 사용하지 않는다는 의미가 아닌, 여러 유형의 데이터베이스를 사용하는 것이다.
사실 아직까지 NoSQL에 내려진 구체적인 정의는 없다. 하지만 NoSQL이라 불리는 데이터베이스들은 대체로 다음과 같은 공통적인 성향을 보인다.
대부분 클러스터에서 실행할 목적으로 만들어졌기 때문에 관계형 모델을 사용하지 않는다. 그러나 모든 NoSQL 데이터베이스가 클러스터에서 실행되도록 맞춰진 것은 아니다. 예를 들어 NoSQL 데이터 모델 중 하나인 그래프 데이터베이스는 관계형 데이터베이스와 비슷한 분산 모델을 사용한다.
대부분 오픈 소스다.
보통 21세기 초반 웹 환경의 필요에 기초를 두고 있어서, 이 시기에 개발된 시스템만을 NoSQL이라고 부른다. 따라서 그 이전에 만들어진 ODBMS(Objective Database Management System)은 NoSQL에 해당하지 않는다.
스키마 없이 동작하며, 구조에 대한 정의를 변경할 필요 없이 데이터베이스 레코드에 자유롭게 필드를 추가할 수 있다.
요약하자면, 대부분이 오픈소스고, 21세기 초반에 개발되었으며, SQL을 사용하지 않는 Schema-less 데이터베이스를 말한다.
CAP 정리, 또는 브루어(에릭 A. 브루어)의 정리는 다음과 같은 세 가지 조건을 모두 만족하는 분산 컴퓨터 시스템이 존재하지 않음을 증명한 정리이다.

| 비교 항목 | RDBMS | Document based | Key-Value | |
|---|---|---|---|---|
| 데이터 구조 | 테이블 | 문서(JSON) | Key → Value | |
| 스키마 | 반드시 필요 | Optional | 없음 | |
| 쿼리 | SQL | JSON 쿼리 | Key lookup | |
| JOIN | 강력 | 약함(lookup 사용) | 없음 | |
| 트랜잭션 | 강력 | 보통 | 약함 | |
| 확장성 | 수평 어려움 | 쉬움 | 매우 쉬움 | |
| 속도 | 안정적 | 빠름 | 매우 빠름 | |
| 적합 분야 | 전통 시스템 | 웹·앱·로그 | Cache/세션 |