Por qué no debe utilizar SharePoint Online como base de datos

SharePoint es un sistema de gestión de documentos para almacenar archivos, organizar documentos, compartir y editar documentos de colaboración con los demás. Algunos usuarios, que pueden haber utilizado MS Excel o MS Access en el pasado, pueden pensar que está bien utilizar SharePoint como base de datos. Sin embargo, sean cuales sean las ventajas de este enfoque, debe evitar utilizar SharePoint como base de datos.

Antes de entrar en las razones para desaconsejar este tipo de uso, he aquí algunos factores que pueden parecer atractivos para que los usuarios se planteen utilizar SharePoint como base de datos:

  • No necesita privilegios de dba para aprovisionar un nuevo esquema
  • Una interfaz extensible lista para ser utilizada en la gestión de datos
  • No es necesario coordinar las aplicaciones de SharePoint con los datos almacenados en otros lugares.
  • Migración de datos sin necesidad de sincronización

Backup for Microsoft 365 Data

Backup for Microsoft 365 Data

Use the NAKIVO solution to back up Microsoft 365 data in Exchange Online, Teams, OneDrive and SharePoint Online for uninterrupted workflows and zero downtime.

Organización de datos

No existe una organización de datos similar a la de una base de datos en SharePoint y esta es una razón importante para no utilizar SharePoint como base de datos. A primera vista, las listas de SharePoint se parecen a las tablas de las bases de datos, con todas las columnas y los distintos tipos de datos. Sin embargo, los datos se organizan de forma diferente en estas estructuras. ¿Utiliza SharePoint SQL Server? SharePoint utiliza MS SQL Server como sistema de gestión de bases de datos para su funcionamiento, pero SharePoint no está diseñado para realizar las funciones de una base de datos real. ¿Qué es una base de datos de contenidos SharePoint? Una base de datos de contenido es una base de datos para almacenar datos de SharePoint para una o más colecciones de sitios. Se trata de la base de datos ubicada en MS SQL Server utilizada para el funcionamiento de SharePoint.

En comparación con las bases de datos relacionales, SharePoint carece de relaciones entre tablas. Estas son las relaciones de datos que faltan en SharePoint:

Uno a Uno. Un registro de una tabla está relacionado con un registro de otra tabla de una base de datos. Por ejemplo, un departamento sólo puede tener un director, y un director sólo puede dirigir un departamento.

De uno a muchos. Un registro de una tabla está relacionado con varios registros de otra tabla. Por ejemplo, un cliente puede tener muchos pedidos de venta.

De muchos a muchos. Los registros de dos o más tablas están relacionados con muchos registros de otra tabla. Por ejemplo, los clientes pueden comprar varios productos, y los productos pueden ser comprados por varios clientes.

Funciones de la base de datos que faltan

Las funciones de base de datos están ausentes (o prácticamente ausentes) en SharePoint Online y SharePoint local.. Veamos brevemente estas funciones que faltan en SharePoint.

Claves primarias y claves externas

Una base de datos utiliza identificadores únicos, que incluyen claves primarias y claves externas, para identificar un registro y enlazar tablas que tienen relaciones padre-hijo. Una clave primaria identifica de forma exclusiva un registro de la tabla; una tabla sólo puede tener una clave primaria. Una clave primaria consta de una o más columnas y no puede tener valores NULL. Una clave externa es una columna o un conjunto de columnas que hace referencia a una clave primaria de otra tabla y vincula datos entre tablas. No existen relaciones entre las listas de SharePoint, y estas listas no pueden vincularse del mismo modo que las tablas de una base de datos.

Lenguaje SQL

SQL (Structured Query Language) es un lenguaje estándar que permite escribir código para realizar consultas complejas en bases de datos. Si utilizas una base de datos real, puedes guardar las consultas y reutilizarlas. Esta función no existe en SharePoint. SharePoint sólo admite CAML, Odata y consultas de búsqueda. No debe consultar una base de datos de SharePoint (la base de datos MS SQL utilizada por SharePoint para almacenar el contenido de SharePoint) directamente utilizando SQL porque puede causar problemas de estabilidad y violar el EULA (acuerdo de licencia de usuario final).

Procedimientos almacenados

Los procedimientos almacenados forman parte del lenguaje SQL. Un procedimiento almacenado es un grupo de sentencias SQL, es decir, un bloque de código reutilizable que se crea y almacena en la base de datos. La mayoría de los sistemas de gestión de bases de datos (SGBD) admiten procedimientos almacenados. Los procedimientos almacenados ofrecen una lista de ventajas. Puede centralizar la lógica de acceso a los datos en un único lugar con capacidad de optimización. En cuanto a la seguridad, los usuarios no necesitan permisos de lectura/escritura en las tablas subyacentes si se conceden derechos de ejecución a un procedimiento almacenado. No se pueden utilizar procedimientos almacenados cuando se utiliza SharePoint.

Transacciones

Una transacción es una unidad de trabajo que representa cualquier cambio en una base de datos y que puede considerarse como «un todo». Un ejemplo de transacción es cuando usted retira dinero de una cuenta bancaria (origen) y transfiere dinero a otra cuenta bancaria (destino). Estas dos acciones son elementos de una misma transacción. Si la primera acción tiene éxito pero la segunda falla, el dinero se devuelve a la cuenta bancaria de origen para mantener la integridad de la transacción. Se trata de la reversión de la transacción. Del mismo modo, los cambios se revierten en una base de datos cuando falla una transacción, y los datos no se pierden. SharePoint no es compatible con la reversión de transacciones.

Indexación y optimización de consultas

La indexación y la optimización de las consultas se utilizan para mejorar el rendimiento de las bases de datos. Los campos que se utilizan con frecuencia pueden preindexarse, lo que mejora el rendimiento general. Las bases de datos pueden optimizarse para la recuperación de datos utilizando técnicas de optimización como la creación de punteros a los lugares donde se almacenan los datos en la base de datos. Este método es mucho más rápido que buscar en toda la base de datos. La indexación en SharePoint está presente para mejorar la búsqueda de contenido almacenado en SharePoint; sin embargo, las funciones son limitadas en comparación con una base de datos que se puede utilizar directamente. En concreto, SharePoint está limitado a 20 columnas indexadas en una lista.

Elementos de gran tamaño y datos binarios

La mayoría de las bases de datos modernas pueden almacenar datos de gran tamaño y datos binarios (como archivos de vídeo, imágenes, archivos de audio, etc.) directamente en la base de datos. Los datos binarios pueden almacenarse como archivos adjuntos en listas de SharePoint, pero no es recomendable. En términos de funciones, los adjuntos binarios en SharePoint están de tener el mismo rendimiento que los campos binarios en una base de datos relacional. Si almacena demasiados elementos con archivos adjuntos binarios en las listas de SharePoint, el rendimiento puede disminuir considerablemente. SharePoint no crea una nueva tabla de base de datos para cada lista y biblioteca en la base de datos de contenido de SharePoint. Todos los datos que se ven en las listas y bibliotecas de SharePoint se almacenan en una única tabla de la BD de contenido.

SharePoint no puede manejar muchos elementos del mismo modo que una base de datos. Debe limitar el número de elementos de una lista de SharePoint a 2000 (en una lista raíz y en las carpetas contenidas en la lista). Si necesita cargar archivos en SharePoint, cárguelos en una biblioteca de SharePoint y no utilice listas de SharePoint para este fin.

Acceso fuera de SharePoint

Sólo se puede acceder a las listas de SharePoint fuera de SharePoint mediante interfaces de programación o XML. No debe utilizar listas para almacenar datos en un repositorio de SharePoint al que deban acceder aplicaciones externas debido a una integración deficiente. En cambio, las bases de datos relacionales tienen todas las funciones necesarias para integrarse y trabajar con aplicaciones externas.

Conclusión

Hay muchas razones para no utilizar SharePoint como base de datos. SharePoint está pensado para otros fines. El uso de SharePoint como base de datos puede causar desventajas significativas y degradación del rendimiento. No se puede sustituir una base de datos relacional por SharePoint. Las listas no se llaman tablas en SharePoint por una razón. El objetivo principal de SharePoint es almacenar documentos de forma centralizada y editarlos conjuntamente. Utilice la herramienta adecuada para cada una de las necesidades de su empresa.

Utilices lo que utilices, ya sea MS SQL, Oracle o SharePoint, no olvides hacer backup de tus datos. NAKIVO Backup & Replication es una solución universal de protección de datos compatible con backup de Oracle, backup de MS SQL, backup de Office 365 (incluido backup de SharePoint Online) y backup de SharePoint Server.

1 Year of Free Data Protection: NAKIVO Backup & Replication

1 Year of Free Data Protection: NAKIVO Backup & Replication

Deploy in 2 minutes and protect virtual, cloud, physical and SaaS data. Backup, replication, instant recovery options.

Artículos recomendados