Volver a la lista de artículos Artículos
Lectura de 17 minutos

Por qué todo administrador de bases de datos necesita SQL

¿Qué es un administrador de bases de datos? ¿A qué se dedica? ¿Por qué necesitan saber SQL y para qué lo utilizan? En este artículo responderé a estas preguntas.

A medida que avanza la tecnología, cada vez hay más datos disponibles para ayudar a las organizaciones a tomar decisiones informadas. No se puede seguir siendo competitivo, ni ofrecer un buen servicio a los clientes, sin la información adecuada.

Los administradores de bases de datos son responsables de garantizar que los datos correctos se almacenan de forma segura, que son fácilmente accesibles para quienes los necesitan y que están protegidos de ataques malintencionados. Se trata de un trabajo que no va a desaparecer en un futuro próximo.

La herramienta más importante del administrador de bases de datos es SQL (Structured Query Language). Con SQL se puede definir qué datos se van a almacenar, cómo se van a almacenar y quién puede acceder a ellos. Puedes extraer datos, convertirlos a otro formato y moverlos a una ubicación diferente. SQL permite supervisar el rendimiento de la base de datos y solucionar los cuellos de botella que puedan producirse.

En resumen, SQL te permite gestionar los datos de una base de datos de todas las formas posibles.

Si desea saber más acerca de las bases de datos y cómo SQL le permite trabajar con ellos, LearnSQL.es's SQL para principiantes curso es un gran lugar para comenzar. Aprenderás qué es una base de datos, cómo almacena la información y cómo ejecutar consultas sencillas para extraer y agregar los datos. Este curso dura unas 10 horas e incluye más de cien ejercicios interactivos que puedes completar en tu navegador. Al final del curso, sabrás si te gusta trabajar con bases de datos y si te gustaría dedicarte a la administración de bases de datos.

¿Qué es SQL y por qué lo necesitan los administradores de bases de datos?

En la década de 1960, el desarrollo de mejores técnicas de almacenamiento de datos permitió almacenar grandes cantidades de datos. Comenzaron a desarrollarse varios programas para gestionar estos datos y acceder a ellos de forma rápida y eficaz, y así nació el concepto de base de datos.

En los años 70, la mayor parte de la industria adoptó una tecnología conocida como Sistema de Gestión de Bases de Datos Relacionales (SGBDR). Hoy en día, éste sigue siendo el método más popular de almacenamiento de datos, aunque algunas bases de datos especializadas utilizan estructuras diferentes orientadas a necesidades específicas. Puedes leer más sobre las bases de datos relacionales, a veces conocidas como bases de datos SQL, en ¿Qué es una base de datos SQL? Muchas bases de datos basadas en la nube también son bases de datos relacionales.

Si quieres saber más sobre qué tipos de bases de datos se utilizan hoy en día, consulta nuestro artículo sobre las bases de datos más populares en 2023.

SQL -desarrollado inicialmente por IBM- se convirtió en el lenguaje estándar para crear, acceder y gestionar bases de datos relacionales. La definición de normas y revisiones de este lenguaje es ahora responsabilidad del ANSI (American National Standards Institute). Incluso las bases de datos no relacionales más populares permiten extraer y gestionar datos con SQL, ya que es cómodo y fácil de usar.

SQL se compone de comandos en inglés para realizar tareas relacionadas con las bases de datos. Un comando SQL para extraer datos puede tener este aspecto:

SELECT account_number, name, balance FROM customers ORDER BY account_number;

SQL tiene comandos para:

  • Recuperar datos de una base de datos.
  • Crear y modificar la estructura de bases de datos, tablas e índices.
  • Insertar, actualizar y eliminar datos.
  • Conceder y revocar permisos para controlar quién puede acceder a qué datos.
  • Actualizar las estadísticas utilizadas por el RDBMS para decidir la mejor manera de encontrar los datos.

La mayoría de los sistemas RDBMS mantienen mucha información sobre el uso de la base de datos en sus propias tablas de sistema. Se puede acceder a ellas mediante SQL para supervisar y ajustar el rendimiento de la base de datos. Estas tareas constituyen la mayor parte del trabajo de los administradores de bases de datos, por lo que SQL es la herramienta que más utilizan. Este artículo ofrece más información sobre las consultas SQL.

¿Qué hace un administrador de bases de datos?

El administrador de bases de datos es la persona que asume la responsabilidad de los datos almacenados por una organización. Se trata de un puesto de gran responsabilidad porque disponer de datos precisos y de fácil acceso es esencial para el éxito de cualquier empresa. La información es necesaria tanto para las operaciones cotidianas como para que los responsables de marketing y de la toma de decisiones planifiquen sus estrategias.

Veamos algunas de las tareas que componen el trabajo de un administrador de bases de datos.

Crear y ajustar la estructura de la base de datos

Las bases de datos relacionales constan de tablas que contienen columnas y filas. Estas tablas están indexadas para un acceso rápido y se relacionan entre sí mediante claves. Una base de datos también tiene reglas para garantizar la integridad de los datos: por ejemplo, puede establecer una regla para que el número de cuenta introducido en una venta exista en la tabla customer tabla.

El administrador de la base de datos utiliza SQL para crear estas estructuras y ajustarlas en función de las necesidades cambiantes de la organización. En organizaciones pequeñas y medianas, el administrador de la base de datos trabajará con analistas de negocio y desarrolladores para diseñar la base de datos. En organizaciones muy grandes, esta tarea la lleva a cabo un arquitecto de bases de datos, que muy probablemente tenga experiencia previa como administrador de bases de datos.

Asignación de acceso a los usuarios

Al principio, sólo el personal informático tenía acceso a las bases de datos. Esto ya no es así. La tendencia a la democratización de los datos, es decir, a ponerlos directamente a disposición de los responsables de la toma de decisiones, implica que un gran número de personas necesitan acceder a ellos. Para mantener la confidencialidad y la integridad de los datos, es importante que sólo los usuarios adecuados tengan el tipo adecuado de acceso a la información.

sql para administrador de bases de datos

El administrador controla quién puede acceder a qué parte de la base de datos y si está autorizado a realizar cambios en ella. En una organización pequeña, el administrador de la base de datos puede ser quien diseñe las políticas de seguridad, pero en una organización grande, un experto en seguridad de bases de datos asumirá esta responsabilidad.

Copias de seguridad, recuperación y archivo

El administrador de la base de datos debe diseñar e implementar procedimientos adecuados de copia de seguridad y recuperación para asegurarse de que los datos

  • No puedan perderse accidentalmente.
  • Se puedan recuperar en caso de daños malintencionados.

En el caso de aplicaciones críticas, se puede implementar la duplicación de datos; si falla un servidor, otro toma el relevo automáticamente. También es importante contar con procesos de archivado bien diseñados, de modo que los datos antiguos se trasladen a algún lugar donde 1) se pueda acceder a ellos cuando se necesiten, pero 2) no saturen la base de datos y afecten a su rendimiento.

Garantizar el rendimiento del hardware y el software

Los administradores de bases de datos suelen ser los responsables de garantizar que se llevan a cabo las actualizaciones y mejoras del software. También se asegurarán de que el hardware funcione como es debido, añadiendo discos duros, memoria o potencia de procesamiento adicionales si la organización supera su configuración informática original.

Tareas ETL

ETL (extraer, transformar, cargar) es el proceso en el que los datos se mueven y se reutilizan para usos específicos. Un ejemplo es el mantenimiento de un almacén de datos. Es una buena práctica tener una base de datos operativa (que se utiliza en tareas cotidianas como realizar una venta o pagar a un acreedor) junto con un almacén de datos.

El almacén de datos se utiliza para almacenar datos para analizar tendencias y crear informes; también guarda datos históricos. Cada base de datos está optimizada para su propio tipo de tarea, por lo que cuando los datos se trasladan al almacén, pueden resumirse o eliminarse toda la información que no sea históricamente significativa.

Automatización de procesos

Muchas tareas de las bases de datos (como las copias de seguridad, el ETL, el archivado y la creación de informes periódicos) son repetitivas y deben automatizarse. Un administrador de bases de datos configura estos procesos y programa tareas para que se ejecuten cuando sea necesario.

Supervisión y ajuste del rendimiento

A medida que una organización crece, también aumenta el volumen de datos almacenados y el número de usuarios que necesitan acceder a ellos. Esto da lugar a problemas de rendimiento, en los que el acceso a la base de datos se vuelve lento. El administrador de la base de datos debe supervisar continuamente el rendimiento, identificar los cuellos de botella y encontrar formas de corregir los problemas a medida que surgen.

SQL para administradores de bases de datos

SQL es una herramienta versátil que puede utilizarse para llevar a cabo la mayoría de las tareas del administrador de bases de datos, aunque muchos sistemas RDBMS también disponen de una interfaz basada en menús. Incluso cuando se dispone de un menú, los administradores suelen utilizar SQL en su lugar. Ofrece más control y, además, es fácil automatizar tareas repetitivas con scripts SQL y procedimientos almacenados.

Veamos algunas de las formas en que un administrador de bases de datos puede utilizar SQL.

1. Creación de la estructura de la base de datos

Aunque esto se puede hacer a menudo utilizando un menú, SQL tiene la ventaja de que las instrucciones se pueden guardar y reutilizar. Podrías crear las mismas estructuras en una base de datos diferente o crear estructuras similares para un propósito diferente. SQL te permite hacer esto haciendo unos pocos cambios necesarios en tu script.

Examinemos una instrucción SQL sencilla. Creará una tabla llamada customer que contiene un ID de cuenta, nombre y saldo para cada cliente:

CREATE TABLE customer
(
account_id		char(10),
name			varchar(50),
balance		decimal(12,2)
);

Observará que he especificado un tipo de datos para cada columna (por ejemplo, char(10) para account_id); esto define qué tipo de datos se almacenarán en esa columna. En este ejemplo, la columna puede contener cualquier carácter y tendrá una longitud de 10 caracteres.

Si quisiera que la tabla estuviera indexada en account_id, podría utilizar esta instrucción SQL:

CREATE INDEX account_index ON customer(account_id);

SQL puede realizar muchas más tareas administrativas en este ámbito, como:

  • Modificar tablas existentes.
  • Establecer restricciones para mantener la integridad de los datos.
  • Crear vistas para que los usuarios sólo puedan ver los datos relevantes para su función.

Si quieres profundizar realmente en este tema, LearnSQL.es tiene varios cursos que te enseñan a crear y mantener estructuras de bases de datos:

2. Gestión del Acceso de Usuarios

Controlar qué usuarios tienen acceso a qué datos es una parte importante del trabajo del administrador. SQL permite especificar que un usuario puede acceder a una tabla concreta de una manera determinada:

GRANT SELECT ON TABLE customer TO Fred;
GRANT UPDATE ON TABLE customer TO Charlie;

Estos comandos permiten a Charlie actualizar clientes, pero Fred sólo puede extraer información de ellos.

sql para administrador de bases de datos

Si Charlie abandona la empresa, puede eliminar sus permisos de acceso:

REVOKE UPDATE ON TABLE customer FROM Charlie;

3. Operaciones ETL

SQL es la forma más sencilla de realizar operaciones ETL. Supongamos que dispone de una base de datos operativa que contiene los detalles de cada venta. También desea una tabla en el almacén de datos que contenga agregados por año, mes, tipo de producto, tipo de cliente y ubicación que puedan utilizar los analistas de datos para analizar rápidamente las tendencias de varios años.

Puede que la base de datos operativa sólo contenga las ventas de este año, pero usted quiere que los datos analíticos se remonten hasta el inicio de la actividad de la empresa.

Cada mes, podría ejecutar una sentencia SQL como la siguiente para extraer, transformar y cargar los datos en el almacén de datos:

INSERT INTO warehouse.sales_history
SELECT
year(sale_date),
month(sale_date),
product_type,
customer_type,
location,
sum(items) AS num_sales,
sum(sales_value) AS total_value
FROM last_month_sales
GROUP BY year(sale_date), month(sale_date), product_type, customer_type, location;

4. Supervisión y ajuste del rendimiento

La mayoría de los sistemas RDBMS mantienen tablas de sistema. El administrador puede utilizar SQL para consultar estas tablas y obtener información útil. Por ejemplo, pueden responder a las preguntas

  • ¿Qué está causando cuellos de botella en el rendimiento?
  • ¿Algún usuario se comporta de forma sospechosa?
  • ¿Tenemos suficiente espacio en disco?

Un ejemplo de comando SQL que se puede utilizar para supervisar los discos en SQL Server es:

SELECT * FROM sysalerts WHERE name = 'Disk Warning';

Los administradores también pueden utilizar el comando SQL UPDATE STATISTICS para asegurarse de que el motor de base de datos utiliza estadísticas optimizadas a la hora de decidir cómo realizar una consulta.

5. Automatización de tareas

SQL tiene dos facilidades que pueden ser usadas para automatizar tareas:

  • Procedimientos almacenados: Son listas almacenadas de comandos SQL que pueden reutilizarse siempre que sea necesario.
  • Disparadores: Son secuencias de comandos SQL que se ejecutan automáticamente cuando se produce un evento determinado. Podrían utilizarse para alertar a los gestores de cuentas de un banco cuando se produzca un reintegro inusualmente elevado.

SQL frente a NoSQL

Me han preguntado si los administradores de bases de datos seguirán necesitando SQL en el futuro, ya que muchas aplicaciones utilizan bases de datos NoSQL. Mi respuesta es que sí.

En primer lugar, el término NoSQL induce a confusión, ya que mucha gente piensa que una base de datos NoSQL no utiliza SQL en absoluto. De hecho, el término es la abreviatura de Not Only SQL (no sólo SQL). Las bases de datos NoSQL pueden (y a menudo lo hacen) permitirte acceder a ellas utilizando SQL, pero no se limitan a SQL.

En segundo lugar, las grandes organizaciones no dependen de una única base de datos para todo. Pueden utilizar una base de datos NoSQL para acceder rápidamente a una gama limitada de datos, como los detalles de los productos que se mostrarán en una página web. Al mismo tiempo, suelen utilizar una base de datos SQL para su almacén de datos y otra para su información contable y de gestión. Esto se debe a que SQL es flexible y rápido para usos analíticos. Además, se integra con muchas herramientas de análisis y visualización de datos, como Tableau y Power BI.

Incluso si su organización utiliza exclusivamente una base de datos NoSQL, todavía vale la pena aprender SQL porque:

  • SQL es, con diferencia, el lenguaje de gestión de bases de datos más fácil de aprender. Todas las bases de datos tienen muchos conceptos en común; al aprender SQL, puede obtener rápidamente una buena comprensión de las tareas de gestión de bases de datos. Esto te ayudará cuando aprendas a gestionar bases de datos NoSQL.
  • Es muy probable que, a medida que tu organización crezca, haga uso tanto de bases de datos SQL como de bases de datos NoSQL.
  • Si cambias de empleador, tendrás habilidades muy demandadas que podrás utilizar en tu futura carrera. SQL es compatible con casi todas las bases de datos importantes, por lo que no estarás limitado en tus búsquedas de empleo.

Aunque algunas bases de datos utilizan otros lenguajes para realizar tareas relacionadas con las bases de datos, éstos suelen ser complejos y difíciles de aprender. Comparemos una consulta sencilla en SQL con la misma consulta en MongoDB. Supongamos que queremos una lista de clientes de Nueva York que gastaron más de 10.000 dólares el mes pasado.

En MongoDB, el comando tiene este aspecto:

db.customer.find({city: "New York", {last_month_purchases: {$gt: 10000}}})	

En SQL, el comando sería:

SELECT * from customer WHERE city = 'New York" and last_month_purchases > 10000;

SQL también tiene la ventaja del amplio soporte de la comunidad. Si no sabes cómo hacer algo, es muy probable que haya ejemplos en varios foros y grupos de soporte para ayudarte.

Así que, aunque NoSQL tiene su lugar, es esencial que un administrador de bases de datos tenga excelentes conocimientos de SQL.

Aunque el lenguaje SQL existe desde hace casi 50 años, sigue manteniendo su lugar en un mundo cambiante. Al igual que la rueda, es un gran invento que difícilmente quedará obsoleto. Es fácil de usar y cumple su función. Eso no quiere decir que SQL no evolucione con los tiempos: sin duda lo hace.

  • De vez en cuando se añaden nuevas funciones en función de las necesidades.
  • Cada vez más herramientas de análisis y gestión de datos se integran con SQL.
  • Los proveedores de almacenamiento en la nube, como Google, incluyen la posibilidad de utilizar SQL para gestionar y extraer los datos.

Puedes leer más sobre el futuro de SQL en otra sección de nuestro blog. Por ahora, volvamos a la carrera de administrador de bases de datos. ¿Puedes ganarte bien la vida como administrador de bases de datos?

Salidas profesionales de administrador de bases de datos

Este es un trabajo que no va a ser sustituido por la Inteligencia Artificial. Dado que la IA requiere grandes cantidades de datos para tomar decisiones, sólo puede aumentar la demanda de administradores que gestionen esos datos.

La Oficina de Estadísticas Laborales de EE.UU. (BLS) prevé una tasa de crecimiento superior a la media del 8% para los administradores de bases de datos.

La misma organización publica estadísticas sobre lo que ganaban los administradores de bases de datos en 2022. Según su sitio web, el salario anual promedio es de aproximadamente $ 102,000 USD, con un mínimo de alrededor de $ 50,000 y un máximo de $ 150,000.

Oportunidades de desarrollo profesional

La experiencia como administrador de bases de datos es imprescindible para progresar en tu carrera en áreas como:

  • Arquitecto de bases de datos. Este trabajo implica la planificación y aplicación de políticas de almacenamiento y gestión de datos para grandes organizaciones. Según el BLS, el rango salarial para este trabajo es de 75.000 a 197.000 USD.
  • Analista de seguridad de la información. Este puesto implica la planificación y aplicación de políticas de seguridad de los datos empresariales. Según la BLS, la horquilla salarial oscila entre 66.000 y 175.000 dólares.

Para más información, lee este artículo sobre empleos relacionados con las bases de datos y este otro sobre el futuro de los empleos en ingeniería de datos.

sql para administrador de bases de datos

Mantén al día tus conocimientos de administrador de bases de datos

Dado que la tecnología de la información es un campo que cambia tan rápidamente, los administradores de bases de datos necesitan mantenerse al día de las tendencias, innovaciones y habilidades actuales.

Aquí tienes algunas sugerencias para asegurarte de que nunca te quedas atrás en tu carrera.

  • Esté atento a cualquier noticia relacionada con SQL que publique ANSI.
  • El blog de ANSI publica regularmente artículos informativos sobre temas relacionados con SQL.
  • Lee libros y artículos relacionados con las bases de datos. Aquí tienes algunas buenas recomendaciones de libros.
  • Si se toma realmente en serio su carrera, puede adquirir el paquete Todo, para siempre de LearnSQL.es. Esto no sólo le dará acceso de por vida a todos nuestros cursos existentes, sino también a cualquier curso relacionado con SQL que podamos desarrollar en el futuro. Dado que siempre estamos actualizando nuestros cursos y añadiendo otros nuevos para mantenernos al día con la última tecnología, podrás aprender nuevas habilidades a medida que SQL y las bases de datos relacionales evolucionan.

Da el primer paso para convertirte en administrador de bases de datos

Ser administrador de bases de datos es una gran carrera. Ofrece muchas oportunidades y contribuirás al creciente campo de las tecnologías de la información.

Si crees que puedes estar interesado en la administración de bases de datos, es una buena idea empezar por adquirir algunas habilidades en SQL. Estas habilidades no sólo te ayudarán en tu carrera, sino que también descubrirás más sobre lo que implica la administración de bases de datos y si te gusta trabajar con bases de datos.

Aquí tienes algunas sugerencias de cursos:

  • SQL para principiantes Curso. Este curso es para principiantes y te enseña sobre bases de datos y cómo extraer información de ellas.
  • Creación de estructuras de bases de datos. Este tema de aprendizaje le enseña importantes habilidades de administración, incluyendo cómo crear y modificar bases de datos, tablas, índices y restricciones.
  • SQL de la A a la Z. Este tema de aprendizaje te lleva desde el principiante hasta el experto en SQL.

Manténgase a la vanguardia y empiece a aprender SQL hoy mismo.