Mostrando las entradas con la etiqueta SQL Server. Mostrar todas las entradas
Mostrando las entradas con la etiqueta SQL Server. Mostrar todas las entradas

jueves, 1 de junio de 2017

Tip del día: Sabias porque no logras ver otros servidores de SQL Server

El servicio de SQL Browser es el responsable de permitir descubrise a si mismo y permitir a otras instancias o servidores que lo descubran.

Probablemente esta apagado solo debes de encenderlo.



Si no lo siguies viendo probablemente es el firewall que esta bloqueando el puerto y protocolo de comunicación

Miremos la información oficial

SQL Server Browser service
UDP port 1434

The SQL Server Browser service listens for incoming connections to a named instance and provides the client the TCP port number that corresponds to that named instance. Normally the SQL Server Browser service is started whenever named instances of the Database Engine are used. The SQL Server Browser service does not have to be started if the client is configured to connect to the specific port of the named instance.



Eso es todo por este artículo.

SQL4Fun!,

Juan Manuel Herrera Ocheita

martes, 20 de diciembre de 2016

Optimizando SQL Server para Granjas de SharePoint

Ya han pasado 16 años de evolución de la plataforma de SharePoint y así como los seres humanos somos entre el 70% y 80% agua así SharePoint es 80% base de datos por lo menos, así que debemos de cuidar de este recurso  tan vital para SharePoint y debemos de empezar configurando SQL Server de forma optima para el funcionamiento de una Granja de SharePoint.



Aspectos Físicos
Desde su concepción debemos de cuidar cosas como:

1) Velocidad de Lectura y Escritura de los discos asignados SQL Server. Hoy en día estamos en un mundo virtual así que muy probablemente se asignen recurson de almacenamiento  de la SAN pero debemos de incliniarnos por tener los discos más veloces posibles para ellos, y no asumir que porque es una SAN ya es seguro que tiene discos veloces, hemos visto que SANs con pesimo rendimiento debido a los discos utilizados para este dispositivo de almacenamiento masivo.  Discos de estado solido sería la mejor apuesta en cuento a rendimiento.

3) Distribución de discos una buena practica es tener entre 5 y 7 Discos distribuídos de la siguiente forma:
         Disco 0 - Sistema Operativo   (2 veces la RAM de espacio libre + 1 Gb para Memoria Virtual)
         Disco 1 - Page File (Memoria Virtual)   (1.5 del total de la RAM)
         Disco 2 - Instalación de SQL Server y otro software como antivirus, firewall, etc) 
         Disco 3 - Bases de datos de Sistema de SQL Server (Master, TempDB, * )
         Disco 4 - Archivos de Datos de base de datos
         Disco 5 - Archivos de Logs de base de datos
         Disco 6 - Para uso temporal (Backups, copia de arhivos y otros usos)

* Para establecer el tamaño máximo de la base de datos tempdb requerido podemos utilizar un factor sencillo como el volumen total de bases de datos esperado por 5%  factor obtenido de experiencia de instalaciones que tenemos sobre SharePoint o algo mucho más complejo  pueden consutlar el siguiente enlace de Microsoft:
https://technet.microsoft.com/es-es/library/ms345368(v=sql.105).aspx  

2)  Virtualizar o físico aunque esto ya no debería ser un tema de discusión todavía hay personas que piensas que lo físico tiene mayor rendimiento que lo virtual y en nuestra experiencia las brechas son muy cerradas y el gran inconveniente de lo físico es su capacidad de crecimiento por lo que recomiendo siempre se vayan por una opción virtual y dejen el mito que Servidor de base de datos físico es una mejor apuesta.


Aspectos de Instalación
Una malisima práctica es Instalar todos las características disponibles de SQL Server para una instalación de SharePoint.  Esto no solo resta recursos inecesariamente sino que amplia la brecha de ataque malisioso o de puntos de falla de SQL Server y es a lo que menos queremos exponernos.

Las características mínimas recomendadas para SharePoint Standard son:

  Database Engine
  Full Text Search
  Connectivity Client Tools
  Management Studio Tools
  Reporting Services for SharePoint (Opcional, para versiones 2010 en adelante)

Para SharePoint Enterprise son:

Database Engine, Full Text Search, Client Connectivity and Management Tools, PowerPivot for SharePoint, SSRS SharePoint Integration, Analysis Services

No deberemos incluir cosas como SQL Server Integration Services, tampoco SDKs, Reporting Services Nativo, y el resto de características no mencionadas arriba, no las instale.

Aspectos de Configuración 
Para el  Motor de base de Datos de SQL Server Para SharePoint las propiedades que debemos de modificar y validar son:

https://technet.microsoft.com/en-us/library/hh292622.aspx

Memoria 

 Memoria del Servidor Máxima: 65% y 75% 
 Memoria del Servidor Mínima : 35% del Valor de la memoria Máxima

Procesadores
   Validar que esten hablitados todos los procesadores y que NO este habilitado Boost SQL Server Priority.  Microsoft no recomienda utilizarla y la eliminará en el futuro.
https://msdn.microsoft.com/en-us/library/ms188709.aspx

his feature will be removed in a future version of Microsoft SQL Server. Do not use this feature in new development work, and modify applications that currently use this feature as soon as possible.

Configuración de base de datos
Default index fill factor 80.  Este valor es optimo para el crecimiento y reducir la fragmentación de los índices

https://msdn.microsoft.com/en-us/library/ms177459.aspx
https://technet.microsoft.com/en-us/library/cc262731(v=office.14).aspx


Opciones
Modelo de Recuperación Simple.   Solo si el negocio le solicita recuperar la ultima transacción de un desastre, no esta en alta disponibilidad su granaja  y tiene una disciplina de Backups Completos e incrementales se recomienda Full.  De lo contrario evitese lidiar con grandes arhivos Logs cambiandolo al modelo Simple y  luego haga un shrink al archivo log de base de datos.

Avanzado
Max Degree of Parallelism = 1.  Esto es para asegurar que un solo proceso de SQL Server sirve para cada solicitud.  https://msdn.microsoft.com/en-us/library/ms189094.aspx


Crecimiento de los archivos
Los archivos de base de datos deberemos colocarlos sin restricción con autocrecimiento pero en vez de un porcentaje asignele un valor en MB que puede ser entre 100 Mb y 2,000 MB dependiendo del volumen de los documentos que se suban a SharePoint o el volumen de transacciones.

Por ultimo un plan de mantenimiento de base de datos siempre es importante para mantener los datos a salvo y disponible eso será el próximo artículo que les escribiré amigos lectores.

Estas prácticas lo ayudaran a tener optimo el servidor de base de datos y funcionando de forma balanceada para garantizar la disponibilidad y buen funcionamiento de SQL Server para SharePoint.

SharePoint4Fun, 

Juan Manuel Herrera







5 razones para No compartir el servidor de base de datos de SharePoint con otras aplicaciones

A veces no es bien comprendido la importancia del Back-End en una granja de SharePoint y sin validar de forma adecuada los requerimientos del negocio, del producto (SharePoint) y del alcance de un proyecto de implementación de la granja de SharePoint.

Para evaluar las 5 razones que debemos ver para no compartir el servidor de SQL SErver son:


1) El Negocio
2) La Versión de SharePoint
3) La Edición de SharePoint
4) La pontencial demanda
5) El Mantenimiento

El Negocio
Define la exigencia de la disponibilidad de SharePoint, el volumen de usuarios activos en SharePoint.  Es decir El negocio puede definir que el horario de disponbilidad de SharePoint debe de ser desde las 6 am hasta las 11 pm.  Esto implica que si hay otras instancias en SQL Server corriendo otras aplicaciones pueda que no coincidan con la misma exigencia de disponibilidad.   También el negocio define la criticidad tanto de SharePoint como de las otras instancias las cuales requieran una mayor exigencia.



La Versión de SharePoint

La versión de SharePoint nos define la versión de SQL Server por ejemplo veamos esta tabla:


SharePoint Version SQL Server Version SharePoint N-1 on SQL Server N+1
SHAREPOINT 2007 SQL Server 2000 with the latest service pack or Microsoft SQL Server 2005 SP1, 2008, 2008 R2 https://technet.microsoft.com/en-us/library/cc262485(v=office.12).aspx
SHAREPOINT 2010 SQL Server is 2008/2008 R2 and N+1 is SQL Server 2012 https://technet.microsoft.com/en-us/library/cc262485(office.14).aspx
SHAREPOINT 2013 SQL Server 2008 R2 Service Pack 1, SQL Server is 2012 and the N+1 is SQL Server 2014. https://technet.microsoft.com/en-us/library/cc262485(v=office.15).aspx
SHAREPOINT 2016 Microsoft SQL Server 2014 Service Pack 1 (SP1), Microsoft SQL Server 2016 RTM, SQL Express is not supported https://technet.microsoft.com/en-us/library/cc262485(v=office.16).aspx

La Edición de SharePoint
La Edición de SharePont es importante ya que para la edición de SharePoint Standard se requierie menos servicios de SQL Server y para la versión Enterprise más y esto puede impactar los servicios configurados en una instalación compartida de SQL Server.

Por ejemplo para la edición Standard de SharePoint  requieres como mínimo SQL Server Standard y las siguientes características del SQL Server  (Aplica para Versiones 2007 en adelante):

       Database Engine
        Full Text Search
        Connectivity Client Tools
        Management Studio Tools
        Reporting Services for SharePoint (Opcional, para versiones 2010 en adelante)



En cambio para la edición SharePoint Enterprise es otra historia dependiendo de versión de SharePoint requeriras diferentes ediciones de SQL Server. A continuación la tabla y sus características mínimas a instalar:

SharePoint Versiones SQL Server Versions & Editions Características Enlaces
SHAREPOINT Server 2007 Enterprise SQL SERVER 2000,2005, 2008, 2008 R2 STANTARD, ENTERPRISE, DATACENTER Database Engine, Full Text Search, Client Connectivity and Management Tools, Analysis Services, SSRS Integration Only https://msdn.microsoft.com/en-us/library/cc645993(v=sql.105).aspx
SharePoint Server 2010 Enterprise SQL SERVER 2008 R2 Enterprise, DataCenter Database Engine, Full Text Search, Client Connectivity and Management Tools, PowerPivot for SharePoint, SSRS SharePoint Integration, Analysis Services https://msdn.microsoft.com/en-us/library/cc645993(v=sql.105).aspx
SharePoint Server 2013 Enterprise SQL Server 2012 y 2014 Business Intelligence, Enterprise Database Engine, Full Text Search, Client Connectivity and Management Tools, PowerPivot for SharePoint, SSRS SharePoint Integration, Analysis Services https://msdn.microsoft.com/en-us/library/cc645993(v=sql.110).aspx#PowerPivot https://msdn.microsoft.com/en-us/library/cc645993(v=sql.120).aspx#PowerPivot 
SharePoint Server 2016 Enterprise SQL Server 2016 Enterprise Database Engine, Full Text Search, Client Connectivity and Management Tools, PowerPivot for SharePoint, SSRS SharePoint Integration, Analysis Services https://msdn.microsoft.com/en-us/library/mt742501.aspx#PPSP

Esto implica que la instancia para SharePoint demandará características del producto que pueda no tenga otra de las aplicaciones que consumen los servicios de SQL Server y esto demanda mas recursos del servidor y mas puntos de falla que puedan no ser deseables para aplicaciones transaccionales por ejemplo.

La potencial demanda
SharePoint es una plataforma multiproposito podemos utilizarlo como un portal de comunicación institucional, como un repositorio de documentos, como un repositorio  de activos digitales o multimeda donde el consumo de recursos sea altos por videos, imágenes, que se subien o visualizan en el portal.  Además podemos interconectar otras aplicaciones para que sean visualizadas a través de SharePoint, edición de documentos en línea, consumo de datos multidimensonales a través del despliegue de reportes o gráficas todo esto puede conllevar a que no sean los recursos suficientes o le este quitando los recursos a otras instancias en SQL Server, dependerá como se haya configurada cada instancia del SQL Server Compartido.

El Mantenimiento
Por último pero no por ello menos importante es el mantenimiento como toda aplicación o plataforma la instancia de SharePoint requiere mantenimiento y si la ventana de mantenimiento es muy reducida debido a las otras instancias que comparte pueda que no sea suficiente cuando hay grandes volumenes de contenido ya en SharePoint los procesos demoran más y no es posible en ese rango de 3 o 4 horas finalizarlos.  Además será muy agotador para las áreas de tecnología responsables realizar estos mantenimientos en horarios nocturnos o de madrugada.

Por lo anterior mi recomendación es que no compartan el SQL Server asignado a SharePoint con otras aplicaciones y menos de misión crítica y si ya la estan compartiendo y SharePoint es un producto demandado presupuesten la migración a un servidor de SQL Server exclusivo para la Granja de SharePoint, vivirán menos estresados y mas confiados en que no estan adicionando stress a la ya compleja y sofisticada configuración de una Granja de SharePoint.

Hasta la próxima,

SharePoint4Fun!,

Juan Manuel Herrera Ocheita