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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/912—Applications of a database
- Y10S707/917—Text
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/953—Organization of data
- Y10S707/956—Hierarchical
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating 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.
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.
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)
| 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)
| 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 |
-
2000
- 2000-09-22 US US09/668,612 patent/US6754648B1/en not_active Expired - Lifetime
- 2000-09-29 ES ES00121211T patent/ES2257247T3/es not_active Expired - Lifetime
- 2000-09-29 EP EP00121211A patent/EP1089195B1/en not_active Expired - Lifetime
- 2000-09-29 DE DE60025778T patent/DE60025778T2/de not_active Expired - Lifetime
- 2000-09-29 AT AT00121211T patent/ATE317141T1/de not_active IP Right Cessation
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 |