sql >> Base de Datos >  >> RDS >> Oracle

¿Cómo diseño una tabla que almacenará datos muy grandes?

Ese tamaño lo coloca en el territorio VLDB (bases de datos muy grandes). Las cosas son fundamentalmente diferentes a esa altitud.

Su pregunta no puede ser respondida sin todos los requisitos de las responsabilidades de su aplicación. Debe diseñar para el rendimiento con respecto a lo que su aplicación debe HACER con los datos

Mi consejo es que contrate a alguien que tenga experiencia previa, o está casi 100% seguro de fallar.

Si elige Oracle, proporciona varios tipos de particiones que querrá usar con mucho cuidado. Necesita particiones para fines administrativos (mover datos, crear índices, recuperar datos), así como para el rendimiento de las consultas:

  • División de rango, por ejemplo, por un rango de fechas
  • División de listas, para almacenar porciones de datos, digamos por país ('SE', 'US', 'GB')
  • División hash. Almacena sus datos en una de las particiones en función de una función hash
  • O cualquier combinación de los anteriores

Además, necesita a alguien que sepa cómo construir y configurar una máquina monstruosa con un rendimiento de E/S realmente asombroso. Necesitas más de 1 GB/s, que no es muy barato cuando también necesitas almacenar 200 TB. En realidad, si esos 200 TB son solo datos de tablas, deberá duplicarlos o triplicarlos para poder crear índices, tablas agregadas, copias de seguridad, etc.

Lo siento, no pude brindarle una solución lista para usar, pero quería asegurarme de que comprenda que no solo está creando una base de datos de tamaño superior al promedio. ¡Es enorme!