The MongoDB Blog This is part 2 of a series, with part 1 covering the bare essentials to get you going. In this post we are going to take a closer look at queries and how indexes work in MongoDB. Introduction I’d like to kick off this post with a thanks to the folks behind the PHP extension for MongoDB, who have done a fantastic job of matching the functionality of the Mongo shell client. The PHP extension supports something that is rather new to a lot of folks in the PHP world, a feature called method chaining: The ability to run several methods at the same time on one object. $result = $songs->find()->limit(2); Of course this works in the Mongo shell too. result = db.songs.find().limit(2); For more reading on method chaining, there’s an excellent blog post about method chaining in PHP 5. Before we dig deep into finding and manipulating your data, let’s discuss the different data types that MongoDB supports. MongoDB Data Types All databases have their own data types, and MongoDB is no different.
PHP Libraries, Frameworks and Tools Doctrine ODM (Object Document Mapper) is an experimental Doctrine MongoDB object mapper. The Doctrine\ODM\Mongo namespace is an experimental project for a PHP 5.3 MongoDB Object Mapper. It allows you to easily write PHP 5 classes and map them to collections in MongoDB. You just work with your objects like normal and Doctrine will transparently persist them to MongoDB. This project implements the same “style” of the Doctrine 2 ORM project interface so it will look very familiar to you and it has lots of the same features and implementations. Thundergrid Thundergrid is a GridFS framework for PHP. Thundergrid gives you the ability to control exactly how you use GridFS in your scripts. Vork Vork, the high-performance enterprise framework for PHP, natively supports MongoDB as either a primary datasource or used in conjunction with an RDBMS. Yamop This is yet another, open source, and very simple ODM for MongoDB. See: Yamop and Yamop for Larval.
Base de données Un article de Wikipédia, l'encyclopédie libre. Permet de stocker la totalité des informations relatives à une activité. Une base de données (en anglais : database) est un conteneur informatique permettant de stocker — le plus souvent dans un même lieu — l'intégralité des informations en rapport avec une activité. Une base de données permet de stocker et de retrouver un ensemble d'informations de plusieurs natures ainsi que les liens qui existent entre les différentes informations[1],[2]. Dans la très grande majorité des cas, le terme de base de données est utilisé pour base de données fortement structurée(s). Une base de données est la pièce centrale des dispositifs informatiques qui servent à la collecte, le stockage, le travail et l'utilisation d'informations. La manipulation de données est une des utilisations les plus courantes des ordinateurs. Description[modifier | modifier le code] Terminologie[modifier | modifier le code] Modèle de données relationnel. modèle de données entité attribut
PHP Client Library | Couchbase Community The PHP client library provides fast access to documents in Couchbase Server 2.0. With JSON documents and Couchbase server 2.0 you have new ways to index and query data stored in the cluster through views. These view(s) can be accessed using the newly defined View object. You can provide different perspsectives to the data. Step 0: Get a Server Get, Install, and Start Couchbase Server. Step 1: Get a Client Library Step 1.0: Get libcouchbase Since the PHP extension builds on the 2.0 version of the Couchbase C SDK you will need to get it. Note if you have an earlier version of the Couchbase C SDK, remove it before you install the new C SDK. Step 1.1: Install the PHP SDK Installing with Pear To install with Pear, do the following steps: Install the C Library like before. Installing on Linux or Mac OS X Get the PHP SDK for your platform. To install directly from the official PECL repository on Linux, Mac OS X or any other UNIX like system, simply: shell> sudo pecl install couchbase <? <? To Learn More:
MonetDB History[edit] MonetDB (initially only called Monet) was first created by 2002 doctoral student Peter Alexander Boncz and professor Martin L. Kersten as part of the 1990s MAGNUM research project at University of Amsterdam.[4] The first version under an open-source software license (a modified version of the Mozilla Public License) was released on September 30, 2004.[5] Data mining projects in the 1990's required for better analytical database support. This resulted in a CWI the spin-off called Data Distilleries, which used early MonetDB implementations in its analytical suite. Data Distilleries eventually became a subsidiary of SPSS in 2003, which in turn was acquired by IBM in 2009.[3] Architecture[edit] MonetDB internal data representation also relies on the memory addressing ranges of contemporary CPUs using demand paging of memory mapped files, and thus departing from traditional DBMS designs involving complex management of large data stores in limited memory. Components[edit] SQL[edit]
Malgré le remue-ménage provoqué par l'adoption de MariaDB par un nombre de plus en plus croissant d'adeptes, Oracle tient à affirmer l'intérêt qu'il porte au SGBD (Système de Gestion de Bases de Données) le plus utilisé sur le Web, MySQL. Pour ce faire, la firme a annoncé la disponibilité en téléchargement d'une mise à jour de sa plateforme MySQL Cluster 7.3. MySQL Cluster 7.3 apporte une intégration plus étroite avec MySQL 5.6. Désormais, les développeurs pourront tirer parti de l'amélioration du rendement des requêtes et de la robustesse de cette version. Ils pourront aussi combiner les moteurs InnoDB ainsi que celui de MySQL Cluster en une seule application faisant usage de la version 5.6 de MySQL. Un soutien à Node.js est aussi apporté. L'entreprise a aussi introduit le support des clés étrangères. Oracle voudrait simplifier et accélérer le développement d'applications dans un contexte où l'innovation sur le Web est de plus en plus rapide. Télécharger MySQL Cluster 7.3 Source : Oracle
Bob Wiederhold : Couchbase Server, la base NoSQL qui monte Couchbase, l’entreprise américaine à l’origine du projet de base de données NoSQL open source Couchbase Server, a conclu en août 2013 un quatrième tour de table. De l’accélération du développement produit aux objectifs de croissance à l’international, Bob Wiederhold, président-directeur général (CEO) de la firme basée à Mountain View, Californie, précise ses ambitions. Silicon.fr – Comment se distingue l’offre de Couchbase par rapport à d’autres (Cassandra, MongoDB, Oracle NoSQL Database…) ? Bob Wiederhold – Au cours de ces neuf derniers mois, nous avons assisté à une forte augmentation du nombre de grandes entreprises évaluant les principales solutions NoSQL pour des projets stratégiques. Par ailleurs, nous nous distinguons de la concurrence en termes de gestion aisée de la montée en charge et de très hautes performances, deux éléments essentiels pour l’évaluation des bases NoSQL. Nous n’avions pas l’intention de lever des fonds avant le début de l’année 2014. Voir aussi
Apache Cassandra 2.0 disponible, la base de données NoSQL améliore son langage de requête CQL et les transactions légères Il a fallu 5 ans de dur labeur, de nombreuses lignes de code, ainsi que des tests à n’en plus finir, pour que l’Apache Software Foundation mette à la disposition du public Apache Cassandra v 2.0. Qu'est-ce que Apache Cassandra ? C’est une base de données qui s’aligne sur la logique NoSQL. Au rayon nouveautés, on note une amélioration du langage de requête CQL (Cassandra Query Language). Un compactage des données robuste est au rendez-vous, permettant une résistance à la détérioration malgré une utilisation intensive de la fonction d’écriture. Les délais d’attente des requêtes ont été grandement améliorés, essentiellement pour les requêtes redondantes à d’autres répliques de la base de données, si le temps écoulé depuis la première requête (requête initiale) a atteint un seuil. Cassandra 2.0 offre une meilleure implémentation du serveur Thrift basé sur l’architecture LMAX( plateforme de trading). Il faut noter que Cassandra bénéficie de nos jours du support d’une communauté importante.
NoSQL Un article de Wikipédia, l'encyclopédie libre. En informatique, NoSQL désigne une famille de systèmes de gestion de base de données (SGBD) qui s'écarte du paradigme classique des bases relationnelles. L'explicitation du terme la plus populaire de l'acronyme est Not only SQL (« pas seulement SQL » en anglais) même si cette interprétation peut être discutée[1]. La définition exacte de la famille des SGBD NoSQL reste sujette à débat. Le terme se rattache autant à des caractéristiques techniques qu'à une génération historique de SGBD qui a émergé à la fin des années 2000/début des années 2010[2]. D'après Pramod J. L'architecture machine en clusters induit une structure logicielle distribuée fonctionnant avec des agrégats répartis sur différents serveurs permettant des accès et modifications concurrentes mais imposant également de remettre en cause de nombreux fondements de l'architecture SGBD relationnelle traditionnelle, notamment les propriétés ACID. Théorie[modifier | modifier le code]