¿Qué es SQL Server? Introducción, Historia, Tipos, Versiones

¿Qué es SQL Server?

SQL Server es un sistema de gestión de bases de datos relacionales (RDBMS) desarrollado por MicrosoftEstá diseñado y desarrollado principalmente para competir con MySQL y Oracle base de datos. SQL Server admite ANSI SQL, que es el lenguaje SQL (lenguaje de consulta estructurado) estándar. Sin embargo, SQL Server viene con su propia implementación del lenguaje SQL, T-SQL (Transact-SQL).

T-SQL es un Microsoft Lenguaje propio conocido como Transact-SQL. Proporciona capacidades adicionales para declarar variables, manejo de excepciones, procedimientos almacenados, etc.

SQL Server Management Studio (SSMS) es la herramienta de interfaz principal para SQL Server y admite entornos de 32 y 64 bits.

Historial de versiones de SQL Server

  • Microsoft y Sybase lanzó la versión 1.0 en 1989.
  • Sin embargo, la asociación entre estos dos terminó a principios de los años 1990.
  • Microsoft mantuvo los derechos de propiedad sobre el nombre SQL Server.
  • Desde la década de 1990, se han lanzado versiones posteriores de SQL Server, incluidas SQL Server 2000, 2005, 2008, 2012, 2014, 2016, 2017 y 2019.

Ediciones de SQL Server

A continuación se muestran las ediciones/tipos populares de SQL Server:

Empresa de servidor SQL: Se utiliza en negocios de alta gama, de gran escala y de misión crítica. Proporciona seguridad de alto nivel, análisis avanzado, aprendizaje automático, etc.

Estándar de servidor SQL: Es adecuado para aplicaciones de nivel medio y Data marts. Incluye informes y análisis básicos.

WEB del servidor SQL: Está diseñado como una opción de bajo costo total de propiedad para proveedores de alojamiento web. Proporciona capacidades de escalabilidad, asequibilidad y capacidad de administración para propiedades web de pequeña y gran escala.

Desarrollador de SQL Server: Es similar a una edición empresarial para entornos no productivos. Se utiliza principalmente para compilación, prueba y demostración.

Servidor SQL Express: Es para aplicaciones a pequeña escala y de uso gratuito.

MS SQL Server como Cliente-Servidor Architectura

Echemos un vistazo a la siguiente conversación matutina entre mamá y su hijo, Tom.

MS SQL Server como Cliente-Servidor Architectura

Idea genial

Idea genial:

¡¡¡Pregúntale a tu cerebro….!!! “¿Puedes mapear quién es el CLIENTE y quién es el SERVIDOR?”

La respuesta más segura sería: “Soy bastante inteligente en eso y…. El hijo es CLIENTE ya que está pidiendo una taza de café y la Madre, que es CAPAZ de preparar café, es SERVIDORA”.

Aquí, Tom le pide a su madre una taza de café. Finalmente, mamá procesa un poco la leche, el café, el azúcar y prepara el café para servirlo caliente.

Analogía: Arquitectura de MS SQL SERVER.

UN CLIENTE es una aplicación que envía solicitudes al SERVIDOR MS SQL instalado en una máquina determinada. El SERVIDOR es capaz de procesar los datos de entrada según lo solicitado. Finalmente, responda con DATOS DE SALIDA PROCESADOS como resultado.

Componentes y servicios clave de SQL Server

A continuación se muestran los principales componentes y servicios del servidor SQL:

Motor de base de datos: Este componente maneja el almacenamiento, el procesamiento rápido de transacciones y la protección de datos.

Servidor SQL: Este servicio inicia, detiene, pausa y continúa una instancia de Microsoft SQL Server. El nombre del ejecutable es sqlservr.exe.

Agente SQL Server: Realiza la función de Programador de tareas. Puede activarse por cualquier evento o según la demanda. El nombre del ejecutable es sqlagent.exe.

Navegador de servidor SQL: Esto escucha la solicitud entrante y se conecta a la instancia del servidor SQL deseada. El nombre del ejecutable es sqlbrowser.exe.

Búsqueda de texto completo de SQL Server: Esto permite al usuario ejecutar consultas de texto completo sobre datos de caracteres en tablas SQL. El nombre del ejecutable es fdlauncher.exe.

Escritor VSS de SQL Server: Esto permite realizar copias de seguridad y restaurar archivos de datos cuando el servidor SQL no se está ejecutando. El nombre del ejecutable es sqlwriter.exe.

Servicios de análisis de SQL Server (SSAS): Proporcionar análisis de datos, minería de datos y Aprendizaje automático (Machine learning & LLM) capacidades. El servidor SQL está integrado con R y Python Lenguaje para análisis avanzado. El nombre del ejecutable es msmdsrv.exe.

Servicios de informes de SQL Server (SSRS): Proporciona funciones de generación de informes y capacidades de toma de decisiones. Incluye integración con Hadoop. El nombre del ejecutable es ReportingServicesService.exe.

Servicios de integración de SQL Server (SSIS): Proporcionó capacidades de extracción, transformación y carga de los diferentes tipos de datos de una fuente a otra. Puede verse como convertir información sin procesar en información útil. El nombre del ejecutable es MsDtsSrvr.exe.

Instancias de SQL Server

SQL Server le permite ejecutar múltiples servicios a la vez, y cada servicio tiene inicios de sesión, puertos, bases de datos, etc. separados. Estos se dividen en dos:

  • Instancias primarias
  • Instancias nombradas

Hay dos formas a través de las cuales podemos acceder a la instancia principal. Primero, podemos usar el nombre del servidor. En segundo lugar, podemos utilizar su dirección IP. Se accede a las instancias con nombre agregando una barra invertida y el nombre de la instancia.

Por ejemplo, para conectarse a una instancia denominada xyx en el servidor local, debe utilizar 127.0.0.1\xyz. A partir de SQL Server 2005, se permite ejecutar hasta 50 instancias simultáneamente en un servidor.

Tenga en cuenta que, aunque puede tener varias instancias en el mismo servidor, solo una de ellas debe ser la instancia predeterminada, mientras que el resto deben ser instancias con nombre. Se pueden ejecutar todas las instancias al mismo tiempo y cada instancia se ejecuta independientemente de las demás.

Importancia de las instancias de SQL Server

Las siguientes son las ventajas de las instancias de SQL Server:

1. Para instalación de diferentes versiones en una máquina

Puede tener diferentes versiones de SQL Server en una sola máquina. Cada instalación funciona independientemente de las demás instalaciones.

2. Para reducir costos

Las instancias pueden ayudarnos a reducir los costos operativos de SQL Server, especialmente en la compra de la licencia de SQL Server. Puede obtener diferentes servicios de diferentes instancias, por lo que no es necesario comprar una licencia para todos los servicios.

3. Para el mantenimiento de los entornos de desarrollo, producción y prueba por separado.

Este es el principal beneficio de tener muchas instancias de SQL Server en una sola máquina. Puede utilizar diferentes instancias para fines de desarrollo, producción y prueba.

4. Para reducir los problemas temporales de la base de datos.

Cuando tiene todos los servicios ejecutándose en una única instancia de SQL Server, hay muchas posibilidades de tener problemas, especialmente problemas que se repiten. Cuando dichos servicios se ejecutan en diferentes instancias, puede evitar tener este tipo de problemas.

5. Para separar privilegios de seguridad

Cuando se ejecutan diferentes servicios en diferentes instancias de SQL Server, puede concentrarse en proteger la instancia que ejecuta el servicio más confidencial.

6. Para mantener un servidor en espera

Una instancia de SQL Server puede fallar y provocar una interrupción de los servicios. Esto explica la importancia de tener un servidor en espera para activarlo si el servidor actual falla. Esto se puede lograr fácilmente utilizando instancias de SQL Server.

Resum

  • SQL Server se define como un sistema de gestión de bases de datos relacionales (RDBMS) desarrollado por Microsoft.
  • T-SQL significa Transact-SQL, un lenguaje propietario de Microsoft.
  • Microsoft y Sybase lanzó la versión 1.0 en 1989.
  • Varias ediciones de SQL Server son Enterprise, Standard, Web, Developer y Express.
  • Los componentes críticos de SQL Server son el motor de base de datos, SQL Server, el Agente SQL Server, el navegador SQL Server, la búsqueda de texto completo de SQL Server, etc.
  • Puede ejecutar varias instancias de SQL Server iguales en la misma máquina.