Upload
solidq
View
176
Download
0
Embed Size (px)
DESCRIPTION
http://summit.solidq.com/ La publicación de datos públicos a disposición de la ciudadanía es un ejercicio de transparencia en la gestión de las administraciones públicas. En esta línea, son muchas las iniciativas que administraciones regionales y locales están realizando utilizando diferentes formatos que van desde HTML, PDF, archivos CSV o incluso XML. En esta sesión se proporcionará un sencillo ejemplo de cómo podemos implementar un servicio de datos públicos basado en Windows Azure con SQL Azure y una aplicación Web para exponer estos datos utilizando el estándar OData que pueden usar diferentes plataformas y tecnologías mejorando el rendimiento de dichos datos y facilitando la tarea de construir nuevas aplicaciones que cruzan información de diferentes fuentes para descubrir nuevos datos o proporcionar datos a otras aplicaciones
Citation preview
Desplegando un servicio de datos públicos en la nube (OGDI/DataLab)
Miguel López González
WAZ30005
DPA, Director Cloud Services & Windows Azure MCP, MCDP (Web Development), MCP Windows Azure Development
Agenda
1. Pasado, presente y futuro de los datos en la Web
2. Una propuesta de bajo coste: OGDI/Data Lab (Azure)
3. Descarga y repaso de los proyectos. Registro Dlls
4. Configuración: Cadenas de conexión y Cuentas Storage
5. Carga de Datasets: Preparación y DataLoader
6. Preparación del despliegue a la nube
7. Despliegue en Windows Azure (2 instancias XS)
8. Visualización de datos KML y OData
9. Clientes del servicio de datos: Ejemplo móvil
10.Conclusiones y puntos a tener en cuenta
1. Pasado, presente y futuro de los datos en la Web
HTML, elemento <table> (en el mejor de los casos)
Datos parcial/totalmente estructurados: Documentos de texto y Portable Data Format (PDF)
Documentos de hoja de cálculo (tipo MS Excel)
DEMO 1. Pasado, presente y futuro de los datos en la Web
2. Una propuesta de bajo coste: OGDI/Data Lab
Las propuestas más seguidas actualmetne (formato) OData (Datafeeds o Atom y XML)
Linked Data (Tim Berners Lee)
RDF
OGDI = Open Government Data Initiative Rebautizado a OGDI/Data Lab (Github)
Arquitectura de componentes de OGDI/DataLab
W 2
XS
2
Data Browser UI
Data Service
PC
Web Browser
MB
W. Phone 7
ST
T
CSV/KML Data
B
Datos binarios
Q
Cola Conversión
PC
DataLoader (WPF)
ST
T
Diagnostics
B
Diagnostics
K 2
XS
2
Conversion CSV / SMTP
Q
Cola SMTP
DEMO 2. Una propuesta de bajo coste OGDI/Data Lab
Instalación mínima sin garantía SLA
Instalación mínima con SLA Azure
Carga media con SLA Azure y descuento 6MP
3. Descarga y repaso de la solución
https://github.com/openlab/datalab
Descargar ZIP o bien conectar con github y clonar.
28 proyectos .NET. Los principales elementos son: DataBrowser: MVC 3.0 para visualización de datos (portal de datos)
DataService: MVC servicio Web HTTP dentro de DataBrowser
ConfigTool: ASP.NET para configurar contenedores (agencias)
DataLoader: Aplicación Windows WPF para carga de datos KML y CSV
DEMO 3. Descarga y repaso de la solución. Registro de .dlls
4. Configuración: Cadenas de conexión y Storage
En Windows Azure no hay estado (persistencia) en las máquinas virtuales (PaaS) > para eso usamos Azure Storage.
Necesidades de almacenamiento: DiagnosticsConnectionString -> Datos de depuración y salud
DataConnectionString -> Datos de aplicación, datasets, csvs, kml…
Si se quiere dar servicio a diferentes agencias u organizaciones se puede usar una Storage Account por agencia.
La configuración de la aplicación se guarda en una cuenta de almacenamiento Azure Storage, que está protegida por una Storage Account Key
DEMO 4. Configuración: Cadenas de conexión y Storage
5. Carga de Datasets: Preparación y DataLoader
Antes de proceder a la carga, debemos activar los metadatos básicos y los extremos de publicación de datos de las agencias o departamentos.
Utilizaremos la aplicación ConfigTool para definir los EndPoints sólo lo haremos con uno (para la demo).
Existen particularidades en los archivos CSV, por lo que será necesario tratamiento previo (UTF-8).
Después usaremos la aplicación DataLoader para cargar los datos públicos (.csv o .kml) a través de los extremos configurados
El DataLoader admite configuración para diferentes agencias o departamentos
DEMO 5. Carga de Datasets: Preparación y DataLoader
6. Preparación del despliegue a la nube
Disponer de los certificados y la información necesaria para empaquetar y desplegar la solución (WebBrowser que incluye DataService) en la nube.
Desde el proyecto de Cloud DataBrowser.WebRole > Botón derecho, Propiedades
DataBrowser.WorkerRole > Botón derecho, Propiedades
Configuraremos 1 sola instancia por Role de tamaño XS
En tab Settings > Seleccionar configuración Cloud Comprobar los valores de configuración que hemos cambiado
En tab Endpoints veremos los dos servicios que correrán bajo el mismo role: DataBrowser (80) y DataService(8080)
DEMO 6. Preparación del despliegue a la nube
7. Despliegue en Windows Azure (2 instancias XS)
Publicar el proyecto de Cloud desde VS*
Se puede realizar el paquete de cloud también con VS o con la utilidad cspackage del SDK de Azure
Con paquete y archivo de configuración se puede desplegar utilizando PowerShell (Azure Cmdlets)
DEMO 7. Despliegue en Windows Azure (2 instancias XS)
8. Visualización de datos KML y OData
Parte pública de portal, con información del proyecto o de la organización que publica los datos. Básicamente es una aplicación MVC 3.0 ampliable
Parte de catálogo de datos, social, con votación y “Me gusta” sobre los data sets que están publicados
Acceso a la lista de datasets por agencia o categoría
Una vez seleccionado el dataset, diferentes vistas: Vista de tabla de datos (muy parecido a Excel)
Vista de Mapa (Sólo si se ha definido coordenadas al importar)
Vista de gráficos (barras, quesitos…)
El proyecto se completa con información de metadatos y de cómo acceder a los datos desde otros clientes (OData)
DEMO 8. Visualización de datos KML y OData
9. Clientes del servicio de datos: Ejemplo móvil
Ejemplo de aplicación WP7 que consume el servicio de datos Odata de OGDI/Datalab que acabamos de configurar.
La aplicación se limita a lnstanciar el servicio de datos Odata (DataService) y solicitar los datos de uno o varios de los datasets publicados (completos o con consultas parciales usando LinQ).
DEMO 9. Clientes del servicio de datos: Ejemplo móvil WP7
10. Conclusiones y puntos a tener en cuenta
Los datos de carácter público, mejor en un formato abierto y de fácil automatización
Posibilidades de modelos de negocio basados en datos: Azure Marketplace DataMarket de Microsoft
Cámaras de comercio ya publican información comercial sobre sus empresas y tiendas para marketing, campañas etc.
Cuanto más flexible sea el acceso a los datos, más posibilidades de convertirnos en referencia de datos de calidad para uno o más datasets
OGDI es un buen punto de partida que se puede adaptar fácilmente a las necesidades de las empresas tanto públicas como privadas.
Si quieres disfrutar de las mejores sesiones de
nuestros mentores de España y Latino América,
ésta es tu oportunidad.
http://summit.solidq.com/madrid/
Síguenos: