Diseño de aplicaciones con uso intensivo de datos, 2nd Edición
by Martin Kleppmann, Chris Riccomini
capítulo 3. Modelos de datos y lenguajes de consulta
Los límites de mi lenguaje son los límites de mi mundo.
Ludwig Wittgenstein, Tractatus Logico-Philosophicus (1922)
Los modelos de datos son quizás la parte más importante del desarrollo de software, debido al profundo efecto que tienen no solo en cómo se escribe el software, sino también en cómo pensamos sobre el problema que estamos resolviendo.
La mayoría de las aplicaciones se construyen superponiendo un modelo de datos sobre otro. Para cada capa, la pregunta clave es cómo se representa en términos de la capa inmediatamente inferior. Aquí tienes un ejemplo de capas de aplicación desde el nivel más alto al más bajo:
-
Como desarrollador de aplicaciones, observas el mundo real (que incluye personas, organizaciones, bienes, acciones, flujos de dinero, sensores, etc.) y lo modelas en términos de objetos o estructuras de datos y API que manipulan esas estructuras de datos, que a menudo son específicas de tu aplicación.
-
Cuando quieres almacenar esas estructuras de datos, las expresas en términos de un modelo de datos de uso general, como documentos JSON o XML, tablas en una base de datos relacional o vértices y perímetros en un gráfico. Esos modelos de datos son el tema de este capítulo.
-
Los ingenieros que crearon tu software de base de datos decidieron una forma de representar esos datos de documentos, relacionales o gráficos en términos de bytes en la memoria, en el disco o en una red. La representación puede permitir ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access