Tablas en Memoria en el SQL Server
Вставка
- Опубліковано 10 вер 2024
- Las tablas en memoria en SQL Server, también conocidas como "In-Memory OLTP" (Online Transaction Processing), son una característica diseñada para mejorar significativamente el rendimiento de las aplicaciones transaccionales. Estas tablas se almacenan en la memoria y están optimizadas para realizar operaciones de inserción, actualización y eliminación de manera extremadamente rápida. Aquí te explico más sobre estas tablas y cómo funcionan:
𝐂𝐚𝐫𝐚𝐜𝐭𝐞𝐫𝐢́𝐬𝐭𝐢𝐜𝐚𝐬 𝐏𝐫𝐢𝐧𝐜𝐢𝐩𝐚𝐥𝐞𝐬 𝐝𝐞 𝐥𝐚𝐬 𝐓𝐚𝐛𝐥𝐚𝐬 𝐞𝐧 𝐌𝐞𝐦𝐨𝐫𝐢𝐚
-Almacenamiento en Memoria: Las tablas en memoria residen completamente en la memoria del servidor, lo que elimina la latencia asociada con el acceso al disco.
Los datos se mantienen en la memoria durante toda la vida útil del servidor, lo que permite operaciones de lectura y escritura muy rápidas.
- Durabilidad: Aunque los datos se almacenan en la memoria, SQL Server asegura la durabilidad mediante el uso de logs de transacciones. Los cambios en las tablas en memoria se registran en el log de transacciones en el disco para garantizar la recuperación en caso de fallos.
Las tablas pueden configurarse como durables (persistentes en caso de reinicio del servidor) o no durables (datos volátiles que se pierden al reiniciar el servidor).
- Optimización para OLTP: Las tablas en memoria están optimizadas para cargas de trabajo de alta concurrencia y transacciones rápidas. Utilizan estructuras de datos y algoritmos diseñados específicamente para minimizar los bloqueos y mejorar la eficiencia del procesamiento.
- Índices en Memoria: Los índices en tablas en memoria también se almacenan en la memoria y están diseñados para ser eficientes en términos de concurrencia y rendimiento.
Los índices son administrados automáticamente y se recrean en el arranque del servidor.
Natively Compiled Stored Procedures:
Los procedimientos almacenados que acceden a tablas en memoria pueden compilarse de manera nativa para mejorar aún más el rendimiento. Estos procedimientos se traducen a código máquina, lo que reduce el tiempo de ejecución y mejora la eficiencia.
𝐁𝐞𝐧𝐞𝐟𝐢𝐜𝐢𝐨𝐬 𝐝𝐞 𝐥𝐚𝐬 𝐓𝐚𝐛𝐥𝐚𝐬 𝐞𝐧 𝐌𝐞𝐦𝐨𝐫𝐢𝐚
-Rendimiento Mejorado: Reducción de la latencia de acceso a datos y aumento de la velocidad de procesamiento de transacciones.
-Alta Concurrencia: Menos bloqueos y esperas debido a la optimización de estructuras de datos y algoritmos de control de concurrencia.
-Escalabilidad: Mejora de la capacidad para manejar grandes volúmenes de transacciones concurrentes sin una degradación significativa del rendimiento.
agradecido....
Buenas tardes profe, podría por favor compartir la BD
Buenos días profesor quiero iniciar SQL con un curso de usted en udemy tendrá algún cupón de descuento 🙏
www.udemy.com/course/consulta-de-datos-con-sql/?couponCode=APRIL2023
bbuenas tardes profesor quisiera saber si hara tmb javascfript y java php
Hola don Victor, estoy tratando de enviarle un correo con un escenario a ver si me puede ayudar, pero la cuenta de correo en la informacion de este canal me rebota el correo, como puedo contactarlo ?
Gracias por el interes, tengo varios proyectos por lo que estoy limitado de tiempo y no me puedo comprometer, pero has tu pregunta por esta vía o en el grupo de facebook facebook.com/groups/SQLSERVERLATAM
Buen dia estimado
Que pasa si se daña la memoria.!
Se pierde los Datos?
o solo cambio la memoria y contienuo trabajando ?
gracias estiando
Al construir la tabla se puede definir si solo se guarda el esquema y al ocurrir un reinicio se tiene que volver a cargar la data, o se guarda el esquema y la data, entonces al reinicar el sistema el volvería a cargar la estructura y los datos a la memoria.
@@visoalgt Es decir los datos se guardar en el disco duro y al iniciar se copia a la memoria
por ende a si se dañe la memoria no se pierde los datos
gracias
Buen día maestro
Y el Script para practicar por favor?