SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
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
MLopez@SolidQ.com
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:

Más contenido relacionado

La actualidad más candente (20)

Ado.net
Ado.netAdo.net
Ado.net
 
8. Acceso A Datos Con Microsoft Ado.Net
8.  Acceso A Datos Con Microsoft Ado.Net8.  Acceso A Datos Con Microsoft Ado.Net
8. Acceso A Datos Con Microsoft Ado.Net
 
ADO
ADOADO
ADO
 
ADO.NET
ADO.NETADO.NET
ADO.NET
 
tecnología de conectividad de datos
tecnología de conectividad de datostecnología de conectividad de datos
tecnología de conectividad de datos
 
Sql sever 2008
Sql sever 2008Sql sever 2008
Sql sever 2008
 
Ado.net
Ado.netAdo.net
Ado.net
 
Miccosoft Access
Miccosoft AccessMiccosoft Access
Miccosoft Access
 
Base de datos: sistemas_clienteservidor
Base de datos: sistemas_clienteservidorBase de datos: sistemas_clienteservidor
Base de datos: sistemas_clienteservidor
 
Ado net
Ado netAdo net
Ado net
 
Microsoft access 2007
Microsoft access 2007Microsoft access 2007
Microsoft access 2007
 
Introduccion a mircosoft access
Introduccion a mircosoft accessIntroduccion a mircosoft access
Introduccion a mircosoft access
 
Introducción a Microsoft Access
Introducción a Microsoft AccessIntroducción a Microsoft Access
Introducción a Microsoft Access
 
Access
AccessAccess
Access
 
S3-PD1-2.1 Ado net
S3-PD1-2.1 Ado netS3-PD1-2.1 Ado net
S3-PD1-2.1 Ado net
 
Diapositivas de ado.net
Diapositivas de ado.netDiapositivas de ado.net
Diapositivas de ado.net
 
Proyecto web Php-MySQL-Ajax-Flex
Proyecto web Php-MySQL-Ajax-FlexProyecto web Php-MySQL-Ajax-Flex
Proyecto web Php-MySQL-Ajax-Flex
 
Microsoft office access 2007
Microsoft office access 2007Microsoft office access 2007
Microsoft office access 2007
 
12-Unidad 2: Aplicaciones Windows Forms-2.3 Ado-net
12-Unidad 2: Aplicaciones Windows Forms-2.3 Ado-net12-Unidad 2: Aplicaciones Windows Forms-2.3 Ado-net
12-Unidad 2: Aplicaciones Windows Forms-2.3 Ado-net
 
visual basic .net
visual basic .netvisual basic .net
visual basic .net
 

Similar a Desplegando un servicio de datos públicos en la nube (OGDI/DataLab) | SolidQ Summit 2012

Diapositivas de acceso a datos ado.net
Diapositivas de acceso a datos ado.netDiapositivas de acceso a datos ado.net
Diapositivas de acceso a datos ado.netTAPIA SILVA EVELINA
 
Introducción a la plataforma sql azure
Introducción a la plataforma sql azureIntroducción a la plataforma sql azure
Introducción a la plataforma sql azureJoseph Lopez
 
Cliente servidoryj
Cliente servidoryjCliente servidoryj
Cliente servidoryjyoshimaryj
 
Bases dedatossql serveryc
Bases dedatossql serverycBases dedatossql serveryc
Bases dedatossql serverycveron3144
 
bases de-datos_sql_server_con_c_
bases de-datos_sql_server_con_c_bases de-datos_sql_server_con_c_
bases de-datos_sql_server_con_c_asesino123456789
 
AZURE: Consumiendo Datos y Visualizándolos desde La Nube
AZURE: Consumiendo Datos y Visualizándolos desde La NubeAZURE: Consumiendo Datos y Visualizándolos desde La Nube
AZURE: Consumiendo Datos y Visualizándolos desde La NubeSolidQ
 
Windows azure: Introducción a la Nube y HoL de Azure MICTT
Windows azure: Introducción a la Nube y HoL de Azure MICTTWindows azure: Introducción a la Nube y HoL de Azure MICTT
Windows azure: Introducción a la Nube y HoL de Azure MICTTMICTT Palma
 
Servicios de datos en la nube
Servicios de datos en la nubeServicios de datos en la nube
Servicios de datos en la nubeJuan Pablo
 
12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...
12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...
12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...Luis Fernando Aguas Bucheli
 
Mejores prácticas de Data Warehouse con SQL Server
Mejores prácticas de Data Warehouse con SQL ServerMejores prácticas de Data Warehouse con SQL Server
Mejores prácticas de Data Warehouse con SQL ServerSpanishPASSVC
 
Modo conexion manuel
Modo conexion manuelModo conexion manuel
Modo conexion manuelfanyto
 
12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del ProyectoLuis Fernando Aguas Bucheli
 
Componentes de sql server 2008
Componentes de sql server 2008Componentes de sql server 2008
Componentes de sql server 2008Jillian Motoharu
 
Ejemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con accessEjemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con accessuniv of pamplona
 
Migrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data FactoryMigrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data FactoryRaul Martin Sarachaga Diaz
 
Repoteadores De Mysql2
Repoteadores De Mysql2Repoteadores De Mysql2
Repoteadores De Mysql2alinacarrion
 
Repoteadores De Mysql2
Repoteadores De Mysql2Repoteadores De Mysql2
Repoteadores De Mysql2alinacarrion
 

Similar a Desplegando un servicio de datos públicos en la nube (OGDI/DataLab) | SolidQ Summit 2012 (20)

Diapositivas de acceso a datos ado.net
Diapositivas de acceso a datos ado.netDiapositivas de acceso a datos ado.net
Diapositivas de acceso a datos ado.net
 
bd.net.pptx
bd.net.pptxbd.net.pptx
bd.net.pptx
 
Introducción a la plataforma sql azure
Introducción a la plataforma sql azureIntroducción a la plataforma sql azure
Introducción a la plataforma sql azure
 
Cliente servidoryj
Cliente servidoryjCliente servidoryj
Cliente servidoryj
 
Bases dedatossql serveryc
Bases dedatossql serverycBases dedatossql serveryc
Bases dedatossql serveryc
 
bases de-datos_sql_server_con_c_
bases de-datos_sql_server_con_c_bases de-datos_sql_server_con_c_
bases de-datos_sql_server_con_c_
 
AZURE: Consumiendo Datos y Visualizándolos desde La Nube
AZURE: Consumiendo Datos y Visualizándolos desde La NubeAZURE: Consumiendo Datos y Visualizándolos desde La Nube
AZURE: Consumiendo Datos y Visualizándolos desde La Nube
 
Windows azure: Introducción a la Nube y HoL de Azure MICTT
Windows azure: Introducción a la Nube y HoL de Azure MICTTWindows azure: Introducción a la Nube y HoL de Azure MICTT
Windows azure: Introducción a la Nube y HoL de Azure MICTT
 
Servicios de datos en la nube
Servicios de datos en la nubeServicios de datos en la nube
Servicios de datos en la nube
 
12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...
12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...
12-Unidad 3: Webservices-3.3. Inicio de Proyecto (Introducción, Contenidos In...
 
Mejores prácticas de Data Warehouse con SQL Server
Mejores prácticas de Data Warehouse con SQL ServerMejores prácticas de Data Warehouse con SQL Server
Mejores prácticas de Data Warehouse con SQL Server
 
Modo conexion manuel
Modo conexion manuelModo conexion manuel
Modo conexion manuel
 
12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto12-Unidad 3: Webservices-3.3 Inicio del Proyecto
12-Unidad 3: Webservices-3.3 Inicio del Proyecto
 
Componentes de sql server 2008
Componentes de sql server 2008Componentes de sql server 2008
Componentes de sql server 2008
 
Ejemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con accessEjemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con access
 
Azure DataFactory
Azure DataFactoryAzure DataFactory
Azure DataFactory
 
Migrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data FactoryMigrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data Factory
 
Repoteadores De Mysql2
Repoteadores De Mysql2Repoteadores De Mysql2
Repoteadores De Mysql2
 
Repoteadores De Mysql2
Repoteadores De Mysql2Repoteadores De Mysql2
Repoteadores De Mysql2
 
Caracteristicas de dbms_SQL SERVER 2008
Caracteristicas de dbms_SQL SERVER 2008Caracteristicas de dbms_SQL SERVER 2008
Caracteristicas de dbms_SQL SERVER 2008
 

Más de SolidQ

SolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration ServicesSolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration ServicesSolidQ
 
SolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLSSolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLSSolidQ
 
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...SolidQ
 
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...SolidQ
 
SolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantesSolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantesSolidQ
 
Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?SolidQ
 
SQL Server 2017 en Linux
SQL Server 2017 en LinuxSQL Server 2017 en Linux
SQL Server 2017 en LinuxSolidQ
 
Columnstore en la vida real
Columnstore en la vida realColumnstore en la vida real
Columnstore en la vida realSolidQ
 
PowerApprízate
PowerApprízatePowerApprízate
PowerApprízateSolidQ
 
Jugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocksJugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocksSolidQ
 
Analizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BIAnalizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BISolidQ
 
Mantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para DummiesMantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para DummiesSolidQ
 
R en relacional
R en relacionalR en relacional
R en relacionalSolidQ
 
Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!SolidQ
 
Arquitecturas lambda en Azure
Arquitecturas lambda en AzureArquitecturas lambda en Azure
Arquitecturas lambda en AzureSolidQ
 
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018SolidQ
 
BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018SolidQ
 
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018SolidQ
 
Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018SolidQ
 
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...SolidQ
 

Más de SolidQ (20)

SolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration ServicesSolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
SolidQ Summit 2018 - Qué necesita saber un DBA de Integration Services
 
SolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLSSolidQ Summit 2018 - Seguridad a nivel datos. RLS
SolidQ Summit 2018 - Seguridad a nivel datos. RLS
 
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
SolidQ Summit 2018 - Todo lo que un integrador de datos debería tener... y pa...
 
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
SolidQ Summit 2018 - ¿Dificultades gestionando relaciones muchos a muchos? De...
 
SolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantesSolidQ Summit 2018 - Report Server: Nuevos mutantes
SolidQ Summit 2018 - Report Server: Nuevos mutantes
 
Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?Cuando QueryStore no sirve, ¿qué opciones tenemos?
Cuando QueryStore no sirve, ¿qué opciones tenemos?
 
SQL Server 2017 en Linux
SQL Server 2017 en LinuxSQL Server 2017 en Linux
SQL Server 2017 en Linux
 
Columnstore en la vida real
Columnstore en la vida realColumnstore en la vida real
Columnstore en la vida real
 
PowerApprízate
PowerApprízatePowerApprízate
PowerApprízate
 
Jugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocksJugando a ser rico: Machine Learning para predicción de stocks
Jugando a ser rico: Machine Learning para predicción de stocks
 
Analizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BIAnalizando tus Redes Sociales con Power BI
Analizando tus Redes Sociales con Power BI
 
Mantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para DummiesMantenimiento de SQL Server para Dummies
Mantenimiento de SQL Server para Dummies
 
R en relacional
R en relacionalR en relacional
R en relacional
 
Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!Cuando haces bot ya no hay stop!!
Cuando haces bot ya no hay stop!!
 
Arquitecturas lambda en Azure
Arquitecturas lambda en AzureArquitecturas lambda en Azure
Arquitecturas lambda en Azure
 
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
Bot Framework: otra manera de acceder a tus datos - SolidQ Summit 2018
 
BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018BIE2E en Azure - SolidQ Summit 2018
BIE2E en Azure - SolidQ Summit 2018
 
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
¿Qué viene GDPR? Mi SQL está preparado- SolidQ Summit 2018
 
Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018Hilando fino en SSAS multidimensional - SolidQ Summit 2018
Hilando fino en SSAS multidimensional - SolidQ Summit 2018
 
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
Adaptive Query Processing: Mejoras en el motor de consulta de SQL Server 2017...
 

Desplegando un servicio de datos públicos en la nube (OGDI/DataLab) | SolidQ Summit 2012

  • 1. 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 MLopez@SolidQ.com
  • 2. 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
  • 3. 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)
  • 4. DEMO 1. Pasado, presente y futuro de los datos en la Web
  • 5. 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)
  • 6. 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
  • 7. DEMO 2. Una propuesta de bajo coste OGDI/Data Lab
  • 8. Instalación mínima sin garantía SLA
  • 10. Carga media con SLA Azure y descuento 6MP
  • 11. 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
  • 12. DEMO 3. Descarga y repaso de la solución. Registro de .dlls
  • 13. 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
  • 14. DEMO 4. Configuración: Cadenas de conexión y Storage
  • 15. 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
  • 16. DEMO 5. Carga de Datasets: Preparación y DataLoader
  • 17. 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)
  • 18. DEMO 6. Preparación del despliegue a la nube
  • 19. 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)
  • 20. DEMO 7. Despliegue en Windows Azure (2 instancias XS)
  • 21. 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)
  • 22. DEMO 8. Visualización de datos KML y OData
  • 23. 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).
  • 24. DEMO 9. Clientes del servicio de datos: Ejemplo móvil WP7
  • 25. 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.
  • 26. 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: