ES2257247T3 - Metodo de almacenamiento y gestion de datos. - Google Patents

Metodo de almacenamiento y gestion de datos.

Info

Publication number
ES2257247T3
ES2257247T3 ES00121211T ES00121211T ES2257247T3 ES 2257247 T3 ES2257247 T3 ES 2257247T3 ES 00121211 T ES00121211 T ES 00121211T ES 00121211 T ES00121211 T ES 00121211T ES 2257247 T3 ES2257247 T3 ES 2257247T3
Authority
ES
Spain
Prior art keywords
data
pairs
search
storage
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES00121211T
Other languages
English (en)
Inventor
Klaus Fittges
Jurgen Harbarth
Harald Dr. Schoning
Horst Kinzinger
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Software AG
Original Assignee
Software AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Software AG filed Critical Software AG
Application granted granted Critical
Publication of ES2257247T3 publication Critical patent/ES2257247T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/917Text
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/956Hierarchical
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Método de almacenamiento y gestión de datos sobre un medio de almacenamiento conectado a un sistema informático, en el que dichos datos comprenden una pluralidad de elementos de datos y una pluralidad de etiquetas, en el que a cada uno de dichos elementos de datos se le asigna una de dichas etiquetas para formar una pluralidad de parejas comprendiendo cada una, por lo menos, uno de dichos elementos de datos y una de dichas etiquetas, en el que a cada una de dichas parejas se le asigna una posición de relación en una estructura jerárquica, caracterizado porque durante las etapas de almacenamiento y gestión de dichos datos cada una de dichas parejas es almacenada y gestionada sobre dicho medio de almacenamiento conjuntamente con un indicador jerárquico individual de pareja que indica dicha posición de relación de dicha pareja en dicha estructura jerárquica.

Description

Método de almacenamiento y gestión de datos.
La utilización de sistemas informáticos permite la gestión de grandes cantidades de datos. Estos datos son almacenados generalmente en bases de datos. Estas bases de datos comprenden una unidad de almacenamiento para el almacenamiento de estos datos. La unidad de almacenamiento puede ser cualquier medio de almacenamiento adecuado, tal como un disco duro. La unidad de almacenamiento y los datos almacenados en la misma son gestionados mediante una aplicación informática, referida como software de base de datos. La unidad de almacenamiento está controlada por un sistema informático en el que se ejecuta el software de base de datos.
Las bases de datos de la técnica anterior son mayoritariamente bases de datos relacionales. Estas bases de datos están organizadas como un conjunto de tablas formalmente descritas desde las que los datos pueden ser accedidos o reagrupados de muchas maneras diferentes sin tener que reorganizar la tabla de la base de datos. Las tablas también son denominadas "relaciones".
Los conjuntos de tablas contienen datos organizados en categorías predefinidas. Cada tabla contiene una o más categorías de datos en columnas. Cada fila contiene una instancia unívoca de datos para las categorías definidas por las columnas. Por ejemplo, una agenda de direcciones típica puede incluir una tabla que describe un "contacto" con el nombre, el apellido, la calle, la ciudad, el número de teléfono y el aniversario. Un usuario de la base de datos podría obtener una vista de la base de datos que satisfaga las necesidades del usuario; por ejemplo, el "contacto" puede ser descrito sólo mediante el apellido, el número de teléfono y el aniversario.
Mientras se crea una base de datos relacional, se debe definir el dominio de valores posibles en una columna de datos y las condiciones adicionales que puedan aplicarse a esos valores de datos.
La definición de una base de datos relacional da como resultado una tabla de metadatos de descripción formal de las tablas, columnas, dominios y condiciones.
Una base de datos relacional de este tipo presenta la ventaja de ser relativamente fácil de crear y acceder. Las bases de datos relacionales son además extremadamente fáciles de ampliar, debido a que después de la creación de la base de datos original, se puede añadir una nueva categoría de datos sin tener que modificar todas las aplicaciones existentes. La interfaz estándar de usuario y de programa de aplicación con una base de datos relacional es el lenguaje estructurado de consultas (SQL).
Un inconveniente de las bases de datos relacionales es que su estructura de almacenamiento de datos es plana. Toda la información de la base de datos está almacenada en las relaciones. La estructura entre las relaciones no está almacenada. Esto significa que la base de datos pierda la información contenida en estas estructuras cuando los datos son almacenados. Otro inconveniente de la técnica anterior es que estas bases de datos requieren el establecimiento de unos esquemas por parte del administrador de la base de datos para definir las categorías de las columnas en las tablas. Esto es laborioso y confuso, ya que puede diferir entre las diferentes bases de datos. Esto es particularmente incómodo si varias bases de datos deben ser puestas en cooperación.
Las bases de datos orientadas a objetos también son conocidas en la técnica anterior. Éstas comprenden objetos y clases a los cuales pertenecen estos objetos. Estos objetos pueden incluir valores así como métodos. Las clases se refieren a características de los objetos relativas a su manejo o procesamiento potenciales. Sin embargo, las clases no están relacionadas con el contenido de datos como éstos, y por lo tanto no facilitan la gestión de los datos con respecto a la información substantiva contenida en las mismas.
En el documento "A new method for maintaining semi-structured data described in XML" de KASUKAWA T ET AL. En las actas de la conferencia 1999 IEEE PACIFIC RIM CONFERENCE ON COMMUNICATIONS, COMPUTERS AND SIGNAL PROCESSING, páginas 258 a 261, se describe la utilización de unos índices específicos para acelerar el procedimiento de consulta.
Un objetivo de la presente invención es superar estos inconvenientes y proporcionar una base de datos que sea fácil de gestionar, particularmente con respecto a la información substantiva contenida en la base de datos.
Estos y otros objetivos son alcanzados mediante un método de almacenamiento y gestión de datos sobre un medio de almacenamiento conectado a un sistema informático, en el que dichos datos comprenden una pluralidad de elementos de datos y una pluralidad de etiquetas, en el que a cada uno de dichos elementos de datos se le asigna una de dichas etiquetas para formar una pluralidad de parejas comprendiendo cada una, por lo menos, uno de dichos elementos de datos y una de dichas etiquetas, en el que a cada una de dichas parejas se le asigna una posición de relación en una estructura jerárquica, caracterizado porque durante las etapas de almacenamiento y gestión de dichos datos cada una de dichas parejas es almacenada y gestionada en dicho medio de almacenamiento conjuntamente con un indicador jerárquico individual de pareja que indica dicha posición de relación de dicha pareja en dicha estructura jerárquica.
Un sistema informático que es capaz de realizar este método de la invención comprende un procesador, un medio de almacenamiento, un dispositivo de entrada y un dispositivo de salida. El medio de almacenamiento puede ser un disco duro u otro medio de almacenamiento. Este medio de almacenamiento, así como el dispositivo de entrada y el dispositivo de salida pueden estar comprendidos en el propio sistema informático, o en otra forma de realización, puede pertenecer a otro sistema informático y estar conectado a través de una línea de datos o una red al sistema informático.
Los datos que se deben almacenar y gestionar mediante la utilización de este sistema informático pueden ser divididos en elementos de datos y etiquetas. Con relación a un ejemplo de una base de datos de direcciones, los elementos o entradas de datos serían el primer nombre, el apellido, la calle, el número de casa, la ciudad, los números de teléfono, el aniversario y cualquier otro elemento de datos. Estos elementos de datos están organizados en referencia a las etiquetas. Las etiquetas describen el contenido de los elementos de datos correspondientes. Por ejemplo, los elementos de datos que pertenecen a la etiqueta "calle" contienen la información acerca del nombre de una calle. Debido a que estas etiquetas están organizadas según una estructura jerárquica, las etiquetas "calle", "número de casa" y "ciudad" pueden pertenecer a otra etiqueta, por ejemplo la etiqueta "dirección", que podría ser denominada una etiqueta padre.
Con relación a una forma de realización de la presente invención, el término almacenamiento describe el procedimiento de inserción de nuevas entradas en la base de datos, por ejemplo, un nuevo contacto en la base de datos de direcciones, y el término gestión describe el procedimiento de manejo de las diferentes entradas, tal como la visualización, apertura, modificación y transmisión.
Por medio de la presente invención la estructura jerárquica de datos puede ser conservada en la base de datos, lo que significa que la base de datos no la pierde. Esto se consigue utilizando de un indicador jerárquico individual de pareja que indica la posición de la pareja correspondiente en la estructura jerárquica, siendo almacenado y gestionado conjuntamente con la pareja respectiva. En este caso, un indicador jerárquico individual de pareja puede indicar la posición de su pareja relacionada mediante la descripción del padre y del (de los) hijo(s) de esta pareja en la estructura jerárquica. Sin embargo, este indicador jerárquico individual de pareja puede contener, además o en su lugar, otra información, por ejemplo acerca del abuelo, del (de los) nieto(s) o de otras relaciones respecto a otras parejas en la estructura jerárquica. Por lo tanto, el indicador jerárquico individual de pareja puede ser denominado asimismo como atributo de relación. Mediante otros atributos se puede expresar información extra adicional, por ejemplo el tipo de datos del elemento de datos mediante un así denominado atributo de contenido.
Mediante la utilización del indicador jerárquico individual de pareja de la manera mencionada, el método de la presente invención permite mantener la información de una pareja acerca de su posición en la estructura jerárquica cuando se almacena esta pareja en una base de datos y cuando se procesa adicionalmente esta pareja en o con relación a esta base de datos.
En una forma de realización preferida de la presente invención, cada una de las parejas es listada en un índice, en la que este índice contiene información de jerarquía acerca de la posición de cada una de las parejas en la estructura jerárquica. Este índice puede ser iniciado con el almacenamiento de la primera pareja y puede ser actualizado con cada cambio en la base de datos, por ejemplo, debido al almacenamiento de una nueva pareja, debido a la modificación o el cambio de la posición jerárquica de una pareja existente, o debido a la eliminación de una pareja de la base de datos.
Este índice contiene información acerca de los datos, es decir, acerca de cada elemento de datos o cada pareja de elementos de datos y etiquetas. En el alcance de la presente invención, el índice contiene por lo menos la información acerca de la posición de cada elemento de datos o pareja en la estructura jerárquica. Por lo tanto, el índice refleja esta estructura jerárquica. Sin embargo, según la presente invención, el índice puede contener además información adicional que podría ser de interés para el usuario, tal como información relacionada con el contenido de los elementos de datos así como de información correspondiente a la creación de este elemento de datos, como la fecha de almacenamiento o el nombre del autor.
Como consecuencia, el índice permite una determinación rápida de la posición de cada elemento de datos o pareja, respectivamente. Para mejorar la función de búsqueda, se pueden prever índices combinados, significando esto unos índices que contienen información de jerarquía así como información de contenido acerca de los elementos de datos. A partir del índice se hace disponible información acerca del elemento de datos o pareja sin tener que acceder a este elemento de datos o pareja, debido a que esta información puede ser obtenida a partir de la estructura jerárquica en la que estas parejas están dispuestas. Por ejemplo, es posible determinar a partir del índice de la base de datos si el número 16 pertenece a la dirección, la fecha de nacimiento o al número de teléfono de una entrada de la base de datos.
Se prefiere que la información de jerarquía en el índice incluya los indicadores jerárquicos individuales de pareja para cada pareja. Esto puede facilitar la administración de la base de datos en tanto que la información almacenada y gestionada conjuntamente con las parejas es idéntica a la información registrada en el índice.
Preferentemente, dicha gestión de dichas parejas comprende la búsqueda a través de dichos datos bajo demanda de un usuario de dicho sistema informático, utilizando una función de búsqueda que permite los siguientes esquemas de búsqueda: realizar una búsqueda en dichos elementos de datos, realizar una búsqueda en dichas etiquetas, y realizar una búsqueda interconectada en dichos elementos de datos y en dichas etiquetas. Una búsqueda de este tipo puede ser realizada rápidamente mediante la utilización del índice que refleja la estructura jerárquica de los datos. Toda la información necesaria requerida para este tipo de búsqueda puede ser encontrada en este índice. Este tipo de gestión permite al usuario utilizar la estructura para alcanzar un mejor resultado de la búsqueda en menos tiempo. Por ejemplo, las bases de datos de direcciones de la técnica anterior permiten buscar por el primer nombre de un contacto. Si un contacto de este tipo tiene varios primeros nombres, no se establece ninguna jerarquía entre estos primeros nombres, y pueden ser tenidos en cuenta, a no ser que la categoría primer nombre esté generalmente, es decir para todos los contactos, subdividida en más de un primer nombre, es decir, nombre de pila, segundo nombre, tercer nombre, etc. Una función de búsqueda según la técnica anterior que no realiza la subdivisión adicional entre el nombre de pila, el segundo y el tercer nombre presentará todos los contactos que contienen el primer nombre buscado, independientemente de si es el nombre de pila, el segundo o el tercer
nombre.
El método de la presente invención permite al sistema, a continuación, acceder directamente, por ejemplo, al segundo nombre de los contactos sin tener que introducir categorías o distinciones adicionales, simplemente siguiendo las trayectorias de la estructura jerárquica, que está reflejada en el índice. En este ejemplo, la estructura podría, a modo de árbol, utilizar el "primer nombre" como una rama y almacenar en la misma varios primeros nombres en la secuencia natural de los datos de la dirección. Así, se podrían buscar fácilmente el segundo o el tercer primer nombre. Frecuentemente, la búsqueda es además más rápida. Normalmente, este tipo de búsqueda conduce a resultados más precisos.
Preferentemente, dicha gestión de dichas parejas comprende la puesta en marcha automática de una rutina cuando se produce un suceso predefinido. Adicionalmente se prefiere que el suceso predefinido pueda ser un resultado obtenido mediante una función de búsqueda. Sin embargo, el suceso predefinido podría ser cualquier hecho definido por el administrador del sistema. El suceso puede ser definido en la aplicación de la base de datos así como en una aplicación externa que está en contacto con la aplicación de la base de datos. Por ejemplo, se podría desear que los empleados recibieran automáticamente una felicitación de aniversario en su aniversario personal. En ese caso, el suceso sería que una pareja que está constituida por la etiqueta aniversario y las cifras que representan la fecha de aniversario de un empleado coincida con la pareja que está constituida por la etiqueta aniversario y la fecha actual. La rutina podría ser la creación y distribución automática de felicitaciones de aniversario, potencialmente con el facsímile de la firma del presidente de la compañía. En muchas aplicaciones, por supuesto, el suceso predefinido será una petición iniciada por otra parte del sistema, es decir, internamente, o por parte de un usuario, es decir, externamente.
Otra característica preferida en la gestión de los datos según el método de la invención es representar la estructura jerárquica de dichas parejas sobre un dispositivo de salida, por ejemplo una pantalla o una impresora. Esta representación de la estructura jerárquica muestra la jerarquía, preferentemente en forma de representación en árbol, y permite a un usuario obtener una visión general extremadamente rápida de la estructura de datos. Esta representación facilita la orientación en la base de datos. Ésta está proporcionada por otra característica opcional de la presente invención, especialmente la disposición de unos elementos de datos en cualquier posición en dicha estructura jerárquica según la interacción de un usuario. Esta disposición podría ser una redistribución, lo que significa un cambio de posición en la jerarquía. Por ejemplo, en una base de datos de direcciones, la dirección privada está considerada actualmente menos importante que la dirección de trabajo, sin embargo, esto podría cambiar en el futuro. Por tanto, es comparativamente sencillo, cuando se utiliza la presente invención, reubicar la dirección privada en una posición en la jerarquía superior a la de la dirección de trabajo. Tal como se ha indicado anteriormente, la representación de la estructura facilita este proceso, aunque sin embargo no es necesario.
Otro método preferido según la presente invención incluye la gestión de las parejas de etiquetas y de elementos de datos que comprende una función de invalidación para invalidar las acciones de almacenamiento y de gestión. La función de invalidación permite la cancelación de las acciones realizadas por el sistema informático sobre el medio de almacenamiento, por ejemplo, la eliminación de una cierta pareja, para suprimir sus efectos, conservando de esa manera la pareja almacenada.
Preferentemente, los datos están formateados según el formato del lenguaje de etiquetado extensible (XML). Los datos formateados de esta manera disponen de una estructura jerárquica de la información y facilitan el almacenamiento de esta información en una base de datos, es decir, un medio de almacenamiento, debido a que el formato XML define una plataforma común que puede estar comprendida con mayor facilidad por el programa de aplicación que gestiona el medio de almacenamiento.
Se prefiere además, en el alcance de la presente invención, que el sistema informático que controla el medio de almacenamiento esté conectado a diferentes medios de almacenamiento a través de una conexión de datos, de esta manera aumentando el espacio de almacenamiento y acelerando la aplicación de la base de datos. Esta conexión de datos puede ser cualquier enlace que permita la transferencia de datos, ya sea permanente o provisional.
La presente invención se refiere además a un programa de ordenador que está almacenado sobre unos medios de memoria legibles por un ordenador cualesquiera para llevar a cabo un método según la presente invención en un sistema informático, que puede ser un sistema informático estándar.
En el alcance de la presente invención se ha previsto además un soporte de datos con un programa de ordenador para llevar a cabo un método según la presente invención en un sistema informático.
La presente invención se refiere además a un sistema de base de datos que utiliza cualquiera de los métodos que se han dado a conocer anteriormente para el almacenamiento y la gestión de datos.
Finalmente, la presente invención se refiere a un método para utilizar un sistema informático para llevar a cabo un método según cualquiera de los métodos de la invención para el almacenamiento y gestión de datos según esta invención.
A continuación, se describe a título de ejemplo una forma de realización preferida de la presente invención a partir de las figuras 1 a 5, en las que:
la figura 1 muestra un ejemplo de una Definición de Tipo de Documento XML (DTD);
la figura 2 muestra un ejemplo de una definición de esquema;
la figura 3 es un diagrama que representa un mapa de datos;
la figura 4 es un diagrama que representa el procedimiento de almacenamiento de datos en la base de datos; y
la figura 5 es un diagrama que representa una búsqueda combinada.
En una forma de realización, se puede utilizar el método según la presente invención para el almacenamiento y la gestión de los datos de los pacientes de un hospital. Se entiende que esta descripción indicada a título de ejemplo no limita la utilización de la presente invención a cualquier tipo específico de datos. Esta base de datos incluye entradas acerca de detalles personales de los pacientes, sus diagnósticos e información acerca de los médicos que realizan el tratamiento.
Cada conjunto de datos del paciente puede estar subdividido en las secciones información personal del paciente, diagnóstico e información acerca de los médicos que realizan el tratamiento. Cada sección puede contener subsecciones, por ejemplo, en la sección de información personal del paciente, el nombre, la dirección, el número de teléfono o la fecha de nacimiento. Cada subsección puede contener subsecciones, etc. Las secciones, subsecciones, etc., están dispuestas según una estructura jerárquica, en la que unos vínculos cruzados pueden existir o no existir. A cada pareja, que está constituida por unos elementos de datos y una etiqueta, se le asignará una posición en esta estructura jerárquica.
En el presente ejemplo, los datos pueden estar formateados según el formato XML. La estructura de los datos está definida mediante la utilización de Definiciones de Tipo de Documento XML (DTDs). Estas DTDs definen, por lo menos, las etiquetas y la estructura jerárquica entre las parejas que presentan una cierta etiqueta. La estructura de los datos será definida mediante la utilización de programas de aplicación para la creación de estructuras de datos.
La figura 1 muestra un ejemplo de una Definición de Tipo de Documento XML (DTD) de este tipo. En el cuadro izquierdo de la figura 1, se presenta la estructura a modo de árbol de los datos de los pacientes de un hospital. El elemento de datos paciente está subdividido en subelementos de datos denominados nombre, género, aniversario, dirección, ocupación, póliza de seguros, pariente más cercano, admisión, examen, terapia, resultado y observaciones. Cada uno de estos subelementos de datos puede presentar unos subelementos de datos adicionales tales como el elemento de datos nombre que está subdividido en el presente ejemplo en los elementos apellido, primer nombre, segundo nombre y tratamiento. Los subelementos de datos son considerados como elementos de datos en el contexto de la presente invención.
En el cuadro derecho de la figura 1, se muestra una descripción en XML de la estructura correspondiente. La descripción comienza con una definición del contenido de la DTD. Después, se definen la entidad y los elementos. En el ejemplo presente de la figura 1, los elementos de datos nombre, género, fecha de nacimiento, dirección, ocupación, póliza de seguros y pariente más cercano están combinados en una entidad denominada datos personales.
Además, se definen unos esquemas para expresar la estructura de los datos y para especificar donde se almacenan los datos y cómo éstos pueden ser recuperados. La figura 2 muestra un ejemplo para un esquema de este tipo. En el esquema, todas las etiquetas importantes están descritas mediante elementos XML, denominados nodos. La información adicional para el almacenamiento (mapeado) y la recuperación (indexación) de los elementos de datos está expresada mediante atributos de los elementos de datos. Estos atributos incluyen atributos de identificación, tales como el nombre y la clave de la etiqueta, atributos de relación, que indican la clave del elemento padre tal como el indicador jerárquico individual de pareja, y atributos de contenido, que dan información acerca del tipo de datos de un elemento de datos. Además, unos atributos especiales de almacenamiento y recuperación son responsables de la definición de las funciones de almacenamiento y recuperación correspondientes. Las funciones de almacenamiento indican donde y en que formato se almacena un elemento de datos en una base de datos. Las funciones de recuperación especifican la introducción de elementos de datos en el índice. El alcance de la indexación depende de los requisitos del usuario, por ejemplo, únicamente se puede registrar en el índice la posición general de cada una de las parejas en la estructura jerárquica. El índice puede además, sin embargo, contener información acerca del contenido de los elementos de datos, permitiendo así al usuario, por ejemplo, realizar una búsqueda de texto - quizás incluso una búsqueda de texto completa - en el índice de parejas que contienen elementos de datos que comprenden texto. Para una buena y rápida recuperación de los datos se prefiere la indexación adecuada de los elementos de datos.
Las definiciones de esquema están almacenadas en el mapa de datos, denominado también repositorio, que asigna trayectorias optimizadas de datos a esta información. La figura 3 muestra un ejemplo de la estructura de un mapa de datos de este tipo.
Cuando se almacena un conjunto nuevo de datos del paciente en la base de datos, los datos pasarán por una función de descomposición, que se describe en la figura 4. Esta función de descomposición organiza el conjunto de datos del paciente en una o más parejas, cada una constituida por, al menos, un elemento de datos y una etiqueta. En el ejemplo presente, cada conjunto de datos del paciente será subdividido en los conjuntos información personal del paciente, diagnóstico e información acerca de los médicos que realizan el tratamiento. Cada conjunto contendrá subconjuntos de datos, por ejemplo, en el conjunto información personal del paciente, el nombre, la dirección, el número de teléfono o la fecha de nacimiento.
A cada pareja, constituida por un elemento de datos y una etiqueta, se le asignará una posición en esta estructura jerárquica y después ésta será almacenada en un mapa relacional que contiene toda la información de cada instancia. Cada nodo de cada instancia será almacenado en una unidad de datos dedicada durante el mapeado. Ésta podría ser interna, tal como una estructura de datos optimizada para la recuperación, o cualquier fuente de datos externa - una base de datos o unas funciones, facilitadas por una estructura adicional. Por ejemplo, el nombre de médicos podría ser facilitado a través del sistema de información personal del hospital.
A continuación, las parejas son procesadas por una función de índice, que crea y actualiza un índice de todas las parejas almacenadas en la base de datos. La indexación es la forma de optimizar la búsqueda en el contenido de un nodo. Debido a que los nodos poseen diferentes significados en su semántica, se prevén diferentes tipos de indexación. En algunos tipos de nodos se requiere una recuperación completa de texto, mientras que algunos nodos sólo contienen palabras sueltas. Para una buena y rápida recuperación de los datos se prefiere la indexación adecuada de los elementos de datos. La información "medicación", por ejemplo, puede requerir una búsqueda de texto completa para permitir una búsqueda de palabras. Esta indexación es llevada a cabo según las funciones de recuperación mencionadas anteriormente. A continuación las parejas son almacenadas, conjuntamente con el indicador jerárquico individual de pareja correspondiente en la base de datos, según las funciones de almacenamiento citadas anteriormente.
Si un usuario de la base de datos del paciente, por ejemplo una enfermera, desea buscar en la base de datos todos los pacientes sometidos a tratamientos con medicamentos cuyos nombres contienen "cardio" conjuntamente con "mycin", por ejemplo "Iso-cardio-alpha-mycin", esto sería muy complicado con las bases de datos de la técnica anterior. Se tendría que realizar una búsqueda a través de todos los conjuntos de datos del paciente, finalmente se tendrían que buscar las partes de "medicamento" en las tablas apropiadas con una trayectoria distinta para nombres que contienen "cardio"; en la mayoría de los casos esto se tendría que realizar mediante un programa de aplicación, debido a que esta no es una parte normal de los sistemas de base de datos de la técnica anterior.
La presente invención para el almacenamiento y la gestión de datos permite realizar una búsqueda basada en una estructura combinada y una búsqueda basada en el contenido al mismo tiempo, es decir, una búsqueda específicamente y directamente en las parejas de los conjuntos de datos del paciente que presentan la etiqueta medicamento con un valor que contiene "cardio" en algún lugar y "mycin" en algún otro lugar. Esto es posible gracias a los índices combinados mantenidos por la presente invención. Si a continuación se requiere una información adicional acerca del diagnóstico de aquellos pacientes tratados con los medicamentos específicos, se pueden realizar búsquedas sobre la base de datos de una forma similar para determinar las parejas con una etiqueta relativa al diagnóstico o a una indicación especial de los pacientes.
La figura 5 muestra un diagrama que representa una búsqueda combinada de este tipo. Con la información adicional del mapa de datos, una consulta podría estar dividida en partes, que podrían ser evaluadas por separado, estar basadas en los diferentes tipos de información tal como relación, mapeado e indexación.
Este ejemplo muestra que el método de la invención mejora el almacenamiento y la gestión de datos en una base de datos.

Claims (15)

1. Método de almacenamiento y gestión de datos sobre un medio de almacenamiento conectado a un sistema informático, en el que dichos datos comprenden una pluralidad de elementos de datos y una pluralidad de etiquetas, en el que a cada uno de dichos elementos de datos se le asigna una de dichas etiquetas para formar una pluralidad de parejas comprendiendo cada una, por lo menos, uno de dichos elementos de datos y una de dichas etiquetas, en el que a cada una de dichas parejas se le asigna una posición de relación en una estructura jerárquica, caracterizado porque durante las etapas de almacenamiento y gestión de dichos datos cada una de dichas parejas es almacenada y gestionada sobre dicho medio de almacenamiento conjuntamente con un indicador jerárquico individual de pareja que indica dicha posición de relación de dicha pareja en dicha estructura jerárquica.
2. Método según la reivindicación 1, caracterizado porque cada una de dichas parejas es listada en un índice, en el que este índice contiene información de jerarquía acerca de dicha posición de cada una de dichas parejas en dicha estructura jerárquica.
3. Método según la reivindicación 2, caracterizado porque dicha información de jerarquía incluye, para cada una de dichas parejas, a dicho indicador jerárquico individual de pareja.
4. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dicha gestión de dichas parejas comprende la búsqueda a través de dichos datos bajo demanda de un usuario de dicho sistema informático utilizando una función de búsqueda que permite los siguientes esquemas de búsqueda: realizar una búsqueda en dichos elementos de datos, realizar una búsqueda en dichas etiquetas, y realizar una búsqueda interconectada en dichos elementos de datos y en dichas etiquetas.
5. Método según la reivindicación 4, caracterizado porque, si dichos elementos de datos comprenden partes de texto, dicha búsqueda en dichos elementos de datos se realiza buscando dichas partes de texto de forma completa.
6. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dicha gestión de dichas parejas comprende la puesta en marcha automática de una rutina cuando se produce un suceso predefinido.
7. Método según la reivindicación 6, caracterizado porque dicho suceso predefinido es un resultado obtenido mediante una función de búsqueda o una función de almacenamiento.
8. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dicha gestión de dichas parejas comprende la representación de dicha estructura jerárquica de dichas parejas sobre un dispositivo de salida.
9. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque cada uno de dichos elementos de datos puede estar dispuesto en cualquier posición en dicha estructura jerárquica según la interacción de un usuario.
10. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dicha gestión de dichas parejas comprende la invalidación de unas acciones de almacenamiento y de gestión utilizando una función de invalidación.
11. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dichos datos están formateados según el formato XML.
12. Método según cualquiera de las reivindicaciones anteriores, caracterizado porque dicho sistema informático está conectado a diferentes medios de almacenamiento a través de una conexión de datos.
13. Programa de ordenador almacenado en unos medios de memoria legibles por un ordenador para llevar a cabo un método según cualquiera de las reivindicaciones del método anterior en un sistema informático.
14. Soporte de datos con un programa de ordenador para llevar a cabo un método según cualquiera de las reivindicaciones del método anterior en un sistema informático
15. Sistema de base de datos que utiliza un método para el almacenamiento y la gestión de datos según cualquiera de las reivindicaciones del método anterior.
ES00121211T 1999-09-30 2000-09-29 Metodo de almacenamiento y gestion de datos. Expired - Lifetime ES2257247T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP99119447 1999-09-30
EP99119447 1999-09-30

Publications (1)

Publication Number Publication Date
ES2257247T3 true ES2257247T3 (es) 2006-08-01

Family

ID=32405859

Family Applications (1)

Application Number Title Priority Date Filing Date
ES00121211T Expired - Lifetime ES2257247T3 (es) 1999-09-30 2000-09-29 Metodo de almacenamiento y gestion de datos.

Country Status (5)

Country Link
US (1) US6754648B1 (es)
EP (1) EP1089195B1 (es)
AT (1) ATE317141T1 (es)
DE (1) DE60025778T2 (es)
ES (1) ES2257247T3 (es)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000194B1 (en) 1999-09-22 2006-02-14 International Business Machines Corporation Method and system for profiling users based on their relationships with content topics
US7487439B1 (en) * 1999-10-19 2009-02-03 International Business Machines Corporation Method and apparatus for converting between data sets and XML documents
JP2001195406A (ja) * 2000-01-06 2001-07-19 Media Fusion Co Ltd データベース管理システム
US7707159B2 (en) * 2000-03-02 2010-04-27 Actuate Corporation Method and apparatus for storing semi-structured data in a structured manner
US7152062B1 (en) 2000-11-21 2006-12-19 Actuate Corporation Technique for encapsulating a query definition
US7124144B2 (en) * 2000-03-02 2006-10-17 Actuate Corporation Method and apparatus for storing semi-structured data in a structured manner
US7756904B2 (en) 2000-08-01 2010-07-13 Actuate Corporation Nested conditional relations (NCR) model and algebra
US6804677B2 (en) * 2001-02-26 2004-10-12 Ori Software Development Ltd. Encoding semi-structured data for efficient search and browsing
US7003524B1 (en) * 2001-03-14 2006-02-21 Polymorphic Data Corporation Polymorphic database
FI113302B (fi) * 2001-05-25 2004-03-31 Metso Automation Oy Tilannekuvien käyttäminen teollisuusautomaatioprosessin ohjausjärjestelmässä
EP1276056B1 (de) 2001-07-10 2012-12-26 Software AG Verfahren zum Verwalten einer Datenbank
AUPR645701A0 (en) 2001-07-18 2001-08-09 Tralee Investments Ltd Database adapter
US7117220B2 (en) * 2001-10-15 2006-10-03 Vanderdrift Richard William System and method for non-programmers to dynamically manage multiple sets of XML document data
US7028172B2 (en) * 2001-10-29 2006-04-11 Microsoft Corporation Method and system for obtaining computer shutdown information
US7209906B2 (en) 2002-01-14 2007-04-24 International Business Machines Corporation System and method for implementing a metrics engine for tracking relationships over time
US7533335B1 (en) * 2002-06-28 2009-05-12 Microsoft Corporation Representing fields in a markup language document
US7607081B1 (en) 2002-06-28 2009-10-20 Microsoft Corporation Storing document header and footer information in a markup language document
US7650566B1 (en) 2002-06-28 2010-01-19 Microsoft Corporation Representing list definitions and instances in a markup language document
US7584419B1 (en) 2002-06-28 2009-09-01 Microsoft Corporation Representing non-structured features in a well formed document
US7523394B2 (en) 2002-06-28 2009-04-21 Microsoft Corporation Word-processing document stored in a single XML file that may be manipulated by applications that understand XML
US7562295B1 (en) 2002-06-28 2009-07-14 Microsoft Corporation Representing spelling and grammatical error state in an XML document
US7565603B1 (en) 2002-06-28 2009-07-21 Microsoft Corporation Representing style information in a markup language document
US9288000B2 (en) * 2003-12-17 2016-03-15 International Business Machines Corporation Monitoring a communication and retrieving information relevant to the communication
US20060149731A1 (en) * 2005-01-05 2006-07-06 Schirmer Andrew L System and method for deriving affinity relationships between objects
US20060234681A1 (en) * 2005-04-18 2006-10-19 Research In Motion Limited System and method for data and message optimization in wireless communications
JP4529861B2 (ja) * 2005-10-07 2010-08-25 株式会社日立製作所 階層データの検索装置および検索方法および検索プログラム
US7822759B2 (en) * 2005-12-13 2010-10-26 Microsoft Corporation Query-driven sharing and syndication
JP4270400B2 (ja) * 2006-05-25 2009-05-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 時間の経過に応じてウェブページの表示を変更する技術
US7756845B2 (en) * 2006-12-28 2010-07-13 Yahoo! Inc. System and method for learning a weighted index to categorize objects
JP2008219431A (ja) * 2007-03-02 2008-09-18 Brother Ind Ltd データ配信システム及び端末装置及び情報処理方法及びプログラム。
US8266518B2 (en) * 2008-01-16 2012-09-11 Raytheon Company Anti-tamper process toolset
US20090248716A1 (en) * 2008-03-31 2009-10-01 Caterpillar Inc. Hierarchy creation and management tool
JP6500908B2 (ja) * 2014-11-14 2019-04-17 富士通株式会社 データ取得プログラム、データ取得方法及びデータ取得装置
US10698905B2 (en) 2017-09-14 2020-06-30 SparkCognition, Inc. Natural language querying of data in a structured context

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5911145A (en) * 1996-07-29 1999-06-08 Rae Technology, Inc. Hierarchical structure editor for web sites
US5970490A (en) * 1996-11-05 1999-10-19 Xerox Corporation Integration platform for heterogeneous databases
US6356920B1 (en) * 1998-03-09 2002-03-12 X-Aware, Inc Dynamic, hierarchical data exchange system
US6366934B1 (en) * 1998-10-08 2002-04-02 International Business Machines Corporation Method and apparatus for querying structured documents using a database extender
US6125391A (en) * 1998-10-16 2000-09-26 Commerce One, Inc. Market makers using documents for commerce in trading partner networks
US6342907B1 (en) * 1998-10-19 2002-01-29 International Business Machines Corporation Specification language for defining user interface panels that are platform-independent
US6480860B1 (en) * 1999-02-11 2002-11-12 International Business Machines Corporation Tagged markup language interface with document type definition to access data in object oriented database
US6330554B1 (en) * 1999-06-03 2001-12-11 Microsoft Corporation Methods and apparatus using task models for targeting marketing information to computer users based on a task being performed
US6675353B1 (en) * 1999-07-26 2004-01-06 Microsoft Corporation Methods and systems for generating XML documents
US6510434B1 (en) * 1999-12-29 2003-01-21 Bellsouth Intellectual Property Corporation System and method for retrieving information from a database using an index of XML tags and metafiles

Also Published As

Publication number Publication date
DE60025778T2 (de) 2006-11-09
DE60025778D1 (de) 2006-04-13
US6754648B1 (en) 2004-06-22
ATE317141T1 (de) 2006-02-15
EP1089195B1 (en) 2006-02-01
EP1089195A1 (en) 2001-04-04

Similar Documents

Publication Publication Date Title
EP1089195B1 (en) Method for storing and managing data
EP2989563B1 (en) Database management system
US6968338B1 (en) Extensible database framework for management of unstructured and semi-structured documents
US20050015381A1 (en) Database management system
GB2293667A (en) Database management system
WO2019144587A1 (zh) 融合医学知识及应用病例的动态知识图谱更新方法
Lu et al. Multi-model Data Management: What's New and What's Next?
US11901048B2 (en) Semantic search for a health information exchange
US20020038304A1 (en) Data cells and data cell generations
EP2989561A1 (en) Database management system
US8380493B2 (en) Association of semantic meaning with data elements using data definition tags
US20100306183A1 (en) Electronic system for a social -network web portal applied to the sector of health and health information
Li et al. A parametric approximation algorithm for spatial group keyword queries
Wade et al. A Dimensional Bus model for integrating clinical and research data
Abrahamsson et al. Danderyd hospital computer system: II. Total regional system for medical care
Hasman et al. ADAMO A data storage and retrieval system for clinical research
Nelson et al. Using Metacard: a HyperCard browser for biomedical knowledge sources
US8554722B2 (en) Method for transferring data into database systems
US20150356130A1 (en) Database management system
Billhardt et al. A new method for unifying heterogeneous databases
Batra et al. Managing large-scale standardized electronic health records
US8886688B2 (en) Type neutral container
Li et al. A clinical document repository for CDA documents
Bird Reference Sets
Taylor et al. Combining dental epidemiological relational databases