데이터가 고정되어 있지 않은 데이터베이스로, 다음과 같은 타입이 있다.
데이터베이스의 ACID 성질을 준수해야 하는 경우
SQL을 사용하면 데이터베이스와의 상호작용 방식을 정확하게 규정할 수 있기 때문에, 데이터 처리 작업시 이상 징후를 줄이고, 데이터의 무결성을 보호할 수 있다.
전자 상거래, 금융 서비스 소프트웨어에서는 ACID 준수가 필수적이다.
소프트웨어에 사용하는 데이터가 구조적이고 일관적인 경우
규모가 많은 서버를 필요로 하지 않고, 일관적인 데이터를 사용하는 경우 관계형 데이터베이스를 사용한다. (굳이 NoSQL을 사용할 필요가 없는,,,)
데이터의 구조가 정형화되지 않은 대용량의 데이터를 저장하는 경우
NoSQL 데이터베이스는 데이터 유형에 제한을 두지 않고, 필요한 경우 쉽게 새 유형을 추가할 수 있다. 따라서 정형화되지 않은 많은 양의 데이터를 저장해야 할 때는 NoSQL 데이터베이스가 적합하다.
클라우드 컴퓨팅 및 저장공간을 최대한으로 활용하는 경우
클라우드 기반 데이터베이스를 구축하면 저렴한 비용의 솔루션을 제공받을 수 있다. 특히, 데이터베이스의 확장성이 중요한 경우, 여러 데이터 센터에 걸쳐 번거로움 없이 확장할 수 잇는 NoSQL 데이터베이스가 적합하다.
빠르게 서비스를 구축하고 데이터 구조를 자주 업데이트 하는 경우
NoSQL 데이터베이스는 스키마가 고정되지 않기 때문에 계속해서 빠르게 개발되는 소프트웨어에 적합하다.