Archivo de la etiqueta: irion

L’Incredibile Longevità di SQL: Radici del Successo e il Potere del Paradigma Dichiarativo

Oggi, vorrei gettare luce su un linguaggio che ha attraversato epoche e rivoluzioni digitali, rimanendo saldamente al centro della gestione dei dati: SQL. La sua longevità è più che un semplice fatto storico; è il risultato di principi profondamente radicati e del potere del paradigma dichiarativo.

🔗 Un Viaggio Attraverso il Tempo: SQL, Structured Query Language, è nato negli anni ’70 e da allora ha attraversato ogni evoluzione tecnologica con eleganza e resilienza. Ma quale è il segreto di questa longevità senza pari?

🌟 Principi Fondamentali del Successo di SQL:

  1. Universalità: SQL è universalmente riconosciuto e utilizzato. Le aziende di tutte le dimensioni e settori lo abbracciano per la sua affidabilità e capacità di gestire complessità.
  2. Semplicità ed Espressività: La semplicità di SQL non ne mina la potenza. Le sue istruzioni chiare ed espressive permettono di manipolare e recuperare dati in modo intuitivo.
  3. Flessibilità: SQL si adatta alle mutevoli esigenze dei dati. Che si tratti di interrogare un database o di elaborare un vasto insieme di dati, SQL offre le basi per farlo in modo efficiente.
  4. Approccio Dichiarativo: E qui risiede il cuore del successo. L’approccio dichiarativo di SQL ci consente di dire «cosa» vogliamo ottenere, piuttosto che «come» ottenerlo. Questo paradigma sposta il focus dalla logica di esecuzione ai risultati desiderati.

🔍 Il Potere del Paradigma Declarativo:

L’approccio dichiarativo rappresenta un cambio di paradigma fondamentale. Ci affrancano dalla gestione dei dettagli operativi e ci consentono di concentrarci sui problemi e sulle soluzioni a un livello più elevato.

In un mondo in continua evoluzione, l’importanza del paradigma dichiarativo diventa ancora più evidente. Ci libera da codici intricati, consentendoci di adattarci agilmente alle mutevoli esigenze aziendali.

🚀 Riflettiamo e Innoviamo:

L’eccezionale longevità di SQL ci insegna che la solida base di principi e il paradigma dichiarativo possono portare a un successo duraturo. La storia di SQL non è solo un tributo al suo passato, ma anche un monito per abbracciare principi fondamentali mentre innoviamo nel futuro.

#SQL #GestioneDati #ParadigmaDichiarativo #Tecnologia #Innovazione #Longevità

Condividiamo riflessioni e esperienze su questo viaggio attraverso la tecnologia. La longevità di SQL ci ispira a perseguire l’innovazione con radici solide.

El enfoque declarativo en el Data Management y la ventaja de Irion EDM

de Michele Iurillo* y ChatGPT

Este artículo se ha escrito a 4 manos.. (si se puede decir) de un lado he usado ChatGPT con preguntas muy concretas, del otro he añadido elementos para complementar la información. Imaginarlo como un experimento sobre el argumento del momento y una forma de concretar más el enfoque declarativo en Data Management que es uno de los puntos fuertes de la tecnología de Irion EDM.

El enfoque declarativo se refiere a una forma de expresar un problema o una solución en términos de lo que se desea lograr, en lugar de cómo se desea lograrlo. En lugar de especificar los pasos detallados para resolver un problema, se especifica el resultado deseado.

En programación, el enfoque declarativo se utiliza para escribir código que especifica qué se desea lograr, en lugar de cómo se desea lograrlo. Por ejemplo, en lugar de escribir código que especifica cómo recorrer una lista de elementos y realizar una determinada acción en cada uno de ellos, se escribe código que especifica que se desea realizar esa acción en cada elemento de la lista. El lenguaje de programación se encarga de resolver cómo realizar esa acción.

El enfoque declarativo se utiliza en varios campos, como en bases de datos, en donde los lenguajes declarativos son aquellos que se centran en describir los resultados deseados en una consulta, en lugar de describir cómo se obtienen esos resultados. SQL es un ejemplo de un lenguaje declarativo utilizado en las bases de datos relacionales.

En resumen, enfoque declarativo es una forma de abordar un problema o una solución enfatizando en lo que se quiere lograr en lugar de cómo se quiere lograrlo, permitiendo al sistema o lenguaje de programación encargarse de las tareas de implementación.

Algunos ejemplos de lenguajes de programación declarativos son:

  1. SQL (Structured Query Language): Es un lenguaje declarativo utilizado para acceder y manipular bases de datos relacionales. En lugar de especificar cómo recuperar los datos, se especifica qué datos se desean recuperar mediante consultas.
  2. Prolog: Es un lenguaje de programación lógico declarativo utilizado en inteligencia artificial y programación de sistemas expertos. Permite al programador especificar reglas y hechos, y luego utilizar un motor de inferencia para obtener conclusiones.
  3. Haskell: Es un lenguaje de programación funcional declarativo utilizado para construir sistemas concurrentes y distribuidos. En lugar de especificar cómo se deben realizar las operaciones, se especifican las operaciones que se desean realizar y el lenguaje se encarga de resolver cómo realizarlas.
  4. XSLT: (Extensible Stylesheet Language Transformations) es un lenguaje declarativo utilizado para transformar documentos XML en otro formato, como HTML o PDF. El programador especifica cómo se deben transformar los datos, en lugar de cómo se deben recuperar.
  5. RDF: (Resource Description Framework) es un lenguaje declarativo utilizado para describir recursos y relaciones entre ellos. Es ampliamente utilizado en la web semántica y el enriquecimiento de metadatos.

Enfoque Procedural

El enfoque procedural se refiere a una forma de expresar un problema o una solución en términos de los pasos específicos que deben seguirse para lograr un resultado. En lugar de especificar el resultado deseado, se especifican los pasos detallados para resolver el problema.

En programación, el enfoque procedural se utiliza para escribir código que especifica cómo se deben realizar las tareas, en lugar de qué tareas se deben realizar. Por ejemplo, en lugar de escribir código que especifica que se desea realizar una determinada acción en cada elemento de una lista, se escribe código que especifica cómo recorrer la lista y realizar la acción en cada elemento.

Los lenguajes de programación procedurales son aquellos que siguen un enfoque de programación estructurada, en donde se divide el código en bloques lógicos y se organizan en funciones y procedimientos

Algunos ejemplos de lenguajes de programación procedurales son:

C: Es un lenguaje de programación de alto rendimiento y de bajo nivel, que es ampliamente utilizado para desarrollar sistemas operativos, dispositivos embebidos y aplicaciones de bajo nivel. Es un lenguaje de programación estructurado, con un enfoque en la programación procedural.

Pascal: Es un lenguaje de programación estructurado, desarrollado para la enseñanza de la programación en las universidades. Es ampliamente utilizado para desarrollar aplicaciones de escritorio, juegos y aplicaciones científicas.

Fortran: es un lenguaje de programación procedural desarrollado para cálculo científico y numérico, es utilizado en aplicaciones como simulación de sistemas, modelado de fluidos y análisis estadísticos.

Basic: es un lenguaje de programación procedural muy fácil de aprender para principiantes. Fue diseñado para enseñar a los estudiantes de programación básica

¿Por qué es mejor el enfoque declarativo en Data Management?

El enfoque declarativo en Data Management tiene varias ventajas sobre el enfoque procedural. Algunas de estas ventajas son:

  1. Mayor claridad: El enfoque declarativo permite especificar los resultados deseados de manera clara y concisa, lo que ayuda a reducir el riesgo de errores y aumenta la eficiencia en el manejo de datos.
  2. Mayor flexibilidad: Al especificar los resultados deseados en lugar de los pasos para lograrlos, el enfoque declarativo permite adaptarse fácilmente a cambios en los datos o en los requisitos del sistema.
  3. Mayor escalabilidad: Al permitir la separación entre la especificación de los resultados y su implementación, el enfoque declarativo permite escalar el sistema de manejo de datos sin tener que modificar el código.
  4. Mayor portabilidad: Al separar la especificación de los resultados de su implementación, el enfoque declarativo permite el uso de diferentes sistemas o tecnologías para implementar la especificación.
  5. Mayor eficiencia: Al permitir que el sistema se encargue de implementar la especificación, el enfoque declarativo permite obtener resultados más rápidamente y con menos recursos.

En resumen, el enfoque declarativo en Data Management ofrece una mayor claridad, flexibilidad, escalabilidad, portabilidad y eficiencia en la gestión de datos. Al permitir especificar los resultados deseados en lugar de los pasos para lograrlos, permite una mayor escalabilidad, flexibilidad y portabilidad.

DELT(™) ELT Declarativo

DELT es una de las tecnologías propietarias de Irion. El motor orquesta y sincroniza el plan de procesamiento y control de datos con algoritmos inteligentes, lo que permite a los profesionales de la gestión de datos -que utilizan la plataforma Irion EDM®- trabajar en un entorno autoadaptativo y basado en metadatos.

Las ventajas principales son:

  • El enfoque declarativo permite al motor DELT™ alcanzar altos niveles de rendimiento al maximizar el paralelismo de las fases de procesamiento.
  • La arquitectura DELT™ está diseñada para trabajar eficazmente con grandes volúmenes de datos mediante motores orientados a conjuntos.
  • El ingeniero de datos se encarga de los aspectos semánticos de las soluciones delegando en la plataforma la gestión automática de las estructuras de datos.
  • La integración de motores con tecnologías heterogéneas, como Query, Script, Rule, R, Python, Masking, Profiling, permite utilizar la herramienta más adecuada para cada situación.

Para info: http://irion-edm.com/es

Data Fabric: Soluciones convergentes para evitar un mosaico de herramientas complejas

Según Gartner, el Data Fabric es una arquitectura y un conjunto de servicios de datos que proporciona una funcionalidad consistente en una variedad de entornos, desde los locales hasta la nube. Data fabric simplifica e integra la gestión de datos en las instalaciones y en la nube, acelerando la transformación digital. ¿Cómo vamos a convencer a las empresas de que los datos son absolutamente transversales? ¿Cómo podemos realizar una valoración sólida de los datos? ¿Puede el data fabric ayudarnos en esto? ¿Podemos someter los silos de datos?

Gartner define el data fabric como un concepto de diseño que sirve como capa integrada (tejido) de datos y procesos de conexión. Una estructura de datos utiliza el análisis continuo de los activos de metadatos existentes para apoyar el diseño, el despliegue y el uso de datos integrados y reutilizables en todos los entornos, y es una necesidad para las organizaciones impulsadas por los datos: «El enfoque de la estructura de datos puede mejorar los patrones tradicionales de gestión de datos y sustituirlos por un enfoque más receptivo. Ofrece a los gestores de D&A la posibilidad de reducir la variedad de plataformas de gestión de datos integradas y ofrecer flujos de datos interempresariales y oportunidades de integración«.

Por eso es necesario un enfoque «todo en uno», es decir, una plataforma que pueda operar en toda la cadena de datos, desde la ingesta de datos hasta su explotación y visualización.

Un enfoque totalmente virtual (un sistema LDW basado en consultas) tiene la limitación de no poder materializar todos los procesos y, sobre todo, no permite una auditoría completa a lo largo del tiempo y en entornos muy regulados, como la banca y los seguros. El almacén de datos lógicos es un enfoque que puede resolver algún requisito específico, pero no tiene cabida en los procesos estructurados. El regulador no sólo puede preguntarnos cómo se realiza un determinado proceso de extracción y su linaje, también puede querer ver la réplica de un determinado proceso en una fecha concreta para ver todas las transformaciones y todos los procesos que han intervenido.

En contra de las herramientas Patchwork

Normalmente, cuando nos acercamos a una empresa para cualquier tipo de proyecto de datos, nos encontramos con un escenario típicamente fragmentado. Las empresas suelen incorporar herramientas según una lógica más bien comercial del momento histórico de la empresa. Así que es normal encontrar un mosaico de muchas herramientas diferentes: Tendremos fuentes de datos, diferentes almacenes de datos de distintos proveedores, motores analíticos, motores de reporting, cubos OLAP, etc. En el mejor de los casos, pueden proceder del mismo proveedor, pero aún así hay que resolver algunos problemas. ¿Cómo hacemos la automatización del flujo de trabajo? ¿Cómo gestionamos los metadatos? ¿Cómo documentamos los procesos? ¿Qué pasa con la responsabilidad? ¿Cómo respondemos al regulador? Es entonces cuando nos preguntamos a nivel de arquitectura que quizá deberíamos haber hecho de otra manera.

Un enfoque de gestión de datos empresariales (EDM), en el que todos los activos de datos se concentran en una única plataforma, sería la solución óptima. Además, según DAMA, la eliminación de los silos y la plena responsabilidad deberían estar en el centro de cualquier proyecto de datos. ¿Puede el concepto de Data Fabric ser una solución? Según Gartner, los data fabrics reducen el tiempo de diseño de la integración en un 30%, el despliegue en un 30% y el mantenimiento en un 70%, ya que los diseños tecnológicos se basan en la capacidad de utilizar/reutilizar y combinar diferentes estilos de integración de datos. Además, los data fabrics pueden aprovechar las habilidades y tecnologías existentes de los data hubs, data lakes y data warehouses, al tiempo que introducen nuevos enfoques y herramientas para el futuro. En este sentido, aunque un buen enfoque es disponer de una plataforma «todo en uno» con plenas capacidades de interoperabilidad, la implantación de un data fabric no requiere ninguna de las inversiones tecnológicas del cliente.

Articulo completo: https://www.linkedin.com/pulse/data-fabric-soluciones-convergentes-para-evitar-un-mosaico-iurillo/

Articulo original en ingles en DataVersity: https://www.dataversity.net/data-fabric-convergent-solutions-to-avoid-complex-tools-patchwork/

ETL, CDC, ELT y DELT(TM)

Una de las cosas más fascinante que he encontrado dentro de IRION es sin duda el enfoque Declarativo. Es algo tan sencillo y tan potente. En años de Data Management siempre me he topado con problemáticas de gestión de datos. De procesos de extracción, de manos en la masa de datos, proyectos interminables, lentos, procesos de cargas sin fin, etc. 

 

Este artículo es fruto de mi afán de entender las cosas bien. Quería aclararme bien mi storytelling para la introducción de Irion en el mercado Español. Lo más bonito de mi trabajo es el aprendizaje que cada día los diferentes clientes y proyectos me aportan. Pero vamos con orden ¿que es un enfoque declarativo? Volviendo a mis antiguos apuntes de programación “Los programas se pueden clasificar por el paradigma del lenguaje que se use para producirlos. Los principales paradigmas son: imperativos, declarativos y orientación a objetos.” Sin ir mucho más lejos, SQL es declarativo, lanzar una query quiere decir quiero obtener un resultado concreto no me interesa saber de qué forma lo haces a nivel interno ya que los programas que usan un lenguaje declarativo especifican las propiedades que la salida debe conocer y no especifican cualquier detalle de implementación. El ejemplo más típico es el de la Paella, si voy a comer una a un restaurante simplemente pido “una paella”, no comunicó al camarero que quiero que se vayan sofriendo pollo y conejo con algo de ajo, aceite y romero, para luego poner las verduras, para luego poner el tomate el pimienton, todo ello con el caldo para luego verter el arroz… No somos expertos de cualquier cosa (aunque mi paella debido a los años de vida en Valencia no está nada mal por ser italiano) y cuando no llegamos a algo o no sabemos hacer algo delegamos en trabajo en alguien que sepa hacerlo mejor, más rápido y más bueno (sobre todo si de paella se trata).

 

Pero nosotros nos ocupamos de datos, muchos datos, estructurados, no estructurados en una gran cantidad de fuentes externas, de proveniencia histórica o reciente. Datos que tenemos que Gobernar y tener bien aseados a nivel de calidad. Datos que tenemos que rectificar, reconciliar, mantener historicizados. Datos que tenemos que “documentar” porque es el regulador que nos lo impone y de ellos tenemos que tener una trazabilidad total y el proceso tiene que ser repetible. Hasta ayer, hoy todo esto se nos hacía muy complejo, estos datos tenían que limpiarse, adaptarse, extraerse, copiarse, y por ello existen diferentes enfoques el más histórico y utilizado ha sido el ETL.

 

ETL Extract Transform Load

 

Ya hemos hablado largo y tendido de todas las problemáticas de los procesos ETL en otro artículo. Justo para introducir el tema, ETL son las siglas de Extract-Transform-Load. El término ETL describe el proceso de mover datos y hacer manipulaciones con ellos. Las herramientas ETL suelen tener funciones de conexión a múltiples plataformas de datos y aplican transformaciones a los datos en la memoria. Después, presumiblemente, el resultado se registra en algún lugar. Los algoritmos ETL también pueden escribirse en la mayoría de los lenguajes de programación modernos, pero muchas organizaciones consideran que esta opción es menos preferible debido a la sobrecarga que supone escribir el código desde cero y a la complejidad desconocida del soporte posterior. 

 

Llegó un momento en que nos dimos cuenta de era inutil repetir estos procesos de cargas, y las nuevas tecnologías y los nuevos enfoques nos han brindando el CDC (Change Data Capture)

 

CDC Change Data Capture

 

CDC es uno de los patrones ETL para copiar datos. Se utiliza para auditar cada cambio en un registro: ya sea que cambie alguno de los valores o que se elimine un registro. Antiguamente, este patrón se implementa con herramientas ETL comparando la última copia de los datos con el origen o comprobando la marca de tiempo de actualización del registro de origen. El rendimiento era pésimo y había una enorme posibilidad de perder algunas de las actualizaciones. Las herramientas de CDC han cambiado las cosas drásticamente, utilizan registros de transacciones para rastrear los cambios, por lo que ningún cambio pasa desapercibido, y ni siquiera afecta al rendimiento de la base de datos de origen. Hay dos métodos diferentes para detectar y recoger los cambios: el data el versionado, que evalúa las columnas que identifican las filas que han cambiado (por ejemplo, las columnas last-update- columnas de fecha y hora, columnas de número de versión, columnas de indicador de estado), o mediante lectura de registros que documentan los cambios y permiten replicarlos en sistemas secundarios. El CDC nos brindó muchas mejoras sobre todo en términos prestacionales, herramienta como Qlik ha hecho de CDC un mantra sobre todo cuando su producto ha querido salir del mundo OLAP. Pero… Llegó la nube y lo cambió todo, almacenamiento y cómputo de alta disponibilidad han creado un nuevo escenario. 

 

ELT Cargamos primero…

 

El enfoque ETL fue una vez necesario debido a los altos costos de la computación y el almacenamiento en las instalaciones. Con el rápido crecimiento de los almacenes de datos basados en la nube y la caída en picado de los costos de la computación y el almacenamiento basados en la nube, hay pocas razones para seguir haciendo la transformación antes de la carga en el destino final. De hecho, dar la vuelta a los dos permite a los analistas hacer un mejor trabajo de forma autónoma.

En pocas palabras ahora los analistas pueden cargar los datos antes de transformarlos, no tienen que determinar de antemano exactamente qué conocimientos quieren generar antes de decidir el esquema exacto que necesitan obtener y esta es una gran ventaja.

En su lugar, los datos de la fuente subyacente se replican directamente en un almacén de datos, que comprende una «única fuente de verdad». Los analistas pueden entonces realizar transformaciones en los datos según sea necesario. Los analistas siempre podrán volver a los datos originales y no sufrirán transformaciones que puedan haber comprometido la integridad de los datos. Esto hace que el proceso de inteligencia de negocio sea incomparablemente más flexible y seguro.

 

DELT(™)

 

Delt es una de las tecnologías propietarias de IRION. El motor orquesta y sincroniza el plan de procesamiento y control de datos con algoritmos inteligentes, lo que permite a los profesionales de la gestión de datos -que utilizan la plataforma Irion EDM®- trabajar en un entorno autoadaptativo y basado en metadatos.

Las ventajas principales son:

  • El enfoque declarativo permite al motor DELT™ alcanzar altos niveles de rendimiento al maximizar el paralelismo de las fases de procesamiento.
  • la arquitectura DELT™ está diseñada para trabajar eficazmente con grandes volúmenes de datos mediante motores orientados a conjuntos.
  • El ingeniero de datos se encarga de los aspectos semánticos de las soluciones delegando en la plataforma la gestión automática de las estructuras de datos.
  • la integración de motores con tecnologías heterogéneas, como Query, Script, Rule, R, Python, Masking, Profiling, permite utilizar la herramienta más adecuada para cada situación.

 

Un enfoque declarativo permite concentrarse en lo que se quiere obtener. Esto es lo que importa. 

 

 

 

Nueva etapa profesional…

Hoy inicia una nueva aventura, se abre una nueva etapa profesional en Irion. En particular quiero agradecer Giovanni ScavinoAlberto Scavino por la confianza y Egle Romagnolli por el soporte. Me uno a un equipo de alto nivel con 150 profesionales del #DataManagement
#Irion #EDM es una plataforma abierta, escalable y eficiente basada en el innovador y disruptivo paradigma «declarativo» para implementar y gestionar las fases de un proceso de #DataManagement. Proporciona toda la funcionalidad necesaria de principio a fin en una arquitectura modular preparada para #DataFabric. Irion EDM está totalmente orientado a los #metadatos gracias a su enfoque declarativo, puede delegar la ejecución de todos los procesos. Basado en #SQL es intuitivo fácil de configurar, incluso para no técnicos.

Irion apre il mercato in Spagna grazie a Michele Iurillo