Une base de données NoSQL est une base de données qui n'utilise pas les méthodes de bases de données relationnelles traditionnelles. Les bases de données NoSQL ont différentes approches du stockage des informations et facilitent souvent l'accès des systèmes complexes ou distribués aux informations des bases de données.
Dans les bases de données relationnelles traditionnelles, les données existent dans des tables définies et sont accessibles via des commandes SQL ou un langage de carrière structuré. En revanche, les bases de données NoSQL sont créées de différentes manières, par exemple avec des magasins de clés/valeurs, des méthodes de stockage de documents, des méthodes graphiques ou des méthodes de stockage d'objets. Certaines de ces bases de données peuvent utiliser un langage de requête structuré comme moyen de récupérer des données. Beaucoup d’entre eux sont conçus pour les performances, l’évolutivité, la flexibilité et la complexité, mais peuvent manquer d’une version supérieure pour une cohérence immédiate des données. Cependant, dans l’ensemble, l’utilisation de NoSQL augmente, en partie à cause de l’utilisation de ces outils avec le big data et les systèmes Web en temps réel.