sql >> Base de Datos >  >> RDS >> Database

Hojas de cálculo frente a bases de datos:¿es hora de cambiar? Parte 1

Las hojas de cálculo (Excel, Google Sheets o una hoja con cualquier otro nombre) son herramientas realmente geniales y poderosas. Pero entonces, también lo son las bases de datos. ¿Cuándo deberías quedarte con una hoja de cálculo? ¿Cuándo debería pasar a una base de datos?

Puede utilizar hojas de cálculo y bases de datos para fines similares. Dado que ambos organizan los datos y facilitan los informes, a veces puede ser difícil determinar cuál es el mejor para usar. Así que hablemos de los pros y los contras de cada opción.

Al principio...

Si recién está comenzando en el negocio, una hoja de cálculo (o una "hoja") es casi siempre su primera opción. Las empresas emergentes rara vez tienen el presupuesto para respaldar una base de datos personalizada. Y además, su negocio es nuevo; no tendrá idea de si se mantendrá pequeño, se convertirá en una gran corporación o estará en algún punto intermedio.

Otro factor es que la estructura y organización de su negocio probablemente cambiará a medida que crezca. Realmente, construir una base de datos al principio no es una opción común. Aquí es donde suelen aparecer las sábanas.

La razón más importante para usar hojas es que están disponibles. Puede comenzar a usar Microsoft Excel, Google Sheets o cualquier otro programa de hoja de cálculo con solo unos pocos clics. No tienes que planificar una estructura complicada; simplemente puede ingresar sus datos, hacer cálculos e informes, y compartir la información con sus compañeros de trabajo. Las hojas ofrecen muchas capacidades integradas geniales, y pueden ayudar a una pequeña empresa durante bastante tiempo.

Entonces, digamos que tiene todos sus datos en hojas. ¿Por qué debería considerar construir una base de datos? En otras palabras, ¿por qué complicarse la vida si todo está funcionando?

En este punto, te sugiero que te preguntes qué tan bien está funcionando todo. Recuerde, todo funciona bien hasta que deja de funcionar. En el caso de las hojas, cuantos más datos tengas, más problemas te puedes encontrar. ¿Cómo le ayudan las bases de datos a evitar estos problemas? ¿Y cuándo debería considerar cambiar?

Uso de hojas de cálculo para organizar datos

Supongamos que hemos iniciado una empresa que brinda servicios de telecomunicaciones e Internet a los clientes. Necesitamos rastrear qué cliente se suscribe actualmente a qué servicio. Los clientes pueden tener más de un servicio activo a la vez y el servicio puede caducar al final de un período determinado o renovarse automáticamente.

Echemos un vistazo a una solución que usa hojas.

Simplemente hemos hecho una lista de todos los datos que tenemos, es decir, hay una combinación de datos en un solo lugar. Tenemos datos de clientes (columnas A a E), tipos de servicio (columna F) y detalles del servicio (columnas G, H y J).

A primera vista, todo se ve bastante bien. Podemos ver todos los datos sin realizar ninguna acción compleja. Podemos filtrar los datos que necesitamos y crear tablas dinámicas o gráficos para generar informes. Hasta ahora todo bien.

Pero si continuamos usando hojas cuando tengamos más clientes, podemos llegar a un punto en el que todo se vuelva demasiado grande para que las hojas lo manejen. Y esto trae un nuevo conjunto de problemas.

Posibles problemas con las hojas de cálculo

En comparación con las hojas de cálculo, las bases de datos son complicadas. Pero estas “complicaciones” tienen un propósito útil; previenen o al menos minimizan los siguientes problemas:

Calidad de datos

La calidad y la consistencia de los datos es un gran problema para las hojas más grandes. Aunque tenemos la intención de almacenar los datos correctamente, problemas de calidad de los datos son muy comunes. La gente comete errores, o tenemos información inesperada para ingresar. Solo piense en cómo los siguientes escenarios podrían presentar un problema:

  1. Queremos agregar un nuevo cliente sin especificar su tipo de servicio. ¿Deberíamos agregar los detalles del cliente y omitir los detalles del servicio? Si podemos insertar solo clientes que tienen detalles del servicio, eso es una anomalía de inserción .
  2. ¿Qué pasa si agregamos los datos del servicio cuando estén disponibles, después de crear el registro del cliente?
  3. ¿Qué ocurre si un cliente se suscribe a varios servicios? ¿Deberíamos crear un nuevo registro para cada servicio, ya que solo podemos tener un tipo de servicio por registro?
  4. ¿Qué sucede si tenemos varios registros para un cliente y necesitamos actualizar la información de ese cliente? A menos que cambiemos la información en todas las filas relevantes, nuestros datos serán inconsistentes. Podríamos tener dos direcciones diferentes para la misma cuenta; en esa circunstancia, ¿cómo podríamos saber qué datos son correctos?
  5. ¿Qué sucede cuando eliminamos datos? Si borramos toda la fila, perdemos todos los datos de ese cliente. Esta no es una buena idea; es mejor eliminar solo sus datos de servicio y conservar los datos de sus clientes. Pero, ¿cómo podemos hacer eso si todo está almacenado en una fila?
  6. ¿Qué sucede si solo un cliente se suscribe a un servicio y eliminamos ese registro? Si eliminamos el registro de ese cliente, ¿estamos eliminando también todos los registros de ese servicio? (Esto se denomina anomalía de eliminación .) ¿Eso significa que ya no ofrecemos ese servicio? Si todavía lo ofrecemos, hemos perdido todos los parámetros relacionados con ese servicio.

Obviamente, habrá complicaciones en el almacenamiento de datos para cualquier negocio. Todos hemos estado en el lado receptor de los problemas de calidad de los datos, p. recibió facturas por servicios que no solicitamos, le cobraron dos veces por lo mismo o le enviaron un paquete a la dirección incorrecta. Estas cosas suceden y, en un conjunto de datos pequeño, es relativamente fácil solucionarlas. Pero, ¿qué sucede cuando tenemos miles o incluso millones de filas? Pronto estaríamos dedicando casi todo nuestro tiempo a corregir estos problemas.

Problemas de rendimiento

Problemas de rendimiento sucede cuando los conjuntos de datos se vuelven demasiado grandes para que una hoja los maneje de manera eficiente. Experimentará problemas de calidad de datos mucho antes que problemas de rendimiento, pero eso no significa que los problemas de rendimiento no sean importantes. Al contrario; los problemas de rendimiento pueden ser incluso más peligrosos que los problemas de calidad de los datos.

Es común buscar filas específicas, insertar nuevas filas, actualizar o eliminar valores de celda en filas existentes y eliminar filas enteras. Todas estas acciones requieren mucho filtrado, lo que no supone ningún problema en un conjunto de datos pequeño. Pero cuando sus hojas se vuelven realmente grandes, incluso una operación simple puede llevar minutos. Pasar la mitad de su jornada laboral esperando que el filtro haga su trabajo no es una buena elección.

También existe el problema relacionado de la redundancia:almacenar los mismos datos varias veces en el disco (por ejemplo, los datos del cliente se almacenan una y otra vez en varias filas). Esto también tendrá un impacto en el rendimiento.

En un hardware decente, las hojas con miles de filas estarán bien. Pero cuando llega a decenas de miles de filas, los problemas de rendimiento pueden asomar sus horribles cabezas. No hace falta decir que las hojas con cientos de miles o incluso millones de filas tendrán un rendimiento extremadamente bajo.

Por otro lado, las bases de datos están aquí para resolver problemas de rendimiento. Cuando todo está configurado correctamente, trabajar con millones de filas no supondrá ningún desafío.

Gestión de datos e informes históricos

Otro problema importante con las hojas es el seguimiento de los cambios de datos a lo largo del tiempo. Si simplemente elimina datos de las hojas, los perderá. Si decide almacenar una hoja diaria (para capturar todos los cambios y conservar los datos históricos), pronto se encontrará enterrado bajo toneladas de hojas. La creación de informes a partir de una estructura de este tipo requiere mucho tiempo y la calidad de los informes generados a partir de ella sería muy cuestionable.

¿Experimenta este tipo de problemas con sus datos?

En el artículo de hoy, hemos discutido algunas desventajas de usar hojas para organizar muchos datos. ¿Alguna vez has experimentado alguno de esos problemas? ¿Estás listo para llevar tu negocio al siguiente nivel? Si la respuesta es "sí", ¡estás en el lugar correcto! La próxima semana, aprenderemos cómo una base de datos resuelve problemas con el almacenamiento de datos en hojas.