Sobre Mí

"Hola, trabajo desde hace muchos años con datos. Mi objetivo es aportar resultados en el menor tiempo posible, poseo conocimientos y habilidades informáticas, pero si no lo se, te aseguro que lo voy averiguar. Mi metodología es simple, pero muy sólida partiendo desde como trabajar hojas de cálculo con MS Excel, usando análisis funcional para crear tablas y gráficos dinámicos, hasta obtener datos complejos. Cada proceso y skillset son únicos, específicos y van a depender de cada responsable. Trabajo desde hace años con herramientas informáticas dedicadas, como: hojas de cálculo, Queries de bases de datos con SQL, configuro y trabajo con lenguajes de alto rendimiento como Python, Scala o R y sus herramientas colaborativas. Adicional a todo esto, si te inclinas más con visualizaciones, mi herramienta es PowerBI donde trabajo con dashboards para mostrar gráficos y tendencias."

La calidad y seguridad de los datos los interpreto y valoro de acuerdo a su posición y función dentro del sistema:

En resumen: Las reglas de integridad definen las restricciones y limitaciones que se aplican a los datos de una base de datos. Estas reglas garantizan que los datos se mantengan precisos, consistentes y completos, evitando la introducción e injesta de información incorrecta o inconsistente, disminuyendo el ruido y mejorando la legibilidad.

Si bien resumir implica descartar alguna información, puede cumplir con los objetivos de análisis descriptivo de manera efectiva. Los números y tablas se utilizan para presentar conjuntos de datos, y estos resúmenes pueden proporcionar información suficiente para ciertos análisis. Las técnicas y herramientas para el resumen de datos pueden mejorar la efectividad como analista de datos.

Mis Números

+0

Clientes

0

Proyectos

0

Horas

0

Grupos

0

Scripts

Mis Servicios

Lenguaje Estructurado

Consultas en Bases de Datos

Es un lenguaje de programación diseñado para gestionar los datos almacenados en un sistema de gestión de bases de datos relacionales (RDBMS). Algunas características:

  • Sencillez y comprensibilidad: Para la unificación estructural, usa sintaxis y comandos fáciles de interpretar.
  • Flexibilidad: De fácil adaptación a cualquier tipo de necesidad.
  • Integridad de datos: Protege de fallos y asegura para que la información sea correcta y esté completa.
  • Certificación ANSI e ISO: Sello de aprobación por entidades oficiales.

La estandarización, el tipo de dialecto y las consultas en SQL

La Estandarización hace referencia al comportamientos de la sintaxis SQL en todos los productos de bases de datos, con mayor relevancia en datos con sistemas como MySQL o PostgreSQL, donde su desarrollo está más vinculado a su comunidad, pero...

¿Que es una base de datos?

Una base de datos consta de datos y metadatos. Los metadatos son los datos que describen la estructura de los datos dentro de una base de datos. Si se conoce como se organizan los datos, se puede describir su estructura, en autodescriptiva. La base de datos están integradas, porque incluyen no solo elementos de datos, sino además sus relaciones entre cada elemento de los datos. Estos datos almacenan metadatos en un área llamada diccionario de datos, que describe las tablas, columnas, índices, restricciones y otros elementos que componen la base de datos. Las bases de datos pueden presentarse de diferentes dimensiones, desde simples colecciones de unos pocos registros hasta grandes sistemas que contienen millones de registros.

¿Que es un sistema de administración de bases de datos o DBMS?

Un sistema de gestión de bases de datos (SGBD) es un conjunto de programas utilizados para definir, administrar y procesar bases de datos y sus aplicaciones asociadas. Un DBMS es la herramienta que se usa para construir esa estructura y operar con los datos contenidos en la base de datos. Algunos se ejecutan en máquinas grandes y potentes, y otros en computadoras personales, computadoras portátiles y tabletas. Algunos incluso funcionan con teléfonos inteligentes. Sin embargo, una tendencia fuerte es que dichos productos funcionen en múltiples plataformas o en redes que contengan diferentes clases de máquinas. Una tendencia hoy día es almacenar datos en centros de datos o incluso almacenarlos en la nube, que podría ser una nube pública administrada por grandes corporaciones como Amazon, Google, Meta, Netflix, Microsoft, etc..., a través de Internet y con metodologías que combina métodos cuantitativos "in-depth", es decir, de forma minuciosa y detallada revelando estructuras, causas, compensaciones e implicaciones evitando limitarse a hechos superficiales o por el contrario podría ser una nube privada operada por la misma organización que almacena los datos en su propia intranet, construyendo en ambos sentidos los conceptos de Big Tech. Actualmente, nube o cloud es una palabra de moda que se habla incesantemente en el mundo tech. Lo indagaremos mucho más adelante...

Archivos Planos

La estructura de datos más simple son los archivos planos, donde la información no contiene información estructurada o metadatos, lo que conlleva a una mínima sobrecarga. La razón por la que las bases de datos eliminan la duplicación de esfuerzos es porque, el DBMS maneja los detalles de manipulación de datos. Si varias aplicaciones acceden a los mismos datos de archivo plano, todas estas aplicaciones deben incluir (de forma redundante) ese código de manipulación de datos. Sin embargo, si se utiliza un DBMS, no se necesita incluir código a las aplicaciones; volviendo la migración de las aplcaciones simples y menos complicadas.

Modelo de Bases de Datos - Definiciones

  • Modelo Relacional: Hace referencia a las relaciones de y entre tablas por medio de sus columnas y tuplas. Una base de datos puede contener tantas tablas como se deseen. Cada tabla es una implementación de una entidad del mundo real. Como ejemplo se considera una universidad que mantiene información sobre sus estudiantes. Un estudiante se representa como una entidad durante la etapa de diseño de la base de datos. Cuando se implementa el diseño, un alumno se representa como una tabla.
  • Atributos: Hace referencia a la columna con nombre en la tabla. Una tabla puede contener tantos atributos como se deseen. Las entidades identificadas durante el diseño de la base de datos pueden contener atributos / características que describan la entidad. Por ejemplo en el caso anterior, el estudiante tiene un número de identificación de estudiante y un nombre. La identificación y el nombre del estudiante se implementarán como columnas en la tabla de estudiantes.
  • Flexibilidad: Esta condición puede agregar, eliminar o cambiar datos en una tabla sin afectar los datos en las otras tablas, siempre que la tabla afectada no sea una tabla principal o llave primaria (Primary Key) de ninguna de las otras tablas.
  • Fuente: Allspreadsheet.com
  • Clave Primaria o Primary Key: El punto esencial a tener en cuenta al elegir una clave principal es que se debe garantizar que sea única para cada fila diferente de la tabla, por lo que la pregunta que siempre debe hacerse es si existe alguna posibilidad de que pueda haber valores duplicados de la clave principal en consideración. Las claves primarias pueden consistir en una sola columna o en una combinación de columnas. Un ejemplo de una sola columna de tabla sería el uso de un número de ID único en una tabla que contiene información sobre los empleados. Como ejemplo para dos columnas, observa la tabla llamadas en la que se desea almacenar los detalles de cada una de las llamadas realizadas por cada empleado. Los elementos de datos típicos que podríamos almacenar en las columnas de dicha tabla de tareas podrían ser: el nombre de la tarea, la fecha de inició la tarea, la fecha de finalización prevista, la fecha de finalización real y el número de empleado de la persona responsable de garantizar la finalización de la tarea.
  • Clave Secundaria o Foreign Key: Relaciona información almacenada en diferentes tablas. Por ejemplo, es posible que deseemos vincular las tareas almacenadas en la tabla de clientes, con los detalles de los empleados y las llamadas a los que están relacionadas esas tareas. La simplicidad mediante el cual esto se logra dentro del modelo relacional, es una de las principales fortalezas del modelo.
  • Restricciones de Integridad: Relacionada con todas las instancias de la base de datos.
  • Valores nulos: Representado por información desconocida, es decir, valores que no se conocen, o para el cual un valor no es aplicable. Sin embargo, en algunas ocasiones el uso de valores nulos puedo ser de utilidad ya que puede ser una forma de evitar lecturas incorrectas. Cuando los valores de algunos indicadores no se conoce, indica el hecho de que el elemento de los datos no está establecido a ningún valor real.
  • SQL (Structured Query Language): Lenguaje de consulta utilizado para interactuar con bases de datos relacionales. Es un estándar en la industria y se utiliza para realizar operaciones como consultas, inserciones, actualizaciones y eliminaciones de datos, haciendo uso de la nomenclatura RDBMS o Sistema de Administración de Bases de datos Relacionales.
  • PL/SQL (Procedural Language/Structured Query Language): Es un producto de Oracle y es una extensión del SQL que agrega funcionalidades de programación a los comandos de consulta. Permite la escritura de bloques de código más complejos y permite crear procedimientos almacenados, funciones, desencadenadores y paquetes en la base de datos.
  • T-SQL (Transact Structured Query Language): Es un producto de Microsoft y es una extensión del lenguaje SQL que se utiliza para interactuar con bases de datos relacionales. Se considera que funciona mejor con servidores Microsoft SQL. Las sentencias T-SQL se utilizan para realizar las transacciones a las bases de datos. T-SQL tiene una gran importancia ya que todas las comunicaciones con una instancia de SQL Server se realizan enviando instrucciones Transact-SQL al servidor.
  • Algebra relacional: Son las bases matemáticas de las consultas SQL y dentro de sus funciones es permitir obtener una visión y comprensión en las consultas, a través de estas leyes tenemos la capacidad de optimizar y restringir sus relaciones. Ejemplos de uso de la algebra relacional la podemos ver en las operaciones con grupos de enteros negativos o en cadenas de tuplas, que proyectado a una consulta SQL lo podemos interpretar en los estados SELECT y clausula WHERE. Entre los operadores más relevantes encontramos:
    • Uniones: El comando UNION de SQL permite encapsular los resultados de varias solicitudes usando el comando SELECT. Por lo tanto, es un comando que permite concatenar los resultados de 2 o más solicitudes. Para usarla, es necesario que cada una de las solicitudes se concatenen para devolver el mismo número de columnas, con los mismos tipos de datos y en el mismo orden. Para realizar una unión en la que se muestren todas las líneas duplicadas, es necesario utilizar el comando UNION ALL.
    • Intersecciones: Obtine los resultados de 2 o más declaraciones SELECT que se cruzan. Este comando se utiliza para recuperar los registros comunes a 2 consultas y puede ser útil cuando se trata de averiguar si hay datos repetidos en 2 tablas separadas.
    • Diferencias o Excepciones: Ocurre cuando no se puede ejecutar una instrucción. Propuesto inicialmente por Oracle, puede también verse en las clausulas de T-SQL con TRY y CATCH. Las excepciones impedirán que el programa siga ejecutándose, por lo que, para evitar dicha condición, es necesario capturarlas y manejarlas por separado.
    • Agregaciones: Propuesto inicialmente por Microsoft e incluye las funciones SUM(), COUNT(), AVG(), MIN(), y MAX(). Puede definirse como una operación integrada que procesa múltiples filas de datos y devuelve un resultado único y calculado. Esta función es esencial para resumir grandes conjuntos de datos, permitiendo un análisis eficiente de los datos, la presentación de informes y la toma de decisiones. En lugar de trabajar en filas individuales, las funciones agregadas operan en un conjunto de valores y devuelven una sola salida, haciéndolos invaluables para la optimización y análisis de bases de datos. Puede ser utilizada en PL/SQL incluida dentro de sus bloques SELECT, INTO, CURSORS, GROUP BY, LOOPS, etc...
    • Agrupamientos: Agrupar los datos permite la recolección haciendo uso de la instrucción SELECT y reune los resultados por una o más columnas, es decir, las funciones de grupo y la cláusula GROUP BY se utilizan conjuntamente para calcular los valores que arrojan dichas funciones para cada uno de los grupos.

Principales comandos SQL

  • Lenguage de Definición de datos o DDL: Describe los registros, los campos, y conjuntos que conforman el modelo de datos y se utilizan para definir, alterar o eliminar estructuras de bases de datos tales como tablas, índices y esquemas. Un ejemplo son los archivos XML.
    • CREATE: Usado para crear objetos en la base de datos.
    • ALTER: Altera la estructura de las base de datos.
    • DROP: Elimina los objetos de la base de datos.
    • TRUNCATE: Elimina todos los espacios donde están los registros de una tabla a excepción de su estructura, el cuál se mantiene para el ingreso de nuevos campos de datos, es decir, se mantiene el objeto.
    • COMMENT: Agrega comentarios al diccionario de datos.
    • RENAME: Cambia el nombre de un objeto.
  • Lenguaje de Consulta de datos o DQL : Realiza consultas a través del comando SELECT sobre los datos dentro de los objetos del esquema. El propósito del Comando DQL es conseguir alguna relación dentro del esquema, lo que permite sacar los datos de la base de datos para realizar operaciones.
  • Lenguaje de Manipulación de Datos o DML: Se utiliza para la gestión de datos dentro de los objetos del esquema a través de la recuperación y manipulación para las tareas de consultas o manipulación.
    • INSERT: Su función, insertar datos en una tabla.
    • UPDATE: Actualiza los datos existentes de una tabla.
    • DELETE: Elimina todos los registros de una tabla.
    • CALL: Utilizado para llamar a un procedimiento externo, es decir, invoca o ejecuta un procedimiento almacenado que se ha creado previamente en la base de datos.
    • EXPLAIN PLAN: Explica la ruta de acceso a los datos.
    • LOCK: Bloquea una o más tablas, particiones o subparticiones de tabla en un modo específico, permitiendo o negando el acceso a una tabla o vista por parte de otros usuarios. La tabla permanecerá bloqueada hasta que se ejecute o revierta la operación.
  • Lenguaje de Control de Datos o DCL: Dedicada a controlar el acceso a los datos en una base de datos. Se utiliza para la definición de los privilegios de control de acceso y edición a los elementos que componen la base de datos (seguridad). Los permisos a nivel base de datos pueden otorgarse a usuarios para ejecutar ciertos comandos dentro de la base o para que puedan manipular objetos y los datos que puedan contener estos.
    • GRANT: Permite otorgar permisos a los usuarios sobre los objetos definidos en la base de datos, así como las operaciones a utilizar sobre ellos.
    • REVOKE: Permite revocar permisos sobre los objetos definidos en la base de datos y las operaciones sobre los mismos.
    Fuente: Allspreadsheet.com
  • Lenguaje de Control de Transacciones o TCL: Utilizado para controlar el procesamiento de transacciones en una base de datos. Al hablar de TCL es necesario hablar de sus principios en ACID relacionadas con las transacciones y restricciones SET, pero antes veamos los detalles:
    • COMMIT: Marca el final de una transacción y hace permanente todos los cambios hechos durante la misma, es decir, guarda el trabajo realizado.
    • SAVEPOINT: Identifica un punto en la transacción a la que más tarde se puede volver, ya sea para desahacer o para modificar cambios en un punto de control.
    • ROLLBACK: Restaura una base de datos a su estado original desde su último COMMIT.
    • SET Transaction: Conjunto de instrucciones SQL, agrupadas lógicamente que o bien se ejecutan todas sobre la base de datos o bien no se ejecuta ninguna.
    • SET Constraint: Actualiza los datos existentes de una tabla.

Resumen Esquemático y Categórico de los comandos en SQL

Fuente: Allspreadsheet.com

Resumen

"Cuando trabajamos con consultas SQL, la comprensión es fundamental con la finalidad de ir elevando a un nivel avanzado las queries e ir gestionando desafiantes y complejos códigos como la automatización y la re-utilización. Algunos de los conceptos críticos que serán necesarios dominar son las sub-queries, las posibles relaciones y sus uniones, agregaciones, cálculos en grupos de filas, expresiones comunes, pivoteo de filas comunes y separadas, entendiendo la recursividad, manipulación de cadenas, administración de fechas y horas, filtrado de queries externas y solución de problemas por incompatibilidad y pérdida de la estructura, por mencionar algunas entre muchas más."

¡Lo que dicen...!

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Margaret Root

Owner

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Katherine Pulish

Tech Analyst

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Robert Crud

Data Scientist

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Fred Lamar

IT Solutions