NoSQL

NoSQL

En informatique, NoSQL est un buzzword pour désigner une catégorie de système de gestion de base de données (abr. SGBD) destinés à manipuler des bases de données géantes pour des sites web de très grande audience tels que Google, Amazon.com, Facebook ou eBay[1]. Cette catégorie de produits fait le compromis d'abandonner certaines fonctionalités classiques des SGBD relationnels au profit de la simplicité, la performance et une scalabilité élevée[2].

De grand acteurs d'Internet, et notamment Google (BigTable), Amazon (Dynamo (en)), LinkedIn (Project Voldemort), Facebook (Cassandra Project puis HBase), SourceForge.net (MongoDB), Ubuntu One (CouchDB), etc. exploitent des bases de données de type NoSQL.

La rencontre meetup NoSQL de San Francisco du 11 juin 2009 a été particulièrement importante pour le développement de cette tendance. Plus de 100 développeurs de logiciels ont assisté à des présentations de solutions telles que Project Voldemort, Cassandra Project, Dynomite, HBase, Hypertable, CouchDB et MongoDB.

Sommaire

Historique

Le terme NoSQL (Not Only SQL) a été utilisé pour la première fois en 1998[3], il est la combinaison de non et de SQL, ce qui laisse penser que cette technologie s'oppose à SQL. Selon Shashank Tiwari dans son livre Professional NoSQL, « Les auteurs de ce néologisme ont probablement voulu signifier non-relationnel, mais ont préféré le mot NoSQL parce qu'il sonne mieux ». Le mot est aujourd'hui utilisé comme terme générique pour tous les SGBD et les logiciels de stockage de données qui ne suivent pas les principes classiques des SGBD relationnels[1].

Les SGBD non-relationnels sont plus anciens que les SGBD relationnels et sont répandus sur les mainframes et les logiciels d'annuaire. Ces SGBD ont connu une nouvelle jeunesse avec le NoSQL dans le domaine des services Internet. La plupart des logiciels NoSQL sont destinés à être utilisés dans les dispositifs en répartition de charge des grands services Internet[1].

La conférence meet-up de 2009 à San-Francisco est considérée comme l'inauguration de la communauté des développeurs de logiciels NoSQL. Des développeurs qui, selon le magazine Computerworld, « racontent comment ils ont renversé la tyranie des coûteux et lents SGBD relationnels par des moyens plus simples et plus rapide de manipuler des données ». Selon Jon Travis, un des présentateurs de la conférence, « les SGBD relationnels offrent trop, alors que les produits NoSQL offrent exactement ce dont vous avez besoin »[4].

Les leaders de cette communauté sont des start-up de développeurs qui n'ont pas les moyens d'acheter les SGBD de Oracle et qui ont développé leurs propres SGBD en imitant les produits de Google et Amazon.com. Les produits qu'ils ont créés sont capables de manipuler les très grandes quantités de données (qui se mesurent en centaines de Téraoctets) et offrent une scalabilité bien adaptée au besoins des applications Web 2.0 ce qui les rends attractifs sur le marché des SGBD. Les auteurs décrivent leurs produits comme n'étant pas des SGBD, mais plutôt des logiciels de stockage de données[4]

Le marché

Les SGBD relationnels sont une des technologies les plus répandues dans les entreprises. Ils sont dimensionnés pour la quantité d'informations et le nombre d'utilisateurs d'une entreprise et sont destinés principalement au traitement de transactions. Ils montrent cependant leurs limites lorsqu'ils sont utilisés dans un périmètre plus large, tel qu'un site web populaire, en répartition de charge (load balancing), fréquenté par des millions de visiteurs dans le monde entier: Les SGBD relationnels nécessitent alors des logiciels et des ordinateurs coûteux ainsi que des connaissances pointues.

C'est ce segment de marché qui est occupé par les logiciels NoSQL: Ils sont concus dès le départ dans l'optique d'être utilisés sur Internet[5]. Ces produits font le compromis d'abandonner certaines fonctionalités classiques des SGBD relationnels tels que le stockage sous forme de matrice et le langage de commande SQL, au profit de la simplicité, la performance et une scalabilité élevée[2]. La complexité de mise en œuvre du traitement des transactions a été réduite dans le but d'obtenir des services plus simples et plus spécialisés[6].

Simple à mettre en œuvre, le stockage d'information à l'aide de tableau associatifs (dit clé/valeur) existe depuis le début de l'histoire des bases de données, en 1970. Les nouvelles demandes en rapport avec les sites web de grande audience apparues dans les années 2000 et la facilité de mise en œuvre des tableaux associatifs sont à l'origine de la naissance de plusieurs nouvelles solutions basées sur ce principe. Ces solutions ont comme point commun qu'elles ne mettent pas en œuvre le langage de commande SQL et cette nouvelle tendance a été baptisée NoSQL. Ce titre est cependant trompeur, parce qu'il est probable qu'à l'avenir certaines de ces solutions offriront le langage SQL en option[7].

Dans le marché des SGBD NoSQL se trouvent Cassandra, MongoDB, Voldermort, CouchDB et SimpleDB. Selon Oracle le "battage" (sic) autour de ces produits vient du fait qu'ils sont impliqués dans des grands sites Internet tels que Facebook, LinkedIn ou Amazon.com. C'est un marché jeune, ou il n'y a pas encore de leader (en 2011). Le marché est en évolution rapide, et les comparatifs de produits de ce marché se trouvent rapidement dépassés[8]. Lors d'un sondage réalisé en 2010 auprès des professionels de l'informatique, 44% des sondés répondent qu'ils n'ont jamais entendu parler de NoSQL[9].

Implémentations

Exemples d'implémentation :

Voir aussi

Articles connexes

Liens externes

Références

  1. a, b et c (en)Shashank Tiwari,Professional NoSQL,John Wiley & Sons - 2011,(ISBN 9781118167809)
  2. a et b (en)Nick Rozanski, Eoin Woods,Solfware systems architecture: Working with Stakeholders using viewpoints and perspectives,Addison-Wesley,(ISBN 9780132906128)
  3. (en)http://newtech.about.com/od/databasemanagement/a/Nosql.htm NoSQL: An Overview of NoSQL Databases
  4. a et b (en)http://www.computerworld.com/s/article/9135086/No_to_SQL_Anti_database_movement_gains_steam_ No to SQL? Anti-database movement gains steam
  5. (en)Adriaan De Jonge,Essential App Engine: Building High-Performance Java Apps with Google App Engine,Addison-Wesley Professional - 2011,(ISBN 9780321742636)
  6. (en)Daniel A. Keim, Jörn Kohlhammer, Geoffrey Ellis, Florian Mansmann,Mastering the Information Age - Solving Problems with Visual Analytics,Florian Mansmann,(ISBN 9783905673777)
  7. (en)Pete Warden,Big Data Glossary,O'Reilly Media Inc. - 2011,(ISBN 9781449314590)
  8. (en)http://ftp-developpez.com/gordon-fowler/Debunking%20the%20NoSQL%20Hype%20Oracle.pdf Oracle: Debunking the NoSQL Hype
  9. (en)http://www.informationweek.com/news/software/info_management/227500077?queryText=nosql+survey Informations Week: Surprise: 44% Of Business IT Pros Never Heard Of NoSQL

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article NoSQL de Wikipédia en français (auteurs)

Игры ⚽ Нужна курсовая?

Regardez d'autres dictionnaires:

  • NoSQL — (steht für englisch Not only SQL) ist eine Bewegung, eine neue Art von Datenbanken voranzutreiben. Es handelt sich dabei um Datenbanken, die einen nicht relationalen Ansatz verfolgen und damit mit der langen Geschichte von relationalen… …   Deutsch Wikipedia

  • NoSQL — (англ. not only SQL, не только SQL), в информатике  термин, обозначающий ряд подходов, проектов, направленных на реализацию моделей баз данных, имеющих существенные отличия от используемых в традиционных реляционных СУБД с доступом к… …   Википедия

  • Nosql — est un mouvement relatif aux bases de données, entamé au printemps 2009. Le terme se réfère à certaines données non relationnelles stockées. Des tendances dans les architectures informatiques visent à améliorer les bases de données dans une… …   Wikipédia en Français

  • NoSQL — es un término usado en informática para agrupar una serie de almacenes de datos no relacionales que no proporcionan garantías ACID. Normalmente no tienen esquemas fijos de tablas ni sentencias join .[1] Contenido 1 Historia del término 2 Ventajas …   Wikipedia Español

  • NoSQL — This article is about the class of database management systems. For the specific relational database management software, see NoSQL (RDBMS). Structured storage redirects here. It is not to be confused with COM Structured Storage. In computing,… …   Wikipedia

  • NoSQL (RDBMS) — This article is about a specific relational database management system. For for a class of non relational database management systems, see NoSQL. NoSQL is a shell based relational database management system that runs under Unix like operating… …   Wikipedia

  • Strozzi NoSQL (RDBMS) — NoSQL (wird manchmal auch nosequel gelesen) ist ein von Carlo Strozzi entwickeltes portables relationales Datenbankverwaltungssystem. Es ist eigentlich ein Softwarewerkzeug auf Unix Shell Ebene, das keine willkürlichen Einschränkungen hat, außer… …   Deutsch Wikipedia

  • Cloud database — A cloud database is a database running on Cloud Computing platform, such as Amazon EC2, GoGrid and Rackspace. There are two common deployment models: Users can run databases on the cloud independently, using a Virtual Machine image, or they can… …   Wikipedia

  • Теорема CAP — (известная также как теорема Брюера), в информатике  эвристическое утверждение о том, что в любой реализации распределённых вычислений возможно обеспечить не более двух из трёх следующих свойств: согласованность данных… …   Википедия

  • MongoDB — Developer(s) 10gen Initial release 2009 Stable release 2.0.1 / October 22, 2011; 31 days ago ( …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”