Office.com sobre SharePoint. Ariel Kirsman



Documentos relacionados
ST26_ Advanced Solutions of Microsoft SharePoint Server 2013

COMUNIDAD SHAREPOINT DE COLOMBIA

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

COMUNIDAD SHAREPOINT DE COLOMBIA. SharePoint Day Bogotá Julio 13 de 2013 Branding para SharePoint 2013

10775 Administering Microsoft SQL Server 2012 Databases

SharePoint Day Bogotá Julio 13 de 2013 Hello New World: Novedades en el desarrollo de componentes para SharePoint 2013

Gestión Documental con Microsoft Office SharePoint Server 2007 (MOSS) Ignacio López - Ingeniero en Informática Software Architect en Alhambra-Eidos

Como migrar SharePoint y no morir en el intento

ST28_Developing Microsoft SharePoint Server 2013 Advanced Solutions

Autenticación Centralizada

INFORME TECNICO PREVIO DE EVALUACIÓN DE SOFTWARE N /UIE-PATPAL - FBB

Workflows? Sí, cuántos quiere?

Instalación y configuración de SharePoint (SPS) 2003

Miguel Tabera Pacheco

50064 Advanced SharePoint Development

Administración de Contenidos Dinámicos

Recuperacion de Desastre en SQL Server Mejoras

SQL Diagnostic Manager Nueva versión 6.0

ARC 108 Component Model

PROYECTO. Solución Empresarial Ingeniería y Desarrollo de Software - info@solucionempresarial.com.

Guía Rápida de Puesta en Marcha de MailStore

Servidores de ficheros

Componentes de Integración entre Plataformas Información Detallada

Productos y Servicios Portafolio

MOC Administración SharePoint 2013 Core & Advanced

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

BASES DE DATOS TEMA 1

Capítulo VI. Estudio de Caso de Aplicación del Integrador de Información Desarrollado

6 Sistemas de Archivos

Almacén de datos - concepto. Arquitectura de un sistema de almacén de datos

CL_55115 Planning, Deploying and Managing Microsoft Project Server 2013

MS10775AB Administrar bases de datos de Microsoft SQL Server 2012

IMPLEMENTACION DE UN SERVIDOR DE ACTUALIZACIONES MASTER

Instructivo Asesoría Básica Comunidad Virtual SharePoint 2010

MS_10174 Configuring and Managing Microsoft SharePoint 2010

6231 Maintaining a Microsoft SQL Server 2008 R2 Database

INSTALACION Y CONFIGURACION DE SQL SERVER MANAGEMENT (EXPRESS) 2008

Formatos para prácticas de laboratorio

LABORATORIO 10. COPIAS DE SEGURIDAD, RESTAURACIÓN Y RECUPERACIÓN DE UNA BD

Prueba de Concepto, Informes XBRL vs. SGBDR.

Solución GeoSAS. Otros módulos

Transición de su infraestructura de Windows Server 2003 a una solución moderna de Cisco y Microsoft

Diseño e Implementación

Dirigido a Profesionales y técnicos de informática que se inicien en el manejo de la base de datos Oracle 11g

ENSAMBLE DE CREATIVIDAD + TECNOLOGÍA PARA MATERIALIZAR SOLUCIONES

Solución Integral de Logística y Comercio Exterior

Implementing a Data Warehouse with Microsoft SQL Server

Desarrollo Business Intelligence sobre tecnología Microsoft

10776 Developing Microsoft SQL Server 2012 Databases

LOG SHIPPING AND DATABASE MIRROR

Presentación 4: ADO.NET

Soluciones SharePoint Productividad y Colaboración

Core Solutions of Microsoft SharePoint Server 2013 CURSO PRESENCIAL DE 25 HORAS

MS_20465 Designing Database Solutions for Microsoft SQL Server

11/06/2011. Alumno: José Antonio García Andreu Tutor: Jairo Sarrias Guzman

Base de datos relacional

Estrategia de Backup para los Sistemas SAP R/3 GOBERNACIÓN DE CUNDINAMARCA

Comparación entre Active Reports, Crystal Reports, y MS Reporting Services

CERTIFICACION DE INFORMATICA UNIVERSIDAD DE CELAYA

18 y 19 Sistemas de Archivos Distribuidos y Tarea 05

Windows Server 2012: Identidad y Acceso. Módulo 2: Descripción General de Windows Server 2012 Remote Desktop Services.

PERFIL TÉCNICO CONSULTOR SHAREPOINT PARA LA WEB

Add-in Microsoft Office

Sharepoint 2007 desde Cero. Gema Sempere Consultor Netpoint Solutions

Desarrollo de Soluciones Avanzadas con Microsoft SharePoint Server 2013

ing Solution La forma más efectiva de llegar a sus clientes.

Caso de éxito. Descripción de la Solución. Perfil de la entidad. primera institución financiera privada. mercado ecuatoriano.

Open Source Uso de hipergate como Intranet

Informática I Notas del curso

Guía de Laboratorio Base de Datos I.

WDpStats Procedimiento de instalación

Bases de Datos 3º Informática de Sistemas

Guía de licenciamiento de NAV en pago por uso

CASOS DE ÉXITO DIST-PLEX MODUART. PARTNER Team Solutions SAS Es una compañía con más de 10 años de experiencia en la implementación de soluciones de

Migrar una organización Microsoft Exchange 2003 a Microsoft Exchange 2007

Year Como migrar a XenApp 6.5. Javier Sánchez (xavisan) admincitrix@ctxdom.com

Visión General de GXportal. Última actualización: 2009

CREAR LIBRERÍA PERSONALIZABLE EN AUTODESK INVENTOR 11

Proyectos gestionados de principio a fin. Casos de éxito de Microsoft Soluciones de colaboración

Análisis de costos proyectado de la plataforma SAP HANA

DIRECCIÓN ABASTECIMIENTO SOLICITUD PRIVADA DE OFERTAS 00305

Instalación de helppeople Service Management itsm Versión

Experiencia: Portal Estadístico BI (Business Intelligence) SIDER

ADMINISTRACIÓN DE SERVIDORES SQL SERVER

INTRANET: MANUAL DE INSTALACIÓN

Manual de Usuario Avanzado Respaldo Cloud

Introducción a los Sistemas de Gestión de Bases de Datos

VMware vsphere Data Protection

Sistemas Operativos. Curso 2013 Virtualización

Migrando WSS 2.0 a WSS 3.0

Formatos para prácticas de laboratorio

SCGDoc. SisConGes & Estrategia

Apuntes de la Unidad 1 de Base de Datos

Administrador de Seguridad Manual de Usuario Fecha de actualización:

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE

Manual Office 365 para usuario final

SEPARAR Y ADJUNTAR UNA BASE DE DATOS. Separar una base de datos

SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS))

Capítulo 6: Conclusiones

TEORIA DE BASES DE DATOS. M. Sc. Cristina Bender Lic. Diana Gázquez

Transcripción:

Office.com sobre SharePoint Ariel Kirsman

Agenda Qué es Office.com SharePoint como plataforma Lecciones aprendidas Conclusiones Q&A

Qué es Office.com Soporte para usuarios finales de los productos Office (Word, Excel, PowerPoint, etc). Web Site + Web Services

Qué es Office.com En números 500 autores de contenido... Que administran 6 millones de páginas... Que visitan 120 millones de usuarios distintos... Que generan >3000 RPS (requests por segundo)... Servidos por 48 farms de 4:1 al 60% de CPU Distribuidas en 2 data centers (por geo-redundancy) 37 developers, 24 testers, 11 PM s

Qué es Office.com Vista Conceptual Content Management System («Authoring») - donde los autores crean, administran y localizan el contenido, Office.com («Rendering») al cual los usuarios y las aplicaciones de Office se conectan, Bulk Operations Framework que permite procesar múltiples objetos de manera unificada, Unified Warehouse - repositorio de sólo-lectura de todo tipo de metadata (de contenido, social, estadísticas de uso, etc) sobre el cual se ejecutan consultas, workflows y análisis.

Qué es Office.com Vista de Componentes...

Qué es Office.com Vista de Datos Authoring Migración Legacy Migración Rendering Propagación de Contenido

Qué es Office.com Publishing

SharePoint como plataforma Razones de la elección Llevar a SharePoint a una escala de Internet. «Dogfooding»: si no es bueno para Microsoft, no es bueno para los clientes. Implementar a un nivel mayor de abstracción Deployment Workflows Queries Search Pero, hacerlo con la versión 14 en desarrollo? Desventaja: «moving target» Ventajas Colaboración del equipo de SharePoint. Círculo virtuoso.

Almacenamiento: Separación Authoring vs. Rendering En teoría, esta es la proposición de valor de SharePoint: integrar authoring y rendering de manera natural. Pero no funciona para altos volúmenes de Contenido Creadores de contenido Visitantes al sitio Porqué? Writes vs. Reads Secure vs. Anonymous Transacciones largas (check-in/out) vs. cortas Solución: webapps y site collections separadas, y en Rendering Denormalización No versioning Caching

Almacenamiento: Site collection por lenguaje (Authoring) Todos los lenguajes ocupan aprox. 2TB. Administrar la DB se vuelve más costoso a mayor tamaño Backups Mantenimiento (rebuild indexes, update statistics) Problema: queries sobre múltiples site collections Importante para el Localization team: «obtener todos los artículos que fueron asignados al vendor X y no fueron traducidos en una semana». Solución: exportar metadata a SQL («Unified Data Warehouse»). Dentro de cada site collection, un root web sin subsites Sub-sites no ofrecen ventajas de administración de datos. Look & Feel es consistente por lenguaje.

Queries de SharePoint Potencia de los Queries performance. expresividad. A futuro, SQL Server s SPARSE columns? Máximo de 2 columnas para compound indexes. Diagnosibilidad de los Queries e.g., bug cuando los CAML OR s anidados superaban los 64 niveles CAML erróneos (e.g., en SPSiteDataQuery) resultan en «default queries» en lugar de lanzarse una excepción.

Modelo de Datos Relaciones (aprox. 3M) Todas las aplicaciones las tienen, y tienen atributos. SharePoint no soporta nativamente este concepto. Sin embargo, pudimos haber resuelto los mismos problemas con tagging y folders... SharePoint no soporta Logueo de cambios a nivel de configuración/sistema. Logueo de items borrados en listas y bibliotecas. Causa: Coupling - «change tracking» está implementado en términos de «version tracking». Gran volumen de binarios en la base de datos afecta Performance Administración Deberíamos haber implementado EBS.

Concurrencia y Locking Cuando el volumen de updates de metadata es grande, pudimos observar problemas de contención Excesivos SQL locks Excesivas escalaciones de SQL locks Lecturas lentas SharePoint está optimizado para «long-running transactions», (e.g., check-in, check-out), stream de un item. No está optimizado para cambios frecuentes en la metadata de los items.

Bulk Operations Muchas operaciones no se pueden hacer «de a muchos (items)», o los límites son artificialmente bajos (e.g., máximo de 100 items a la vez para upload). uploads/downloads múltiples. cambios de metadata. SharePoint no posee «transactional inserts/updates/deletes» (i.e., realizarlos completamente o no realizarlos del todo). Gran problema para migración de datos.

Programming API DB roundtrips Cuándo se va a realizar un DB roundtrip, y cuánto cuestan (e.g., SPList.Items.Count vs. SPList.ItemCount) fetchdocforhttpget() trae metadata del ContentType. RT adicional para fields fuera de él, no 3 RT s/artículo No SP* objects caching Publishing APIs caching es costoso para 1er request. Costo de list schema. Event Receivers La secuencia de eventos debería ser consistente. No asumir nunca que otro event handler hizo su tarea. Asincrónicos: no thread-safe, no cancelables. Reglas complejas de disposing. SharePoint loguea determinado «usage data» per request. Metadata no es customizable (e.g., Asset ID)

Propagación de Contenido Problema: cómo propagar datos de un master DB a múltiples bases para lograr scale-out. SQL Replication Requiere primary keys en todas las tables de la base SharePoint no las tiene Export & Import, Content Migration API (PRIME) API: config DB data, check-out status, encuestas no completadas, etc. Backup & DB Attach: latencia (i.e., tiempo de propagación desde authoring a rendering SQL s). Solución elegida: log-shipping. Requiere poner DB offline. Mayor latencia que SQL Replication. Múltiples chequeos adicionales sobre la solución OOB. Alto costo operacional «baby-sitting»

Propagación de Contenido con Log Shipping Log Shipping Manager (scheduled tasks) Switch B->A, así B se pone al día Master SQL Alias -> A Instance A SQL Instance B.TRN s

Propagación de Contenido con Log Shipping Log Shipping Manager (scheduled tasks) Switch A->B, así A se pone al día Master SQL Alias -> B Instance A SQL Instance B.TRN s

Deployment Se usaron solutions packages y features. Errores cometidos Listas y content types se aprovisionaron («crearon») en base a un formato propio (no CAML) Topología y features a instalar/activar se manejó con código + configuración custom Complejidad => Errores. Problemas en la migración de contenido entre versiones. Alternativas Usar CAML, site templates y restringir código sólo a feature activation/deactivation, minimizando external scripts. Ausencia de varias VS tools para SP al inicio del proyecto

Security Authoring: built-in authentication/authorization Mantener autorización simple es fundamental Limitar granularidad, minimizar «break inheritance» Usar domain groups en lugar de domain users. Problema: acceso de usuarios fuera del dominio. Solución: Live ID on Claims. Finalmente, no en producción (Claims no nos llegó a tiempo) Rendering: acceso anónimo, Live ID para identificar usuarios Necesita ser «Partner site» para acceder al perfil de usuario.

Proceso Curva de aprendizaje de SharePoint 1. Aprender 2. Aprender a hacerlo bien Perf Testing fue clave para el avance del proyecto Regresiones (# de DB RT s) Plan de capacidad Topología de farm.

Conclusiones SharePoint soporta Internet scenarios con grandes volúmenes de datos El modelo de datos es fundamental para la performance (e.g., # de fields por content type). Para grandes volúmenes de datos y transacciones, el modelo de lectura/escritura en una base de datos única no funciona. Desarrollar un framework para operar sobre múltiples datos a la vez fue una decisión muy acertada. Planeamiento de capacidad y perf testing desde el inicio fue muy acertado. Migrar contenido es siempre complicado... no se debe dejar nunca para el final. Invertir en logging (más allá del OOTB) es beneficioso. Este proyecto significó un gran aprendizaje para SharePoint mismo... veamos estas experiencias como oportunidades.

Preguntas, comentarios? Muchas gracias.