Lo que encuentro realmente útil de IRIS al enseñar mi asignatura de bases de datos post-relacionales es el hecho de que es una base de datos multimodelo. Lo que significa que podéis abordar la arquitectura y la estructura una sola vez y, después, mostrar el uso de diferentes modelos (como el objeto, documento, jerárquico) utilizando el mismo lenguaje y enfoque. Y no es un gran salto pasar de un lenguaje de programación orientado a objetos (como C#, Java, etc.) a una base de datos orientada a objetos.

Sin embargo, junto con las ventajas (que son muchas), vienen algunos inconvenientes cuando pasamos del modelo orientado a objetos al relacional. Cuando digo que podéis acceder a los mismos datos utilizando diferentes modelos, también necesito explicar cómo es posible trabajar con listas y arrays del modelo objeto en una tabla relacional. Con los arrays es muy sencillo: por defecto se representan como tablas separadas y eso es todo. Con las listas es más complicado, porque por defecto son cadenas de texto. Pero uno sigue queriendo hacer algo con ellas sin dañar la estructura ni volver esta lista ilegible en el modelo objeto.

Así que en este artículo os mostraré un par de predicados y una función que son útiles al trabajar con listas, y no solo como campos.

1 0
0 7
Artículo
· 14 abr, 2025 Lectura de 15 min
InterSystems para dummies – Machine learning

Como todos sabemos, InterSystems es una gran empresa.

Sus productos pueden ser tan útiles como complejos.

Sin embargo, a veces nuestro orgullo nos impide admitir que quizá no entendamos algunos conceptos o productos que InterSystems nos ofrece.

Hoy comenzamos una serie de artículos que explican, de forma sencilla y clara, cómo funcionan algunos de los complejos productos de InterSystems.

En este ensayo, aclararé qué es el Machine Learning y cómo aprovecharlo... porque esta vez, SABRÁS con certeza de qué estoy hablando.

3 0
0 11

Debido a que la interpretación de SCHEMA por parte de MySQL difiere de la comprensión interpretación común en SQL (como se ve en IRIS, SQL Server u Oracle), nuestro asistente automático de tablas vinculadas puede encontrar errores al intentar recuperar la información de metadatos para construir la tabla vinculada.

(Esto también se aplica a procedimientos y vistas vinculadas)

0 0
0 8

Estoy intentando validar el contenido de un XML contra un esquema XSD, para validar la estructura (nodos obligatorios, etc...)

Estoy intentando utilizar la clase Ens.Util.XML.Validator, como se sugiere en este post:

https://community.intersystems.com/post/validate-xml-message-against-xsd...

Pero al invocar al metodo ValidateStream, si en el schemaSpec le dejo el parametro vacio, simplemente valida que sea una estructura XML correcta.

2 4
0 25

Si queréis saber por ejemplo si ya está implementada una clase sobre un tema en concreto, ahora es posible haciendo una simple pregunta en lenguaje natural. Descargad y ejecutad la aplicación https://openexchange.intersystems.com/package/langchain-iris-tool para conocer todo sobre vuestras clases de proyecto en un chat.

Instalación:

0 0
0 16
Artículo
· 7 abr, 2025 Lectura de 2 min
¡Hey, chat! ¿Qué pasa con mi interoperabilidad?

¿Qué pasaría si pudierais hablar en un chat para comprobar qué sucede en Interoperabilidad, ver si hay errores e incluso resolver algunos tipos de problemas?

Con el servidor MCP, podéis conectar cualquiera de vuestros clientes MCP, por ejemplo, Claude, a IRIS y pedirle que revise la Interoperabilidad.

0 0
0 12
Artículo
· 1 abr, 2025 Lectura de 1 min
Cómo obtener información del servidor/instancia

Hola a todos,

Como parte del desarrollo de una API para saber a qué instancia de IRIS está conectada, he encontrado algunos métodos para obtener información sobre el servidor que pueden ser útiles.

Obtener el nombre del servidor: $SYSTEM.INetInfo.LocalHostName()

Obtener la IP del servidor: $SYSTEM.INetInfo.HostNameToAddr($SYSTEM.INetInfo.LocalHostName())

Obtener el nombre de la instancia: $PIECE($SYSTEM,":",2)

1 0
0 13

La interfaz de usuario de Interoperabilidad ahora incluye experiencias modernizadas para las aplicaciones DTL Editor y Production Configuration, las cuales están disponibles para su activación en todos los productos de interoperabilidad. Podéis alternar entre las vistas moderna y tradicional. Todas las demás pantallas de interoperabilidad permanecen en la interfaz de usuario estándar.

0 0
0 11
Artículo
· 1 abr, 2025 Lectura de 6 min
Conjunto de mensajes huérfanos

En este artículo, hablaremos sobre los Mensajes Huérfanos.

¿Qué es un Mensaje Huérfano?

Cada cuerpo de mensaje está asociado con un encabezado de mensaje que contiene los metadatos. El encabezado incluye información como el nombre de la configuración de origen, el nombre de la configuración de destino, la hora de creación, la hora de procesamiento, la referencia asociada al cuerpo del mensaje, la información de sesión, el nombre de la clase del cuerpo del mensaje y el estado del mensaje.

0 0
0 12

Buenas tardes,

Estamos abriendo posiciones para desarrolladores Intersystems para proyectos en sector Life Sciences. Escenario de transformación, donde ya tenemos otros equipos scrum y planteamiento a largo plazo y marcos de desarrollo de producto incremental.

Buscamos reforzar esta capacidad y abrir un abanico de proyectos de transformación para desarrolladores Intersystems que busquen nuevos retos futuros:

3 0
0 26
Artículo
· 26 mar, 2025 Lectura de 5 min
Instalar WebTerminal en IRIS 2024.3

Las versiones recientes de IRIS contienen varios cambios que afectan a la instalación y condiguración de la herramienta OpenSource WebTerminal.

En este articulo, vamos a ver los pasos de instalación, y aprender a buscar y resolver los errores del WebGateway paso a paso.
Esta guía de instalación se ha realizado con la versiones siguientes, las más recientes soportadas a fecha de marzo de 2025:

3 0
0 16

Después de tantos años de espera, por fin tenemos un controlador oficial disponible en Pypi

Además, encontré el driver JDBC finalmente disponible en Maven desde hace ya 3 meses, y el driver .Net en Nuget desde hace más de un mes.

Como autor de multitud de implementaciones de librerías de Python con soporte de IRIS, quería probarlo. La implementación de DB-API significa que debe ser reemplazable e implementar las funciones definidas en el estándar. La única diferencia entre las diferentes bases de datos debería ser únicamente el SQL.

Y la belleza de usar librerías existentes que ya implementaron la conectividad con otras bases de datos usando el estándar DB-API, es que estas librerías deberían ser totalmente compatibles con el controlador.

Decidí probar el driver oficial de InterSystems implementando su soporte en la librería SQLAlchemy-iris.

1 0
0 15
Artículo
· 18 mar, 2025 Lectura de 2 min
Ollama AI con IRIS

En este artículo, discutiré el uso de un LLM alternativo para la IA generativa. OpenAI es comúnmente utilizado, pero en este artículo os mostraré cómo usarlo y las ventajas de utilizar Ollama.

En el modelo de uso de IA generativa al que estamos acostumbrados, seguimos el siguiente flujo:

1 0
0 22
Artículo
· 17 mar, 2025 Lectura de 6 min
Volver a lo básico: ¿Por qué InterSystems?

InterSystems ha estado a la vanguardia de la tecnología de bases de datos desde su creación, siendo pionera en innovaciones que superan constantemente a competidores como Oracle, IBM y Microsoft.

1 0
0 22

Hola, comunidad de IRIS,

InterSystems Certification está desarrollando un examen de certificación para profesionales desarrolladores de InterSystems IRIS, y si coincidís con la descripción del candidato al examen que se indica a continuación, nos gustaría que participéis en la prueba beta del examen.

0 0
0 15

¡Hola compañeros!

Otra vez más me he dado cuenta de que no hay una forma supersencilla de mostrar el error de la variable %Status, cosa que necesito con relativa frecuencia desde el terminal.

Sí, conozco las macros $$$, pero no son demasiado útiles en un terminal.

Habitualmente lo que hago es intentar recordar de memoria o copiar de algún sitio la fórmula:

USUARIO>w $System.State.DisplayError(st)

2 0
0 23

Desde la introducción de Embedded Python siempre ha estado la duda sobre su rendimiento respecto a ObjectScript y en más de una ocasión lo he comentado con @Guillaume Rongier , pues bien, aprovechando que estaba haciendo una pequeña aplicación para capturar los datos de los concursos públicos en España y poder realizar búsquedas utilizando las capacidades de VectorSearch he visto la oportunidad de realizar una pequeña prueba.

2 0
0 30

Os voy a mostrar cómo podéis montaros en vuestra máquina, muy rápidamente, un cluster de nodos InterSystems IRIS en sharding. En este artículo no es mi objetivo hablar del sharding en detalle, ni definir una arquitectura de despliegue para un caso real, sino enseñaros como podéis montar de forma rápida, en vuestro equipo, un cluster de instancias de IRIS en sharding con el que poder jugar y hacer pruebas. Si estáis interesados en indagar más sobre el sharding en IRIS, podéis echar un vistazo a la documentación pinchando aquí.

Vaya por delante que la tecnología sharding de IRIS nos va a permitir 2 cosas de inicio:

  • Definir, cargar y consultar tablas fragmentadas o shards, cuyos datos serán distribuidos transparentemente entre los nodos del cluster
  • Definir tablas federadas, que ofrecen una vista global y compuesta de datos pertenecientes a tablas distintas y que, fisicamente, están almacenadas en distintos nodos distribuidos.

Así que , lo dicho, dejamos para otros artículos el tema de jugar con shards o con tablas federadas, y nos centramos ahora en el paso previo, esto es, en montar el cluster de nodos en sharding.

2 2
0 35