Modele navigationnel

Il a été suggéré que les moteurs de base de données de navigation sont plus faciles à construire et à prendre moins de mémoire (RAM) que les équivalents relationnels. Cependant, l`existence de produits relationnels ou relationnels de la fin des années 1980 qui possédaient de petits moteurs (selon les normes d`aujourd`hui) parce qu`ils n`ont pas utilisé SQL suggère que ce n`est pas nécessairement le cas. Au cours des années 1990, il a commencé à être clair que pour certaines applications traitant des données complexes (par exemple, les bases spatiales et les bases de données d`ingénierie), le calcul relationnel avait des limites. A cette époque, une réévaluation de l`ensemble du marché de base de données a commencé, avec plusieurs entreprises décrivant les nouveaux systèmes en utilisant le terme marketing NoSQL. Beaucoup de ces systèmes ont introduit des langages de manipulation de données qui, bien qu`éloignés du CODASYL DML avec ses indicateurs monétaires, pourraient être compris comme la mise en œuvre de la vision «navigation» de Bachman. Certaines de ces langues sont procédurales; d`autres (comme XPath) sont entièrement déclaratives. Les ramifications du concept de navigation, telles que la base de données de graphe, ont trouvé de nouvelles utilisations dans les charges de travail de traitement des transactions modernes. Une des premières bases de données de navigation a été Integrated Data Store (IDS), qui a été développé par Bachman pour General Electric dans les années 1960. IDS est devenu la base du modèle de base de données CODASYL en 1969.

Dans la pratique, cependant, la plupart des API de navigation ont été procédurales: la requête ci-dessus serait exécutée à l`aide de la logique procédurale le long des lignes du pseudo-code suivant: sur ce point de vue, la différence clé entre les API de navigation et le modèle relationnel ( mises en œuvre dans les bases de données relationnelles) est que les API relationnelles utilisent des techniques de programmation logique ou déclarative qui demandent au système ce qu`il faut récupérer, tandis que les API de navigation indiquent au système dans une séquence d`étapes comment atteindre les enregistrements requis. Une base de données de navigation est un type de base de données dans lequel les enregistrements ou les objets sont trouvés principalement en suivant les références d`autres objets. Le terme a été popularisé par le titre de Charles Bachman`s 1973 Turing Award Paper, le programmeur en tant que Navigator. [1] ce document soulignait le fait que les nouveaux systèmes de base de données sur disque permettaient au programmeur de choisir des itinéraires de navigation arbitraires après des relations d`enregistrement à enregistrer, ce qui contrastait avec les contraintes de la bande magnétique antérieure et du poinçonné systèmes de cartes où l`accès aux données était strictement séquentiel. Les modèles hiérarchiques construisent souvent des clés primaires pour les enregistrements en concaténant les clés qui apparaissent à chaque niveau de la hiérarchie. Ces identificateurs composites se trouvent dans les noms de fichiers informatiques (/usr/David/docs/index.txt), dans les URI, dans le système décimal Dewey, et d`ailleurs dans les adresses postales. Une telle clé composite peut être considérée comme représentant un chemin de navigation vers un enregistrement; mais également, il peut être considéré comme une clé primaire simple permettant l`accès associatif. Un exemple courant d`une API de navigation populaire se trouve dans le modèle DOM (Document Object Model) souvent utilisé dans les navigateurs Web et étroitement associé à JavaScript. Le DOM est essentiellement une base de données hiérarchique en mémoire avec une API qui est à la fois procédurale et de navigation.

En revanche, les mêmes données (XML ou HTML) peuvent être consultées à l`aide de XPath, qui peuvent être classés comme déclaratifs et de navigation: les données sont accessibles en suivant les relations, mais le programme appelant n`émet pas une séquence d`instructions à suivre dans l`ordre. Les langages tels que SPARQL utilisés pour récupérer des données liées à partir du Web sémantique sont également déclaratifs et de navigation simultanément. Une base de données de navigation est la combinaison du modèle hiérarchique et réseau des interfaces de base de données.

This entry was posted in Uncategorized. Bookmark the permalink.

Comments are closed.