[go: up one dir, main page]

ES2362837B1 - REAL-TIME DATA MANAGEMENT SYSTEM BASED ON KNOWLEDGE. - Google Patents

REAL-TIME DATA MANAGEMENT SYSTEM BASED ON KNOWLEDGE. Download PDF

Info

Publication number
ES2362837B1
ES2362837B1 ES200900970A ES200900970A ES2362837B1 ES 2362837 B1 ES2362837 B1 ES 2362837B1 ES 200900970 A ES200900970 A ES 200900970A ES 200900970 A ES200900970 A ES 200900970A ES 2362837 B1 ES2362837 B1 ES 2362837B1
Authority
ES
Spain
Prior art keywords
data
database
column
shared memory
line
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.)
Active
Application number
ES200900970A
Other languages
Spanish (es)
Other versions
ES2362837A1 (en
Inventor
Laura Roa Romero
Fabiola Fernández Gutiérrez
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.)
Universidad de Sevilla
Original Assignee
Universidad de Sevilla
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 Universidad de Sevilla filed Critical Universidad de Sevilla
Priority to ES200900970A priority Critical patent/ES2362837B1/en
Priority to PCT/ES2010/000154 priority patent/WO2010119148A2/en
Publication of ES2362837A1 publication Critical patent/ES2362837A1/en
Application granted granted Critical
Publication of ES2362837B1 publication Critical patent/ES2362837B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

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

Abstract

Sistema gestor de datos en tiempo real basado en el conocimiento.#En el sistema participan dos tipos de almacenes de datos: una base de datos objeto-relacional (1) y una zona de memoria compartida (2), ésta última destinada a albergar datos que necesiten ser accedidos a velocidades elevadas. Además de estas estructuras en el sistema se incluye un fichero de configuración (4), personalizable por los usuarios del sistema, que mantendrá información de qué datos deben estar en la zona de memoria compartida. Asimismo, participan en el sistema un módulo para la atención de peticiones y consultas (3) a ambas estructuras de datos, un módulo que gestiona el arranque del sistema (5) y un módulo encargado del volcado entre el segmento de memoria y la base de datos objeto relacional y viceversa (6).Knowledge-based real-time data management system. # Two types of data stores participate in the system: an object-relational database (1) and a shared memory area (2), the latter intended to hold data that need to be accessed at high speeds. In addition to these structures, a configuration file (4) is included in the system, customizable by the users of the system, which will keep information on what data should be in the shared memory area. Likewise, a module for the attention of requests and queries (3) to both data structures, a module that manages the system startup (5) and a module responsible for the dump between the memory segment and the database base participate in the system. relational object data and vice versa (6).

Description

Estas nuevas tecnologías son capaces de monitori-These new technologies are capable of monitoring

Sistema gestor de datos en tiempo real basado en el conocimiento. Objeto de la invenciónReal-time data management system based on knowledge. Object of the invention

La presente invención tiene por objeto un sistema que permite el almacenamiento y gestión de datos de naturaleza heterogénea y con fuertes restricciones de tiempo. En el contexto sanitario, cuando es integrado dentro de una arquitectura de teleasistencia, estas capacidades sirven para dar soporte a sistemas de generación de conocimiento personalizado del paciente en tiempo real. El sistema objeto de la invención está constituido por dos tipos de estructuras de datos, que permiten el almacenamiento de datos complejos y conocimiento generado por otros módulos dentro de la arquitectura donde esté integrado el sistema, y por varios subsistemas que tienen la capacidad de suministrar y dar acceso en tiempo real a los datos y al conocimiento almacenado en tiempo real por parte de dichos módulos. A su vez, el sistema permite la adquisición y registro en tiempo real de datos desde diferentes fuentes. Antecedentes de la invención The present invention aims at a system that allows the storage and management of data of a heterogeneous nature and with strong time constraints. In the healthcare context, when integrated into a telecare architecture, these capabilities serve to support systems for generating personalized patient knowledge in real time. The system object of the invention is constituted by two types of data structures, which allow the storage of complex data and knowledge generated by other modules within the architecture where the system is integrated, and by several subsystems that have the ability to provide and give real-time access to data and knowledge stored in real time by said modules. In turn, the system allows the acquisition and registration in real time of data from different sources. Background of the invention

La creación de nuevo conocimiento, a partir de datos, información y conocimiento ya existente, y su intercambio y almacenamiento han sido y son objeto de estudio incesante desde la última década en múltiples sectores: empresas, industrias, sanidad, etc. En particular, en el entorno sanitario este interés se plasma en la necesidad de un intercambio de conocimiento originada por la rápida evolución de los sistemas de información sanitarios, que han pasado de ser sistemas independientes a formar parte de arquitecturas basadas en el conocimiento que permiten conectar hospitales, clínicas, farmacias y usuarios. De igual forma, la importancia del conocimiento en el entorno sanitario se hace patente en la toma de decisiones clínicas durante el proceso de diagnóstico por parte de los profesionales sanitarios, ya que una correcta gestión del conocimiento favorece la eficacia de los tratamientos y mejora la calidad asistencial. The creation of new knowledge, based on existing data, information and knowledge, and its exchange and storage have been and have been the object of incessant study since the last decade in multiple sectors: companies, industries, health, etc. In particular, in the healthcare environment this interest is reflected in the need for an exchange of knowledge originated by the rapid evolution of health information systems, which have gone from being independent systems to being part of knowledge-based architectures that allow connecting hospitals, clinics, pharmacies and users. Similarly, the importance of knowledge in the healthcare environment is evident in clinical decision making during the diagnostic process by healthcare professionals, since proper knowledge management favors the effectiveness of treatments and improves quality welfare.

Para conseguir esto, es indispensable disponer de manera oportuna de un conocimiento correcto y relevante con respecto al contexto clínico del paciente, que además depende de forma crítica de su recogida, análisis e intercambio dentro y entre las diferentes instituciones. Como consecuencia, el diseño de un sistema de atención sanitaria no sólo debe proporcionar una buena infraestructura técnica, sino que también debe ser capaz de integrar las distintas aplicaciones presentes en el sistema con el fin de adquirir datos que sean precisos y completos, y almacenarlos en formatos compatibles. To achieve this, it is essential to have timely and relevant knowledge regarding the patient's clinical context, which also depends critically on its collection, analysis and exchange within and between the different institutions. As a consequence, the design of a health care system must not only provide a good technical infrastructure, but must also be able to integrate the different applications present in the system in order to acquire data that is accurate and complete, and store them in Supported formats

Por otro lado, en los sistemas de información sanitarios ha habido un crecimiento importante de los datos que pueden ser procesados y almacenados, debido principalmente al incremento de los procedimientos terapéuticos y de diagnóstico. Estos datos son a menudo de naturaleza muy diversa y proceden de fuentes muy heterogéneas: análisis clínicos, imágenes médicas de distinta índole como radiografías, ecografías o imágenes moleculares, señales biomédicas recogidas desde distintos dispositivos como el caso de los electrocardiogramas, etc. Además, hay que incluir en este conjunto, a los nuevos tipos de datos que han aparecido, por ejemplo, a nivel molecular o proteómico, y a los obtenidos en tiempo real a través de nuevas tecnozar el estado de salud de los pacientes, haciendo más fácil la obtención de información en tiempo real. Entre estas tecnologías destacan dispositivos portátiles con sensores y sin intervención manual y plataformas de adquisición de datos para la presión sanguínea, la frecuencia cardiaca o la temperatura del paciente. De esta forma, se posibilita que el personal médico pueda identificar más fácilmente y en cuestión de minutos tendencias en los datos obtenidos. Otros tipos de dispositivos permiten monitorizar un electrocardiograma On the other hand, in the health information systems there has been an important growth of the data that can be processed and stored, mainly due to the increase in therapeutic and diagnostic procedures. These data are often of a very diverse nature and come from very heterogeneous sources: clinical analysis, medical images of different kinds such as x-rays, ultrasound or molecular images, biomedical signals collected from different devices such as electrocardiograms, etc. In addition, it is necessary to include in this set, the new types of data that have appeared, for example, at the molecular or proteomic level, and those obtained in real time through new technosing the health status of patients, making it easier Obtaining information in real time. These technologies include portable devices with sensors and without manual intervention and data acquisition platforms for blood pressure, heart rate or patient temperature. In this way, it is possible that medical personnel can identify trends more easily and in a matter of minutes. Other types of devices allow monitoring of an electrocardiogram

o la respiración del paciente, mientras éste sigue desarrollando su vida normal, por lo que sería posible determinar en cualquier momento si el paciente necesita asistencia sanitaria. Asimismo, se están desarrollando sensores portátiles para monitorizar el movimiento humano, de forma que sea posible, por ejemplo, detectar caídas e impactos y transmitir dicha información de forma remota. or the patient's breathing, while he continues to develop his normal life, so it would be possible to determine at any time if the patient needs healthcare. Likewise, portable sensors are being developed to monitor human movement, so that it is possible, for example, to detect falls and impacts and transmit such information remotely.

Por otra parte, algunos autores han dirigido estudios con el fin de proporcionar nuevas perspectivas tecnológicas, organizativas y de gestión sobre la mejor forma de incorporar la gestión del conocimiento en la atención sanitaria. Estos estudios señalaron las dificultades encontradas cuando se transforma y transfiere el conocimiento individual en colectivo. Además, existen otros problemas específicos tales como la complejidad de los datos médicos, los problemas de entrada de datos, la seguridad y la confidencialidad de los mismos o la ausencia en muchos países de un único identificador nacional de paciente. On the other hand, some authors have conducted studies in order to provide new technological, organizational and management perspectives on the best way to incorporate knowledge management in health care. These studies pointed to the difficulties encountered when individual knowledge is transformed and transferred into a collective. In addition, there are other specific problems such as the complexity of medical data, data entry problems, security and confidentiality of the data, or the absence in many countries of a single national patient identifier.

También se añaden a estos problemas la falta de normas o la lenta adopción de las normas existentes y que, históricamente, la atención sanitaria ha sido llevada a cabo por organizaciones independientes y unidades autónomas, lo cual ha propiciado que sean pocos los beneficios que podrían obtenerse del intercambio de la información. Also added to these problems are the lack of norms or the slow adoption of existing norms and that, historically, health care has been carried out by independent organizations and autonomous units, which has led to the few benefits that could be obtained. of information exchange.

A su vez, estos problemas se ven agravados por la naturaleza heterogénea y distribuida de las tecnologías de atención sanitaria actuales. Las necesidades de los diferentes usuarios profesionales implicados, desde el médico de atención primaria con apenas un centenar de pacientes hasta los miles de pacientes tratados en grandes hospitales, desde un departamento de rayos X hasta una unidad de cuidados intensivos, son tan variadas que es inevitable tener que adoptar una gran variedad de soluciones informáticas. In turn, these problems are exacerbated by the heterogeneous and distributed nature of current healthcare technologies. The needs of the different professional users involved, from the primary care physician with only a hundred patients to the thousands of patients treated in large hospitals, from an X-ray department to an intensive care unit, are so varied that it is inevitable Having to adopt a wide variety of IT solutions.

Recogiendo todas estas necesidades y problemas, se convierte en objetivo clave de los sistemas de información sanitarios el proporcionar, a los usuarios autorizados, el acceso a los datos relevantes del paciente en forma de registro, independientemente de la fuente de los datos o de la forma en que fueron adquiridos. Collecting all these needs and problems, it becomes a key objective of health information systems to provide, to authorized users, access to relevant patient data in the form of a record, regardless of the source of the data or the form in which they were acquired.

De igual forma, el almacenamiento de toda esa información adquirida hace posible identificar tendencias en los datos médicos, las cuales pueden ayudar a formular prioridades en investigación, identificar las causas y la epidemiología de las enfermedades, la evaluación de la eficacia clínica de los procedimientos y la personalización de los datos de los pacientes, con el fin de saber qué tipo de información es relevante para un usuario y la forma en que se representan dicha información. Esto implica el desarrollo de sistemas expertos basados en conocimiento que ofrezcan la posibilidad de realizar análisis complejos sobre diferentes tipos de conocimiento. Los Sistemas de Ayuda a la Decisión Clínica cumplen estas funciones, ya que pueden acceder y combinar información relevante desde un gran número de fuentes de conocimiento médico de forma simultánea. Similarly, the storage of all this information acquired makes it possible to identify trends in medical data, which can help to formulate research priorities, identify the causes and epidemiology of diseases, the evaluation of the clinical efficacy of procedures and the personalization of patient data, in order to know what type of information is relevant to a user and how that information is represented. This implies the development of knowledge-based expert systems that offer the possibility of performing complex analyzes on different types of knowledge. The Clinical Decision Support Systems fulfill these functions, since they can access and combine relevant information from a large number of sources of medical knowledge simultaneously.

Por otro lado, a pesar de la existencia de tecnología capaz de proporcionar datos adquiridos en tiempo real, los datos se suelen enviar a bases de datos que actualmente sólo pueden almacenar una baja cantidad de estos datos y en la mayoría de los casos se trata de soluciones específicas y propietarias que proporcionan servicios limitados. On the other hand, despite the existence of technology capable of providing data acquired in real time, the data is usually sent to databases that currently can only store a small amount of this data and in most cases it is specific and proprietary solutions that provide limited services.

De igual manera, algunos datos deben ser recogidos periódicamente, como ocurre cuando se mide la frecuencia cardiaca, las señales de un electrocardiograma o la presión arterial, para determinadas aplicaciones. Éstas requieren la vigilancia de las condiciones del paciente dentro de un plazo determinado y los datos deben poder ser accedidos dentro de un intervalo que define su validez. En caso contrario, los datos no reflejarían el estado actual de la salud del paciente. Similarly, some data must be collected periodically, such as when measuring heart rate, electrocardiogram signals or blood pressure, for certain applications. These require monitoring of the patient's conditions within a certain period of time and the data must be accessible within a range that defines their validity. Otherwise, the data would not reflect the current state of the patient's health.

Por otra parte, las investigaciones actuales sobre los sistemas de ayuda a la decisión clínica proporcionan un diseño de estos sistemas basado en procedimientos de gestión de conocimiento. Estos gestores de datos basados en el conocimiento deberán tener además la capacidad de proporcionar información precisa y completa de forma eficiente a los sistemas de ayuda a la decisión clínica para que éstos puedan generar conocimiento nuevo, completo y personalizado de los pacientes. On the other hand, current research on clinical decision support systems provides a design of these systems based on knowledge management procedures. These knowledge-based data managers must also have the ability to provide accurate and complete information effectively to clinical decision support systems so that they can generate new, complete and personalized patient knowledge.

Para solventar estos problemas, los sistemas de teleasistencia actuales necesitan gestores de datos en tiempo real que permitan interactuar con otros sistemas diferentes, ya que, como se ha mencionado con anterioridad, los datos de pacientes residen a menudo en entornos altamente heterogéneos e independientes unos de otros. Asimismo, es necesario un sistema de gestión con una buena relación eficiencia/coste en términos de acceso a la información en todos los niveles. To solve these problems, current telecare systems need real-time data managers that allow them to interact with other different systems, since, as previously mentioned, patient data often resides in highly heterogeneous and independent environments. others. Likewise, a management system with a good cost / efficiency relationship in terms of access to information at all levels is necessary.

En el campo sanitario, y más concretamente en los sistemas de monitorización de pacientes, es frecuente el uso de bases de datos stream para la supervisión en tiempo real de variables adquiridas a través las tecnologías comentadas en párrafos anteriores. Normalmente, las bases de datos en tiempo real que se utilizan no son más que buffers en memoria, para incrementar la utilización de los datos para generar nuevo conocimiento y mejorar la calidad del cuidado de los pacientes, llevando los datos después de su análisis a una o varias bases de datos relacionales. In the health field, and more specifically in patient monitoring systems, the use of stream databases for real-time monitoring of variables acquired through the technologies discussed in previous paragraphs is frequent. Normally, the real-time databases that are used are nothing more than memory buffers, to increase the use of the data to generate new knowledge and improve the quality of patient care, taking the data after analysis to a or several relational databases.

En los entornos industriales, existen sistemas de bases de datos que permiten manejar información en tiempo real. Estas bases de datos suelen estar integradas en sistemas de control y supervisión, comúnmente conocidos como sistemas SCADA (sistemas de Supervisión, Control y Adquisición de Datos). Dichas bases de datos tienen habitualmente dos tipos de subsistemas de almacenamiento, uno para datos estáticos y otro para datos que tienen fuertes restricciones de tiempo. Normalmente, los datos de tiempo real tienen un ciclo de vida corto y de forma sincronizada, van siendo transferidos periódicamente a la base de datos estática. Por otro lado, existen soluciones de bases de datos de tiempo real, las cuales son soluciones propietarias o bases de datos embebidas dentro de otros sistemas. In industrial environments, there are database systems that allow you to manage information in real time. These databases are usually integrated into control and supervision systems, commonly known as SCADA systems (Supervision, Control and Data Acquisition systems). Such databases usually have two types of storage subsystems, one for static data and one for data that has strong time constraints. Normally, real-time data has a short life cycle and in a synchronized way, they are periodically transferred to the static database. On the other hand, there are real-time database solutions, which are proprietary solutions or databases embedded within other systems.

En cualquier caso, en todos los trabajos estudiados se está de acuerdo en que la naturaleza de los datos, la forma en que son adquiridos y los motivos de su análisis y procesamiento, constituyen los factores claves para decidir qué tipo de base de datos es necesaria en cada caso. De esto surge una cuestión importante, y es qué ocurre cuando tenemos una arquitectura formada por sistemas heterogéneos que deben compartir los datos, la información y el conocimiento con el que trabajan. In any case, in all the studies studied, it is agreed that the nature of the data, the way in which they are acquired and the reasons for their analysis and processing are the key factors in deciding what type of database is necessary. in each case. This raises an important question, and that is when we have an architecture formed by heterogeneous systems that must share the data, information and knowledge with which they work.

Descripción de la invenciónDescription of the invention

La invención propone un nuevo sistema gestor de datos clínicos basado en el conocimiento que resuelve los problemas citados. Este sistema presenta la ventaja de poder operar con datos en tiempo real sin perder los beneficios que proporcionan las bases de datos objeto-relacionales. Estos sistemas presentan las ventajas de los modelos relacionales, en cuanto a que son capaces de soportar aplicaciones para grandes transacciones de datos, y las de los sistemas orientados a objetos, ya que pueden gestionar relaciones muy complejas entre sus componentes y al mismo tiempo adaptarse más fácilmente a nuevos tipos y formatos de datos, de gran interés en el entorno sanitario; proporcionando además los medios para ampliar las posibilidades de una base de datos para desarrollar funciones y tipos de datos definidos por los usuarios. The invention proposes a new clinical data management system based on knowledge that solves the aforementioned problems. This system has the advantage of being able to operate with real-time data without losing the benefits that object-relational databases provide. These systems have the advantages of relational models, in that they are capable of supporting applications for large data transactions, and those of object-oriented systems, since they can manage very complex relationships between their components and at the same time adapt more easily to new types and formats of data, of great interest in the healthcare environment; also providing the means to expand the possibilities of a database to develop functions and types of data defined by users.

De acuerdo con lo anterior, para almacenar las estructuras de datos el sistema utiliza por un lado una base de datos objeto-relacional y por otro, una zona de memoria compartida. En lo sucesivo, cuando hablemos de base de datos nos referiremos únicamente a la base de datos objeto-relacional y cuando hablemos de memoria nos referiremos a la zona de memoria compartida. Es, en esta memoria, donde se ubican las estructuras de datos que deben ser accedidos, ya sea en escritura o en lectura, de forma muy rápida. Con la división del sistema en estos dos módulos para el almacenamiento de la información conseguimos mantener las funciones que nos proporcionan los sistemas basados en bases de datos objeto-relacionales y también, gracias a la utilización de la memoria, un acceso rápido a variables necesario para operar en tiempo real. Por último, envolviendo y gestionando tanto la base de datos como la memoria, se encuentra una capa de procesos agentes. In accordance with the above, to store the data structures the system uses on the one hand an object-relational database and on the other, a shared memory area. Hereinafter, when we talk about a database we will refer only to the object-relational database and when we talk about memory we will refer to the shared memory area. It is, in this memory, where the data structures that must be accessed, either in writing or reading, are located very quickly. With the division of the system into these two modules for the storage of information we managed to maintain the functions provided by systems based on object-relational databases and also, thanks to the use of memory, quick access to variables necessary for Operate in real time. Finally, wrapping and managing both the database and memory, there is a layer of agent processes.

El sistema gestor de datos se caracteriza por tener la capacidad de almacenar datos clínicos de pacientes, tanto los tomados en tiempo real como los tomados con tiempos de muestreo superior a una hora, como por ejemplo ocurre con los datos procedentes de analíticas. También, almacena datos referentes a la historia clínica del paciente manteniendo a su vez, una relación entre identificadores propios, locales al sistema gestor de datos, e identificadores que referencien a una base de datos existente en el centro sanitario que contenga los datos completos de la historia clínica del paciente. Asimismo, registra situaciones de alarmas, realizando un seguimiento del estado de la alarma en tiempo real y llevando los datos de la misma al registro histórico correspondiente cuando ésta haya sido procesada. The data management system is characterized by the ability to store clinical data of patients, both those taken in real time and those taken with sampling times longer than one hour, as for example with data from analytics. It also stores data referring to the patient's medical history while maintaining a relationship between own identifiers, local to the data management system, and identifiers that refer to an existing database in the health center that contains the complete data of the patient history Likewise, it records alarm situations, monitoring the alarm status in real time and taking the data of the alarm to the corresponding historical record when it has been processed.

Igualmente, contiene datos de interés sobre los distintos usuarios profesionales del sistema. De esta forma se registra cierta información útil: accesos al sistema, restringiendo los permisos a los usuarios a ciertas partes del sistema sólo accesibles a los administradores; reconocimiento de alarmas, obteniendo en tiempo real conocimiento del usuario que ha reconocido una alarma previamente generada; peticiones realizadas, proporcionando una información personalizada a cada usuario en función de las peticiones realizadas. Por último, almacena datos asociados a la configuración de dispositivos y procesos del sistema y mantiene un registro de históricos flexible, entendiendo como flexible que además de un registro histórico convencional, el usuario profesional puede solicitar guardar determinados datos útiles para él. It also contains information of interest about the different professional users of the system. In this way, certain useful information is recorded: access to the system, restricting users' permissions to certain parts of the system only accessible to administrators; alarm recognition, obtaining in real time knowledge of the user who has recognized a previously generated alarm; requests made, providing personalized information to each user based on the requests made. Finally, it stores data associated with the con fi guration of devices and system processes and maintains a fl exible historical record, understanding as fl exible that in addition to a conventional historical record, the professional user may request to save certain useful data for him.

La estructura de datos mantenida en la memoria compartida se divide en dos partes: por un lado, unas tablas para almacenar valores y por otro lado, tablas que funcionan como diccionarios que facilitan la traducción de datos de memoria a la base de datos y viceversa. A su vez, existe en el sistema un fichero de configuración modificable por el usuario profesional que indica qué variables deben estar accesibles en memoria en cada momento. The data structure maintained in the shared memory is divided into two parts: on the one hand, tables for storing values and on the other hand, tables that function as dictionaries that facilitate the translation of data from memory to the database and vice versa. In turn, there is in the system a configuration file that can be modified by the professional user that indicates which variables must be accessible in memory at all times.

Como se ha mencionado antes, el sistema consta de una capa de procesos agentes que envuelven tanto a la base de datos como a la zona de memoria compartida. Estos procesos agentes se encargan de gestionar todos los datos y de atender las peticiones que llegan al sistema gestor de datos y está compuesta por módulos distinguidos por la funcionalidad que desempeñan: arrancar el sistema, inicialmente y mientras está funcionando, volcar los datos desde la base de datos y viceversa o atender las peticiones y consultas que llegan al sistema desde los distintos procesos conectados al mismo. As mentioned before, the system consists of a layer of agent processes that involve both the database and the shared memory zone. These agent processes are responsible for managing all the data and attending to the requests that arrive at the data management system and is composed of modules distinguished by the functionality they perform: starting the system, initially and while it is running, dump the data from the base of data and vice versa or attend the requests and queries that arrive at the system from the different processes connected to it.

Como ya se ha mencionado, en el módulo que gestiona el arranque del sistema se distinguen dos tipos de arranque. Por un lado un arranque inicial en el que se arranca la base de datos objeto-relacional, se crean las estructuras de datos de la zona de memoria compartida, se arrancan e inicializan los mecanismos de sincronización para administrar la zona de memoria compartida y se vuelcan en memoria desde la base de datos objeto-relacional los datos indicados por el fichero de configuración. Por otro lado, un arranque denominado “en caliente”, que se pone en marcha cuando termina el arranque inicial. Este se encarga de detectar, mientras el sistema está en marcha, cambios en el fichero de configuración y volcar los nuevos datos indicados por el fichero a la zona de memoria compartida. As already mentioned, two types of boot are distinguished in the module that manages the system startup. On the one hand, an initial startup in which the object-relational database is started, the data structures of the shared memory zone are created, the synchronization mechanisms to manage the shared memory zone are started and initialized and they are dumped in memory from the object-relational database the data indicated by the con fi guration file. On the other hand, a start called "hot", which starts when the initial start ends. This is responsible for detecting, while the system is running, changes in the configuration file and dump the new data indicated by the file to the shared memory area.

En segundo lugar, la capa de procesos se encarga de la transferencia de datos entre memoria y base de datos. Así pues, se distinguen dos casos: por un lado el volcado de datos desde memoria a la base de datos y el caso contrario, la transferencia de datos desde la base de datos a memoria compartida. En este último caso, el conjunto de procesos encargado de desempeñar esta tarea se caracteriza por estar compuesto por una serie de mecanismos de búsqueda que permiten encontrar en la base de datos, los datos, que el fichero de configuración indica que tienen que estar en memoria, de forma óptima. En el caso de los procesos encargados del trasvase de datos desde memoria a la base de datos, éstos se caracterizan por tener la capacidad de realizar operaciones sencillas con los datos que haya en memoria antes de que sean almacenados en la base de datos. Es decir, que no todos los datos de memoria pasan a formar parte de los registros de la base de datos. De esta forma, se permite que los procesos que estén trabajando con los datos en memoria, puedan añadir nuevos datos a las tablas de las estructuras de memoria sin que la base de datos corra el riesgo de verse saturada por estos nuevos datos. Para ello, los procesos tienen también la capacidad de mantener una correspondencia entre los datos originales y los que se van añadiendo o modificando. Además, un módulo independiente se encarga de hacer volcados a la base de memoria de los conjuntos de datos registrados en memoria a modo de actualización y de manera periódica conforme expiren los temporizadores que tienen asociados, indicados en el fichero de configuración. Second, the process layer is responsible for transferring data between memory and database. Thus, two cases are distinguished: on the one hand the dump of data from memory to the database and in the opposite case, the transfer of data from the database to shared memory. In the latter case, the set of processes responsible for carrying out this task is characterized by being composed of a series of search mechanisms that allow the data to be found in the database, which the configuration file indicates that they have to be in memory , optimally. In the case of the processes responsible for transferring data from memory to the database, they are characterized by having the ability to perform simple operations with the data in memory before they are stored in the database. That is, not all memory data becomes part of the database records. In this way, it is allowed that the processes that are working with the data in memory, can add new data to the tables of the memory structures without the database running the risk of being saturated by this new data. For this, the processes also have the ability to maintain a correspondence between the original data and those that are added or modified. In addition, an independent module is responsible for dumping the data sets registered in memory as an update and periodically as the associated timers expire, indicated in the con fi guration file.

Para completar la capa de gestión de las estructuras de datos, existe un módulo a cargo de atender las peticiones y consultas procedentes de todos los procesos externos al sistema. Estos procesos pueden ser locales, que estén en la misma máquina que el sistema gestor de datos, o remotos, que se encuentren en máquinas distintas pero que formen parte de una misma red con el sistema gestor de información. To complete the management layer of the data structures, there is a module in charge of responding to requests and queries from all processes external to the system. These processes can be local, that are on the same machine as the data management system, or remote, that are on different machines but that are part of the same network with the information management system.

Por último, aunque por simplicidad se ha hablado de una base de datos, de un módulo de memoria compartida y de una capa de procesos, hay que destacar la naturaleza distribuida del sistema gestor de datos descrito. Es decir, el sistema puede formar parte de una arquitectura distribuida, estando compuesto de varias 5 bases de datos y zonas de memoria compartida interconectadas compartiendo datos e información e integrando conocimiento desde las distintas fuentes de datos disponibles dentro de esa arquitectura. Descripción de los dibujosFinally, although for simplicity there has been talk of a database, a shared memory module and a process layer, it is necessary to highlight the distributed nature of the described data management system. That is, the system can be part of a distributed architecture, being composed of several interconnected databases and shared memory areas sharing data and information and integrating knowledge from the different data sources available within that architecture. Description of the drawings

Se acompaña el presente documento como parte integrante de la descripción y de acuerdo con un ejemplo preferente de realización práctica del invento, con un conjunto de dibujos con objeto de ayudar a comprender las características y la funcionalidad otorgada tanto al sistema global como a cada uno de los módulos que lo conforman. The present document is attached as an integral part of the description and in accordance with a preferred example of practical implementation of the invention, with a set of drawings in order to help understand the characteristics and functionality granted to both the global system and each of the modules that make it up.

La figura 1. Muestra una representación esquemática del nuevo sistema gestor de datos en tiempo real basado en el conocimiento, que constituye el objeto de la presente invención. Figure 1. Shows a schematic representation of the new knowledge-based real-time data management system, which is the object of the present invention.

La figura 2. Muestra un diagrama de bloques que representa de forma esquemática al subsistema de arranque inicial del sistema. Figure 2. Shows a block diagram that schematically represents the initial system boot subsystem.

La figura 3. Muestra un diagrama de bloques similar al anterior pero para el subsistema de arranque “en caliente” del sistema. Figure 3. Shows a block diagram similar to the previous one but for the “hot” boot subsystem of the system.

La figura 4. Muestra, finalmente, un diagrama de entidad-relación que pretende representar, a modo de ejemplo, una parte del modelo de datos interno de la base de datos objeto-relacional. Realización preferente de la invenciónFigure 4. Finally, it shows an entity-relationship diagram that aims to represent, by way of example, a part of the internal data model of the object-relational database. Preferred Embodiment of the Invention

En la figura 1, puede observarse el sistema de gestión de datos de forma global con todos sus componentes, entre los que participa una base de datos objeto-relacional (1) y una zona de memoria compartida (2), en esta última irán almacenados los datos que requieran accesos en tiempo real. Gestionando estas estructuras de datos, se encuentra un módulo de atención de peticiones y consultas (3), un módulo encargado del arranque del sistema (5) y que comprende dos subsistemas: uno para el arranque inicial del sistema gestor (5a) y otro para el arranque denominado “en caliente” del sistema gestor (5b), y por último, un módulo para el volcado de datos que también se divide en varios subsistemas dependiendo de la función que realizan: un subsistema para el volcado de datos desde memoria a la base de datos (6a), otro encargado del volcado de datos periódico desde memoria a la base de datos (6b) y otro para el volcado de datos desde la base de datos a memoria (6c). Tanto el módulo de arranque del sistema (5), como el módulo de volcado de datos (6) deben tener acceso a lo que se ha denominado fichero de configuración (4) con el fin de saber qué datos deben estar accesibles en la zona de memoria compartida (7). In Figure 1, the data management system can be observed globally with all its components, among which an object-relational database (1) and a shared memory area (2) participate, in the latter they will be stored the data that requires access in real time. Managing these data structures, there is a request and query service module (3), a module responsible for system startup (5) and comprising two subsystems: one for the initial startup of the management system (5a) and another for the so-called "hot" start-up of the management system (5b), and finally, a module for data dump that is also divided into several subsystems depending on the function they perform: a subsystem for data dump from memory to the database (6a), another one in charge of the periodic data dump from memory to the database (6b) and another one for the dump of data from the database to memory (6c). Both the system boot module (5) and the data dump module (6) must have access to what has been called the configuration file (4) in order to know what data should be accessible in the area of shared memory (7).

En la figura 2 puede observarse, de forma esquemática, como podría efectuarse el arranque inicial del sistema gestor de datos. En primer lugar, un usuario con privilegios de administrador debe poner en marcha el proceso de inicio que arranca el sistema de forma automática (11). Este proceso inicia un hilo que arranca la base de datos objeto-relacional (12). Una vez finalizado, se crean las estructuras de datos necesarias en la zona de memoria compartida previamente reservada (13). A continuación se inicializan los mecanismos de control y sincronización necesarios para la gestión de la memoria compartida (14). El siguiente paso es la creación de otro hilo de proceso que llame al subsistema que volcará los datos desde la base de datos a memoria (10). Este subproceso del módulo de volcado de datos (6c), mira en el fichero de configuración (4) y vuelca los datos que se indiquen en el fichero a memoria. Una vez finalizado el proceso se envía la respuesta al hilo del proceso de arranque que se ha quedado en espera (10). Si ha habido algún fallo en el volcado de datos (17), se comunica al usuario un código de error y el propio proceso de forma automática, reinicia la zona de memoria compartida y para la base de datos, es decir, aborta todos los procesos (16). El usuario sería el encargado de iniciar de nuevo el proceso de inicio de arranque del sistema una vez solventado el problema. En caso de que el volcado se hubiera realizado correctamente, se crearía un hilo que iniciara el proceso de arranque “en caliente” (18) que quedaría en background mientras que el proceso de arranque inicial finaliza (19). In Figure 2 it can be observed, schematically, how the initial start-up of the data management system could take place. First, a user with administrator privileges must start the startup process that automatically starts the system (11). This process starts a thread that starts the object-relational database (12). Once finalized, the necessary data structures are created in the previously reserved shared memory zone (13). The control and synchronization mechanisms necessary for the management of shared memory are then initialized (14). The next step is the creation of another process thread that calls the subsystem that will dump the data from the database to memory (10). This thread of the data dump module (6c), looks in the configuration file (4) and dumps the data indicated in the file to memory. Once the process is finished, the response is sent to the thread of the boot process that has been put on hold (10). If there has been a failure in the data dump (17), the user is informed of an error code and the process itself automatically, restarts the shared memory area and for the database, that is, aborts all processes (16). The user would be in charge of starting the system startup process once the problem is solved. In the event that the dump was successful, a thread would be created that initiated the “hot” start process (18) that would remain in the background while the initial start process ends (19).

Asimismo, aunque en la figura 2 se ha omitido por simplicidad, el subproceso de arranque inicial del sistema es el encargado de poner en marcha, antes de finalizar, los procesos del módulo de atención de peticiones (3) y de la parte de volcado periódico de datos desde memoria a base de datos (6b). Estos procesos se ejecutan de forma independiente a todos los demás junto con el módulo de arranque “en caliente”. Likewise, although in Figure 2 it has been omitted for simplicity, the initial startup subprocess of the system is responsible for starting, before finalizing, the processes of the request attention module (3) and the periodic dump part of data from memory to database (6b). These processes run independently of all others along with the "hot" boot module.

En la figura 3, podemos ver un diagrama de bloques similar al del proceso de arranque inicial que muestra cómo podría ser un posible funcionamiento del proceso de arranque “en caliente”. Una vez iniciado el proceso desde el proceso de arranque inicial (18), se va comprobando de forma periódica si existe alguna modificación en el fichero de configuración (7). Si el fichero (4) es modificado por el usuario para indicar qué datos deben estar ahora en las estructuras de datos de memoria, el proceso de comprobación dará una respuesta positiva (7). En ese caso, se comprueba que no haya ningún proceso escribiendo en la zona de memoria compartida (20). Si lo hubiera, el proceso de arranque “en caliente” se coloca al final de la cola de espera de escritura (21), gestionada por el módulo de atención de peticiones y consultas. Una vez atendidas todas las peticiones de escritura que quedaran pendientes, se cierra el acceso a memoria a todos los procesos (22) y se hace una copia del contenido de las estructuras de memoria (23) como medida de seguridad ante posibles errores para no perder información. A continuación se llama al subsistema encargado de volcar los datos desde memoria a la base de datos (6a) y queda en espera de la respuesta. Este proceso, gracias a un diccionario existente en memoria, traduce los datos que hay en memoria a las tablas relacionales de la base de datos. Si en la transferencia de información ha habido algún error (24) se genera el código de error que corresponda pero se continúa con el siguiente paso (25). Si ha habido error, querrá decir que no se habrán copiado los datos de memoria a la base de datos ya que estamos hablando de transacciones, es decir, que o bien se realizan con éxito o bien se abortan todos los cambios realizados en caso de error. En este último caso, será misión del usuario encargado de vigilar la aplicación que tome las medidas oportunas al recibir el código de error generado. En cualquier caso, como se ha comentado, se continúa el proceso y se llama a módulo de volcado de datos desde la base de datos a memoria (6c). En este caso, el subsistema deberá acceder al fichero de configuración y en función de lo indicado en éste, se volcarán los datos oportunos desde las tablas de la base de datos a memoria. En este caso si el resultado de la transferencia de información da error (26) no se continúa, sino que se restaura lo que había en memoria de la copia de seguridad realizada al principio de la ejecución, se genera el código de error que corresponda y se vuelve al principio en espera de una nueva modificación en el fichero de configuración (27). Será misión del usuario administrador de corregir los errores producidos. Si la transferencia ha tenido éxito, se informa igualmente y se vuelve al principio del proceso de arranque en espera de nuevas modificaciones en el fichero de configuración (28). In Figure 3, we can see a block diagram similar to that of the initial start-up process that shows how a “hot” start-up process could be possible. Once the process has been started from the initial start-up process (18), it is checked periodically if there is any change in the configuration file (7). If the file (4) is modified by the user to indicate what data should now be in the memory data structures, the verification process will give a positive response (7). In that case, it is checked that there is no process writing in the shared memory zone (20). If there is, the “hot” boot process is placed at the end of the write queue (21), managed by the request and query service module. Once all the write requests that remain pending have been met, the memory access to all processes (22) is closed and a copy of the contents of the memory structures (23) is made as a security measure for possible errors so as not to lose information. The subsystem responsible for dumping the data from memory to the database (6a) is then called and awaits the response. This process, thanks to an existing dictionary in memory, translates the data in memory into the relational tables of the database. If there has been an error in the information transfer (24), the corresponding error code is generated but the next step (25) is continued. If there has been an error, it will mean that the memory data will not have been copied to the database since we are talking about transactions, that is, that they are made successfully or all the changes made in case of error are aborted . In the latter case, it will be the mission of the user in charge of monitoring the application that takes the appropriate measures upon receiving the generated error code. In any case, as mentioned, the process is continued and the data dump module is called from the database to memory (6c). In this case, the subsystem must access the con fi guration file and, depending on what is indicated in it, the appropriate data will be dumped from the database tables to memory. In this case, if the result of the information transfer fails (26), it is not continued, but what was stored in memory of the backup made at the beginning of the execution is restored, the corresponding error code is generated and it goes back to the beginning waiting for a new modification in the con fi guration file (27). It will be the mission of the administrator user to correct the errors produced. If the transfer has been successful, it is also reported and returns to the beginning of the start-up process pending further changes in the con fi guration file (28).

Como se ha mencionado ya en la descripción del sistema, el módulo de atención de peticiones gestiona las consultas tanto a la base de datos como a la zona de memoria compartida (9). Para ello utilizará varios hilos de procesos en paralelo, de forma que permita múltiples procesos leyendo de memoria o de la base de datos. En el caso de escritura, permitirá que haya un solo proceso escribiendo en memoria y un solo proceso escribiendo en la base de datos. As already mentioned in the description of the system, the request attention module manages queries to both the database and the shared memory zone (9). To do this, it will use several process threads in parallel, so that it allows multiple processes to be read from memory or from the database. In the case of writing, it will allow a single process to be written in memory and a single process to write to the database.

El submódulo de volcado periódico de datos, hará uso de los diccionarios disponibles en la zona de memoria compartida para comprobar cuándo expiran los temporizadores asociados de forma independiente a los conjuntos de variables de la memoria compartida. The periodic data dump sub-module will make use of the dictionaries available in the shared memory area to check when the associated timers expire independently of the shared memory variable sets.

Con respecto a la base de datos objeto-relacional, la información se organiza en una serie de almacenes de datos. Estos almacenes se corresponden con entidades de datos que engloban tablas que siguen un modelo relacional orientado a objetos. En primer lugar, existirá un almacén de datos de comunicaciones que contiene datos correspondientes al establecimiento y mantenimiento de las conexiones que puedan existir entre el sistema gestor de datos y los distintos dispositivos y/o procesos que tengan la capacidad de acceder ya sea en lectura o escritura a las estructuras de datos. En segundo lugar, habrá un almacén de monitorización de variables de campo. Este almacén está compuesto por un conjunto de tablas que reflejan el estado actual de los usuarios del sistema por medio de variables medidas. Estas variables son obtenidas por medio de un tratamiento previo a partir de los valores del almacén de comunicaciones. Por otro lado, un almacén de configuración y diccionarios, con datos relativos a la configuración del sistema, desde las marcas y características de los dispositivos conectados al sistema, hasta las tablas que establecen qué variables se almacenan en los históricos y de qué manera. Y por último, en el primer diseño del sistema, se ha incluido un almacén de históricos de datos, que incluye información relativa a los usuarios que han solicitado un determinado registro de datos. Es decir, que se mantienen unos registros históricos personalizados y flexibles. With respect to the object-relational database, the information is organized in a series of data stores. These stores correspond to data entities that include tables that follow an object-oriented relational model. First, there will be a communications data store that contains data corresponding to the establishment and maintenance of the connections that may exist between the data management system and the different devices and / or processes that have the ability to access either reading or reading. writing to data structures. Second, there will be a field variable monitoring store. This warehouse is made up of a set of tables that reflect the current state of the users of the system by means of measured variables. These variables are obtained through a pretreatment based on the values of the communications store. On the other hand, a configuration store and dictionaries, with data related to the system configuration, from the brands and characteristics of the devices connected to the system, to the tables that establish which variables are stored in the records and in what way. And finally, in the first system design, a data history store has been included, which includes information related to users who have requested a specific data record. That is, that personalized and flexible historical records are maintained.

En la figura 4 se muestra un diagrama entidad relación simplificado que pretende mostrar a modo de ejemplo cómo se estructuraría una parte del modelo de datos interno de la base de datos relacional. En concreto, la representación se corresponde con parte del almacén de monitorización de variables de campo y el almacén de configuración y diccionarios. Las entidades representadas son: variables medidas (29), tipos de grupos de variables (30), dispositivos de medida y procesos registrados (31), tipos de dispositivos y procesos existentes (32), atributos o características (33), pacientes (34), usuarios profesionales (35) y tipos de accesos disponibles en el sistema (36). El diagrama también muestra algunas de las relaciones más esenciales entre dichas entidades. Así, un conjunto de variables (29) pueden pertenecer a (41) un conjunto de grupos (30) en una relación N:M, siguiendo un nivel de jerarquía determinado (55). De la misma forma una determinada medida de variable (29) es tomada por (37) por un dispositivo (31) participando en una relación 1:N. A su vez, un dispositivo (31) pertenece a Figure 4 shows a simplified relationship entity diagram that aims to show by way of example how a part of the internal data model of the relational database would be structured. Specifically, the representation corresponds to part of the field variable monitoring store and the configuration store and dictionaries. The entities represented are: measured variables (29), types of groups of variables (30), measurement devices and registered processes (31), types of existing devices and processes (32), attributes or characteristics (33), patients (34 ), professional users (35) and types of access available in the system (36). The diagram also shows some of the most essential relationships between these entities. Thus, a set of variables (29) can belong to (41) a set of groups (30) in an N: M relationship, following a certain hierarchy level (55). In the same way a certain measurement of variable (29) is taken by (37) by a device (31) participating in a 1: N ratio. In turn, a device (31) belongs to

(39) (39)
a un determinado tipo de dispositivo (32) con una relación 1:N. Tanto variables (29) como dispositivos to a certain type of device (32) with a 1: N ratio. Both variables (29) and devices

(31) (31)
tienen asociados (45 y 40) una serie de atributos (33), en el caso de las variables, cada medida estará relacionada con unos atributos con una relación 1:N y para los dispositivos, N:M. Por otro lado, cada medida registrada (29) será tomada a (38) un paciente (34), they have associated (45 and 40) a series of attributes (33), in the case of the variables, each measure will be related to some attributes with a 1: N relation and for the devices, N: M. On the other hand, each recorded measure (29) will be taken to (38) a patient (34),

con una relación 1:N. Cada paciente (34) tendrá asignado a (42) un usuario profesional (35), mediante una relación N:M, ya que por ejemplo en el caso de que el usuario profesional sea un médico, varios médicos pueden tratar al mismo paciente, y varios pacientes pueden tener asignado el mismo médico. Estos usuarios profesionales (35) podrán disponer (44) de distintos tipos accesos (36) y en el caso de determinados usuarios, deberán estar a cargo de la supervisión (43) de distintos dispositivos (31). En ambos casos con una relación N:M. with a 1: N ratio. Each patient (34) will be assigned to (42) a professional user (35), through an N: M relationship, since for example in the case that the professional user is a doctor, several doctors can treat the same patient, and Several patients may have the same doctor assigned. These professional users (35) may have (44) different types of access (36) and in the case of certain users, they must be in charge of the supervision (43) of different devices (31). In both cases with an N: M ratio.

En el diagrama, también se han representado los atributos más importantes involucrados en las entidades y sus relaciones: Tag o etiqueta para identificar un objeto (46), definición extendida de un objeto (47), valor de una variable de medida (48), instante de tiempo en el que se toma una medida determinada (49), código identificativo de una variable (50), código identificativo de un dispositivo o proceso que pertenezca al sistema (51), código para identificar los tipos de dispositivos o procesos que pueden existir dentro del sistema (52), código que identifica un determinado atributo (53), código identificativo de grupo al que puede pertenecer una variable (54), nivel de jerarquía de grupo (55), identificador único de paciente (56), identificador que permita asociar a un mismo paciente en dos bases de datos distintas (57), identificador único local al sistema para los usuarios profesionales implicados en el sistema con el que se les permite el acceso al mismo (58), DNI, usado como identificador universal para el usuario profesional (59), contraseña de acceso al sistema (60), nombre del usuario (61), apellidos del usuario (62) y código de identificación de los tipos de accesos existentes en el sistema (63). In the diagram, the most important attributes involved in the entities and their relationships have also been represented: Tag or label to identify an object (46), extended definition of an object (47), value of a measurement variable (48), time in which a specific measurement is taken (49), identification code of a variable (50), identification code of a device or process belonging to the system (51), code to identify the types of devices or processes that can exist within the system (52), code that identifies a certain attribute (53), group identification code to which a variable can belong (54), group hierarchy level (55), unique patient identifier (56), identifier that allows the same patient to be associated in two different databases (57), a unique local identifier to the system for the professional users involved in the system with which they are allowed access to it (58), DNI, used as a universal identifier for the professional user (59), password for access to the system (60), name of the user (61), last name of the user (62) and identification code of the types of access existing in the system ( 63).

Claims (8)

REIVINDICACIONES 1. Sistema gestor de datos para almacenar, administrar e integrar información clínica y demográfica de pacientes, datos para el seguimiento de alarmas en tiempo real, información sobre los usuarios profesionales del sistema, datos de configuración de dispositivos y procesos conectados al sistema y registros históricos, que se conforma de: 1. Data management system for storing, managing and integrating clinical and demographic information of patients, data for the monitoring of alarms in real time, information on professional users of the system, configuration data of devices and processes connected to the system and historical records , which is made up of: a) una estructura de datos en una base de datos objeto-relacional (1) para mantener dicha información de forma estable; a) a data structure in an object-relational database (1) to maintain said information in a stable manner; b) una estructura de datos en una zona de memoria compartida (2) para mantener de dicha información, la parte que necesite ser accedida en tiempos muy rápidos por los procesos conectados al sistema; y b) a data structure in a shared memory zone (2) to maintain said information, the part that needs to be accessed in very fast times by the processes connected to the system; Y c) una capa de procesos, algoritmos y agentes (3, 5 y 6) para gestionar ambas estructuras de datos; c) a layer of processes, algorithms and agents (3, 5 and 6) to manage both data structures; caracterizado porque: characterized in that:
--
la capa de procesos, algoritmos y agentes está compuesta por módulos que gestionan el arranque del sistema (5), la transferencia de datos entre memoria y base de datos (6) y la atención de peticiones y consultas al sistema desde el exterior (3); The process, algorithms and agents layer consists of modules that manage the system startup (5), the transfer of data between memory and database (6) and the attention of requests and queries to the system from the outside (3) ;
--
la información que será almacenada en la estructura de datos en memoria compartida viene determinada por un fichero de configuración (4) al que tienen acceso tanto los procesos de gestión del arranque como los procesos encargado del trasvase de datos (7); the information that will be stored in the data structure in shared memory is determined by a configuration file (4) to which both the boot management processes and the processes in charge of data transfer (7) have access;
--
el módulo (3) atiende las peticiones y las consultas tanto a memoria como a la base de datos (9). The module (3) attends requests and queries both to memory and to the database (9).
2. 2.
Sistema gestor de datos, según reivindicación 1ª, caracterizado además porque la zona de memoria compartida (2) está estructurada en un conjunto de tablas para almacenar valores y por otro conjunto de tablas a modo de diccionarios. Data management system according to claim 1, further characterized in that the shared memory area (2) is structured in a set of tables for storing values and by another set of tables as dictionaries.
3. 3.
Sistema gestor de datos, según reivindicación 2ª, caracterizado además porque para el trasvase de datos de memoria compartida a la base de datos se Data management system according to claim 2, further characterized in that for the transfer of data from shared memory to the database
hace uso de unos temporizadores independientes para cada tipo de variable, definidos por los usuarios e indicados en el fichero de configuración. it makes use of independent timers for each type of variable, defined by the users and indicated in the con fi guration file.
4. Four.
Sistema gestor de datos, según reivindicación 3ª, caracterizado además porque el módulo de arranque del sistema tiene un subsistema capaz de arrancar nuevas estructuras de datos en la zona de memoria compartida cuando se realicen cambios en el fichero de configuración, sin detener la base de datos objetorelacional ni las peticiones que se hacen hacia ella. Data management system, according to claim 3, further characterized in that the system boot module has a subsystem capable of starting new data structures in the shared memory area when changes are made to the configuration file, without stopping the database relational object or requests made to it.
5. 5.
Sistema gestor de datos, según reivindicación 4ª, caracterizado además porque en la base de datos objeto-relacional existen un conjunto de tablas que mantienen relaciones entre identificadores de pacientes locales al sistema y otros ya existentes en bases de datos instaladas previamente en el centro sanitario donde se ubique el sistema gestor objeto de la invención. Data management system, according to claim 4, further characterized in that in the object-relational database there are a set of tables that maintain relationships between identifiers of patients local to the system and others already existing in databases previously installed in the health center where the management system object of the invention is located.
6. 6.
Sistema gestor de datos, según alguna de las reivindicaciones 1 hasta 5, en el que la estructura de datos accesible en tiempo real forma parte de segmentos de memoria compartida organizados y gestionados de forma distribuida. Data management system according to any one of claims 1 to 5, wherein the real-time accessible data structure is part of shared memory segments organized and managed in a distributed manner.
7. 7.
Sistema gestor de datos, según alguna de las reivindicaciones 1 hasta 5, en el que todo el conjunto de estructuras de datos y la capa de procesos, algoritmos y agentes que gestionan dichas estructuras de datos, se encuentran formando parte de una arquitectura distribuida, compuesto en este caso de: Data management system according to any one of claims 1 to 5, wherein the entire set of data structures and the process layer, algorithms and agents that manage said data structures, are part of a distributed, composite architecture in this case of:
varias bases de datos objeto-relacionales interconectadas entre sí y repartidas por toda la arquitectura; several object-relational databases interconnected with each other and distributed throughout the architecture; varios segmentos de memoria compartida interconectados entre sí y con las bases de datos y repartidos también por toda la arquitectura; y several segments of shared memory interconnected with each other and with the databases and also distributed throughout the architecture; Y una capa de procesos, algoritmos y agentes, cuyos elementos y módulos de gestión y procesamiento se encuentran repartidos por toda la arquitectura administrando las estructuras de datos mencionadas. a layer of processes, algorithms and agents, whose elements and modules of management and processing are distributed throughout the architecture managing the mentioned data structures. OFICINA ESPAÑOLA DE PATENTES Y MARCAS SPANISH OFFICE OF THE PATENTS AND BRAND N.º solicitud: 200900970 Application no .: 200900970 ESPAÑA SPAIN Fecha de presentación de la solicitud: 13.04.2009 Date of submission of the application: 04.13.2009 Fecha de prioridad: Priority Date: INFORME SOBRE EL ESTADO DE LA TECNICA REPORT ON THE STATE OF THE TECHNIQUE 51 Int. Cl. : G06F17/30 (2006.01) 51 Int. Cl.: G06F17 / 30 (2006.01) DOCUMENTOS RELEVANTES RELEVANT DOCUMENTS
Categoría Category
Documentos citados Reivindicaciones afectadas Documents cited Claims Affected
X X
US 7395258 B2 (INTERNATIONAL BUSINESS MACHINES CORPORATION) 01.07.2008, columna 2, líneas 17-40; columna 3, líneas 20-33,51-64; columna 4, línea 47 – columna 5, línea 23; columna 7, línea 7 – columna 8, línea 22; columna 9, líneas 25-50; columna 11, líneas 15-19; figuras 2,3,7,9. 1-7 US 7395258 B2 (INTERNATIONAL BUSINESS MACHINES CORPORATION) 01.07.2008, column 2, lines 17-40; column 3, lines 20-33.51-64; column 4, line 47 - column 5, line 23; column 7, line 7 - column 8, line 22; column 9, lines 25-50; column 11, lines 15-19; Figures 2,3,7,9. 1-7
X X
US 6192370 B1 (SAP AG) 20.02.2001, columna 2, línea 50 – columna 3, línea 23; columna 5, líneas 5-45; columna 7, línea 14 – columna 8, línea 29; columna 12, línea 21 – columna 13, línea 35; columna 13, línea 65 – columna 14, línea 22; figuras 3-6,8. 1-7 US 6192370 B1 (SAP AG) 20.02.2001, column 2, line 50 - column 3, line 23; column 5, lines 5-45; column 7, line 14 - column 8, line 29; column 12, line 21 - column 13, line 35; column 13, line 65 - column 14, line 22; Figures 3-6.8. 1-7
X X
ZHOU N. et al, "Open Real-time Database and it's Application in Dispatching Automation Systems". International Conference on Power System Technology, 2006. PowerCon 2006. Pág. 1-6, 22-26 Oct. 2006. Todo el documento. 1-7 ZHOU N. et al, "Open Real-time Database and it's Application in Dispatching Automation Systems". International Conference on Power System Technology, 2006. PowerCon 2006. Page 1-6, 22-26 Oct. 2006. The whole document. 1-7
Categoría de los documentos citados X: de particular relevancia Y: de particular relevancia combinado con otro/s de la misma categoría A: refleja el estado de la técnica O: referido a divulgación no escrita P: publicado entre la fecha de prioridad y la de presentación de la solicitud E: documento anterior, pero publicado después de la fecha de presentación de la solicitud Category of the documents cited X: of particular relevance Y: of particular relevance combined with other / s of the same category A: reflects the state of the art O: refers to unwritten disclosure P: published between the priority date and the date of priority submission of the application E: previous document, but published after the date of submission of the application
El presente informe ha sido realizado • para todas las reivindicaciones • para las reivindicaciones nº: This report has been prepared • for all claims • for claims no:
Fecha de realización del informe 27.06.2011 Date of realization of the report 27.06.2011
Examinador J. Cotillas Castellano Página 1/5 Examiner J. Cotillas Castellano Page 1/5
INFORME DEL ESTADO DE LA TÉCNICA REPORT OF THE STATE OF THE TECHNIQUE Nº de solicitud: 200900970 Application number: 200900970 Documentación mínima buscada (sistema de clasificación seguido de los símbolos de clasificación) G06F Bases de datos electrónicas consultadas durante la búsqueda (nombre de la base de datos y, si es posible, términos de Minimum documentation sought (classification system followed by classification symbols) G06F Electronic databases consulted during the search (name of the database and, if possible, terms of búsqueda utilizados) INVENES, EPODOC, XPI3E, NPL, INSPEC, XPESP search used) INVENES, EPODOC, XPI3E, NPL, INSPEC, XPESP Informe del Estado de la Técnica Página 2/5 State of the Art Report Page 2/5 OPINIÓN ESCRITA  WRITTEN OPINION Nº de solicitud: 200900970 Application number: 200900970 Fecha de Realización de la Opinión Escrita: 27.06.2011 Date of Completion of Written Opinion: 06.27.2011 Declaración Statement
Novedad (Art. 6.1 LP 11/1986) Novelty (Art. 6.1 LP 11/1986)
Reivindicaciones Reivindicaciones 1-7 SI NO Claims Claims 1-7 IF NOT
Actividad inventiva (Art. 8.1 LP11/1986) Inventive activity (Art. 8.1 LP11 / 1986)
Reivindicaciones Reivindicaciones 1-7 SI NO Claims Claims 1-7 IF NOT
Se considera que la solicitud cumple con el requisito de aplicación industrial. Este requisito fue evaluado durante la fase de examen formal y técnico de la solicitud (Artículo 31.2 Ley 11/1986). The application is considered to comply with the industrial application requirement. This requirement was evaluated during the formal and technical examination phase of the application (Article 31.2 Law 11/1986). Base de la Opinión.-  Opinion Base.- La presente opinión se ha realizado sobre la base de la solicitud de patente tal y como se publica. This opinion has been made on the basis of the patent application as published. Informe del Estado de la Técnica Página 3/5 State of the Art Report Page 3/5 OPINIÓN ESCRITA  WRITTEN OPINION Nº de solicitud: 200900970 Application number: 200900970 1. Documentos considerados.-1. Documents considered.- A continuación se relacionan los documentos pertenecientes al estado de la técnica tomados en consideración para la realización de esta opinión. The documents belonging to the state of the art taken into consideration for the realization of this opinion are listed below.
Documento Document
Número Publicación o Identificación Fecha Publicación Publication or Identification Number publication date
D01 D01
US 7395258 B2 (INTERNATIONAL BUSINESS MACHINES CORPORATION) 01.07.2008 US 7395258 B2 (INTERNATIONAL BUSINESS MACHINES CORPORATION) 01.07.2008
D02 D02
US 6192370 B1 (SAP AG) 20.02.2001 US 6192370 B1 (SAP AG) 02.20001
2. Declaración motivada según los artículos 29.6 y 29.7 del Reglamento de ejecución de la Ley 11/1986, de 20 de marzo, de Patentes sobre la novedad y la actividad inventiva; citas y explicaciones en apoyo de esta declaración 2. Statement motivated according to articles 29.6 and 29.7 of the Regulations for the execution of Law 11/1986, of March 20, on Patents on novelty and inventive activity; quotes and explanations in support of this statement El documento D01 se considera el más próximo del estado de la técnica al objeto de las reivindicaciones 1 a 7, y en lo que respecta a estas reivindicaciones este documento parece afectar a la actividad inventiva de dichas reivindicaciones, tal y como se explica a continuación. Document D01 is considered the closest in the state of the art to the object of claims 1 to 7, and as regards these claims this document appears to affect the inventive activity of said claims, as explained below. Reivindicación independiente 1:  Independent claim 1: El documento D01 describe un sistema gestor de datos, que sería adecuado para almacenar y administrar, entre otras informaciones, información clínica de pacientes, datos para seguimiento de alarmas en tiempo real, datos de configuración de dispositivos, etc, que se conforma de: Document D01 describes a data management system, which would be suitable for storing and managing, among others. information, patient clinical information, data for real-time alarm monitoring, configuration data of devices, etc., which consists of: -una estructura de datos en forma de base de datos (ver columna 3, líneas 20 a 25), -una estructura de datos en una zona de memoria compartida que mantiene los datos que necesitan ser accedidos en tiempos muy cortos por los procesos conectados al sistema (ver columna 3, líneas 20 a 25), -una capa de procesos para gestionar ambas estructuras de datos, compuesta por módulos que gestionan la transferencia de datos entre la memoria y la base de datos y la atención a peticiones y consultas al sistema desde el exterior (ver figura 7). -a data structure in the form of a database (see column 3, lines 20 to 25), -a data structure in a shared memory area that maintains the data that needs to be accessed in very short times due to the processes connected to the system (see column 3, lines 20 to 25), -a layer of processes to manage both data structures, composed of modules that manage the transfer of data between memory and database and attention to requests and queries to the system from outside (see figure 7). Donde: Where: -la capa de procesos está compuesta por módulos que gestionan la transferencia de datos entre memoria y base de datos (ver columna 7, línea 57 a columna 8, línea 2, y figura 7), y la atención de peticiones y consultas al sistema desde el exterior (ver figura 7). -el módulo que atiende las peticiones y consultas, lo hace tanto a memoria como a la base de datos (ver columna 7, líneas 8 a 16). -the process layer is composed of modules that manage the transfer of data between memory and database (see column 7, line 57 to column 8, line 2, and figure 7), and the attention of requests and queries to the system from outside (see figure 7). -the module that responds to requests and queries, does it both in memory and in the database (see column 7, lines 8 to 16). Las principales diferencias entre la invención reivindicada y lo divulgado en D01 son: The main differences between the claimed invention and what is disclosed in D01 are: 1-En el sistema descrito en D01 no se especifica que la base de datos sea del tipo objeto-relacional. 1-In the system described in D01 it is not specified that the database be of the object-relational type. 2-En la invención descrita en D01, la información que será almacenada en la estructura de datos en memoria compartida se configura mediante sentencias ejecutadas por los procesos de la base de datos (ver columna 4, líneas 62 a 67), en lugar de determinarse mediante un fichero de configuración accesible tanto por procesos de gestión del arranque como por los encargados del trasvase de datos. 2-In the invention described in D01, the information that will be stored in the data structure in shared memory is configured by sentences executed by the database processes (see column 4, lines 62 to 67), instead of being determined through a configuration file accessible both by boot management processes and by those in charge of data transfer. En cuanto a la primera diferencia, el problema objetivo asociado sería cómo dotar a la base de datos de la capacidad de manejar tipos de datos de naturaleza más compleja. Sin embargo, esta diferencia no se considera que implique una actividad inventiva, puesto que un experto en la materia, en este caso un experto informático enfrentado a este problema técnico, consideraría la posibilidad de utilizar una base de datos objeto-relacional, sin necesidad de realizar un esfuerzo inventivo, dado que el uso de este tipo de bases de datos está generalmente extendido (véase el documento D02, por ejemplo). As for the first difference, the associated objective problem would be how to provide the database with the ability to handle data types of a more complex nature. However, this difference is not considered to imply an inventive activity, since an expert in the field, in this case a computer expert faced with this technical problem, would consider using an object-relational database, without the need for make an inventive effort, since the use of such databases is generally widespread (see document D02, for example). Respecto a la segunda diferencia, el efecto técnico de la misma sería guardar en un fichero la configuración relativa a la información que será almacenada en la memoria compartida, en lugar de configurarlo directamente en la base de datos. Asociado a este efecto, el problema técnico objetivo sería facilitar dicha configuración, puesto que no sería necesario interactuar directamente con la base de datos. Sin embargo, se considera que la utilización de un fichero de configuración para resolver este tipo de problemas es una técnica habitual que un experto en la materia seleccionaría según las circunstancias, sin el ejercicio de actividad inventiva, para resolver el problema planteado. Regarding the second difference, its technical effect would be to save in a file the configuration related to the information that will be stored in the shared memory, instead of directly configuring it in the database. Associated to this effect, the objective technical problem would be to facilitate said configuration, since it would not be necessary to interact directly with the database. However, it is considered that the use of a configuration file to solve this type of problem is a common technique that a person skilled in the art would select according to the circumstances, without the exercise of inventive activity, to solve the problem posed. Por lo tanto, la reivindicación 1 carecería de actividad inventiva (Artículo 8.1 LP). Therefore, claim 1 would lack inventive activity (Article 8.1 LP). Informe del Estado de la Técnica Página 4/5 State of the Art Report Page 4/5 OPINIÓN ESCRITA  WRITTEN OPINION Nº de solicitud: 200900970 Application number: 200900970 Reivindicaciones dependientes 2 a 7:  Dependent claims 2 to 7: Estas reivindicaciones no parecen presentar características adicionales o alternativas diferentes, en combinación con las reivindicaciones de las que dependen, que les confieran novedad o actividad inventiva frente a lo ya descrito en D01, puesto que o bien se encuentran divulgadas en dicho documento (como el uso de temporizadores para el trasvase de datos de memoria compartida a la base de datos en cuanto a la reivindicación 3) o bien son meras ejecuciones particulares que no van más allá de la práctica habitual seguida por un experto en la materia, como son el uso de tablas de valores y diccionarios (reivindicación 2), la carga de estructuras de datos cuando se modifica el fichero de configuración (reivindicación 4) o la organización distribuida de las estructuras de datos (reivindicaciones 6 y 7). These claims do not appear to have additional or different characteristics, in combination with the claims on which they depend, which give them novelty or inventive activity compared to what is already described in D01, since they are either disclosed in said document (such as the use of timers for the transfer of data from shared memory to the database as in claim 3) or they are mere particular executions that do not go beyond the usual practice followed by an expert in the field, such as the use of Value tables and dictionaries (claim 2), the loading of data structures when the configuration file is modified (claim 4) or the distributed organization of the data structures (claims 6 and 7). Por tanto, a la vista del estado de la técnica conocido, la solicitud no satisfaría el requisito de actividad inventiva establecido en el Artículo 8.1 LP. Therefore, in view of the known state of the art, the application would not satisfy the inventive activity requirement set forth in Article 8.1 LP. Informe del Estado de la Técnica Página 5/5 State of the Art Report Page 5/5
ES200900970A 2009-04-13 2009-04-13 REAL-TIME DATA MANAGEMENT SYSTEM BASED ON KNOWLEDGE. Active ES2362837B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
ES200900970A ES2362837B1 (en) 2009-04-13 2009-04-13 REAL-TIME DATA MANAGEMENT SYSTEM BASED ON KNOWLEDGE.
PCT/ES2010/000154 WO2010119148A2 (en) 2009-04-13 2010-04-12 Real-time, knowledge-based data management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ES200900970A ES2362837B1 (en) 2009-04-13 2009-04-13 REAL-TIME DATA MANAGEMENT SYSTEM BASED ON KNOWLEDGE.

Publications (2)

Publication Number Publication Date
ES2362837A1 ES2362837A1 (en) 2011-07-14
ES2362837B1 true ES2362837B1 (en) 2012-02-14

Family

ID=42982930

Family Applications (1)

Application Number Title Priority Date Filing Date
ES200900970A Active ES2362837B1 (en) 2009-04-13 2009-04-13 REAL-TIME DATA MANAGEMENT SYSTEM BASED ON KNOWLEDGE.

Country Status (2)

Country Link
ES (1) ES2362837B1 (en)
WO (1) WO2010119148A2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109150930B (en) * 2017-06-15 2020-12-18 北京金山云网络技术有限公司 Configuration information loading method and device, service processing method and device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192370B1 (en) * 1998-06-19 2001-02-20 Sap Aktiengesellschaft Method and system for rapid memory-resident processing of transactional data
US7395258B2 (en) * 2004-07-30 2008-07-01 International Business Machines Corporation System and method for adaptive database caching

Also Published As

Publication number Publication date
WO2010119148A2 (en) 2010-10-21
ES2362837A1 (en) 2011-07-14
WO2010119148A3 (en) 2010-12-02

Similar Documents

Publication Publication Date Title
Latif et al. I-CARES: advancing health diagnosis and medication through IoT
Sharma et al. Multi-agent system applications to fight COVID-19 pandemic
Allain et al. Applying lessons learnt from the ‘DOTS’Tuberculosis Model to monitoring and evaluating persons with diabetes mellitus in Blantyre, Malawi
Lipari et al. As‐needed intravenous antihypertensive therapy and blood pressure control
ES2972578T3 (en) Device to predict thyrotoxicosis
CA2905837A1 (en) System and methods for providing medical care algorithms to a user
Bhogal et al. The role of a clinical pharmacist in spurious penicillin allergy: a narrative review
ES2362837B1 (en) REAL-TIME DATA MANAGEMENT SYSTEM BASED ON KNOWLEDGE.
Mahammad Rafee et al. A Moral Obligation of Health Care Service for Non-Covid Patients: A Reviews.
Semanik The use of electronic health records to identify children with elevated blood pressure and hypertension
Starcher et al. Intensive care strain indicators: recommendations for critical care processes and research objectives
Morley Early fluid management in sepsis: yes
Lockamy Benchmarking healthcare quality in the United States
Portela et al. Improvements in data quality for decision support in Intensive Care
Latif et al. IoT Based Cloud Based Rx Healthcare Expert System
Ramachandran et al. FUTURE NETWORK AND TECHNOLOGY-IoT HEALTHCARE SOLUTIONS AND APPLICATIONS.
Limbakar et al. Comprehensive IoT-based Health Monitoring and Emergency Alert System
Liu et al. Hospital competition and prescribing behaviors: empirical evidence from taiwan
CN211699735U (en) Intelligent household health detection and management equipment
Granger et al. Prevalence and access of secondary source medication data: evaluation of the Southeastern Diabetes Initiative (SEDI)
Evans et al. P39 A review of on-call pharmacist requests from the paediatric intensive care unit
Jain et al. Digital Health: The Future of Healthcare
Parmar et al. Role of IoT in Healthcare 5.0
TWI615801B (en) Personalized cloud health care system
Parmar et al. 10 Role of IoT in

Legal Events

Date Code Title Description
FG2A Definitive protection

Ref document number: 2362837

Country of ref document: ES

Kind code of ref document: B1

Effective date: 20120214