Tecgraf PUC-Rio dezembro de 2010 Orientação a Serviços e Barramento de Software de E&P.

Slides:



Advertisements
Apresentações semelhantes
Terminologia Definicao Construção Exemplos
Advertisements

Análise e Projeto Orientado a Objetos
O Modelo OSI O RM-OSI é um modelo de referência p/ interconexão de sistemas abertos (open systems interconection) Padrão ISO 7498, publicado em 1984 Sistemas.
Sistemas Distribuídos
Sistemas Distribuídos Baseados em Objetos
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
Infra-Estrutura de TI: Hardware e Software
Diagrama de Classes.
Engenharia de Software
Sistemas Distribuídos
Web Services Erika Hmeljevski Estefania Borm Leonardo Malagoli
SOA e Web Services Aluno: Thiago Caproni Tavares
Algoritmo de Escalonamento para Aplicações em uma Grade Computacional Extensível aos Receptores Digitais de Televisão Bruno Guazzelli Batista Orientadora:
CAPÍTULO Sistemas de supervisão 2. Sistema SCADA
Criptografia e segurança de redes Chapter 14
Objetos Distribuídos Padrão CORBA
Arquitetura. Transferência de Arquivos – FTP Transferência de arquivos em sistemas remotos Utiliza o protocolo FTP sobre uma conexão TCP Estabelece conexão.
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
Modelo OSI OSI é um modelo de referência para interligação de sistemas abertos (open systems interconection) Padrão ISO 7498, publicado em 1984 Sistemas.
Sistemas Distribuídos
SOA - Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a serviços
Middleware e Sistemas Distribuídos
Implantação de um Centro de Processamento de Alto Desempenho sobre recursos não-dedicados Andamento das atividades Abmar Barros.
Sistemas Distribuídos
Tópicos de Sistemas de Informação A
Gestão de Redes e Sistemas Distribuídos Teresa Maria Vazão Fevereiro 2003 IST/INESC Contactos:IST/Tagus-Park Tel:
Gestão de Redes e Sistemas Distribuídos Teresa Maria Vazão Julho 2005 Ferramentas de Gestão Plataformas de Gestão IST/INESC-ID Contactos: IST/Tagus-Park.
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Web Services Uninorte Semana de Tecnologia da Informação
A autoria - II.
CORBA e Desenvolvimento Baseado em Componentes
Conceitos de J2EE para a WEB
Sistemas Distribuídos
Computing on large scale distributed systems: experience of the XtremWeb project CMP-157 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA Prof. Cláudio Fernando Resin.
Professor: Márcio Amador
Introdução à Computação em Grade Porto Alegre, Maio/2006 Centro Nacional de Supercomputação CESUP/RS Realização: Projeto GradeUFRGS Material pertencente.
Tecgraf PUC-Rio Setembro de 2013 Introdução ao Openbus.
Da Introdução à Prática
Elementos de um Sistema de Agentes Móveis Agentes e Places Comportamento de Agentes Comunicação Padronização OMG/MASIF.
Objetivos do Capítulo Explicar a importância da implementação de processos e tecnologias de gerenciamento de dados numa organização. Explicar as vantagens.
RUP - Cap. 4 – Processo Centrado na Arquitetura
METODOLOGIA, MÉTODOS E FERRAMENTAS
Sistemas de Informação: Estrutura básica dos Sistemas Empresariais.
Prof.°: João Henrique Disciplina: SOR II
MONITORAMENTO DE REDE E SERVIDORES UTILIZANDO O CACTIEZ E SNMP
RMI Objetos Distribuídos Luiz C. D´oleron SCJP
Universidade Federal de Alagoas Instituto de Computação - IC Redes de Computadores 2 Serviços Web Felipe Santos José Oswaldo.
Tecgraf PUC-Rio maio de 2011 O Serviço OpenDreams.
1 Baseado em whitepapers/eclipse-overview.pdf Nelson Lago IME/USP 04/2003 A Plataforma Eclipse.
Condor Services for the Global Grid: Interoperability between Condor and OGSA Clovis Chapman et al Proceedings of the 2004 UK e-Science All Hands.
1 Web Services Uma Introdução Jacques P. Sauvé DSC/UFCG 2003.
Estilos Arquiteturais
WebPTM Web Project and Time Manager Autor: Daniel Nicoletti Orientador: Prof. Dr. Carlos Miguel Tobar Toledo Co-Orientador: Murilo Woigt Miranda PONTIFÍCIA.
Implementação Distribuída Escalonamento de Tempo-Real Prof. Dr. Norian Marranghello Grupo 8 Daniela Gonçalves Strozi – Sayuri Watanabe
Versão 3 – fevereiro/2014 Tecgraf PUC-Rio Fevereiro de 2014 Introdução ao SCS.
Introdução ao SCS Tecgraf PUC-Rio Setembro de 2013.
Tecgraf PUC-Rio maio de 2011 Introdução ao Openbus.
Apresentação Assuntos : Grids OurGrid
Versão 1 - julho/2013 Tecgraf PUC-Rio Novembro de 2013 Introdução ao OpenBus.
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
TÉCNICAS DE ESTIMATIVAS
SOA SOA – Arquitetura Orientada a Serviços Conceitos e Aplicações
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
Estruturas de Sistemas Operacionais. Componentes Comuns do Sistema Administração de Processos Administração da Memória Principal Administração do Armazenamento.
Solução sistêmica para apoiar os processos de fiscalização da Arsesp Agosto/2015 IX Congresso Brasileiro de Regulação.
Curso Superior em Redes de Computadores Camada de Aplicação Prof. Sales Filho.
Transcrição da apresentação:

Tecgraf PUC-Rio dezembro de 2010 Orientação a Serviços e Barramento de Software de E&P

Ambiente Computacional de E&P Múltiplos sistemas permeiam diferentes fases dos fluxos de trabalho Dados volumosos e operações complexas Inviabilidade de uso de um único sistema Necessidade de troca de dados entre sistemas

Integração de Sistemas – I Integração externa –Exportação de arquivos no sistema origem –Importação de arquivos no sistema destino –Reconstrução de atributos e/ou informações perdidas no processo Depende dos formatos reconhecidos pelos sistemas envolvidos Exige esforço manual a cada operação Suscetível a erros na importação

Integração de Sistemas – II Integração direta –Uso de funcionalidades explícitas de integração construídas nos sistemas v3o2×WebSintesi, VGE×SIGEO, SiplNEP×VGE Melhor qualidade na integração e menor suscetibilidade a erros Exige codificações específicas em cada sistema para integrar com os demais Ordem quadrática de “pontes” de comunicação:

Integração de Sistemas – III Integração via serviços –Definição de padrões de dados e operações –Descoberta de serviços em tempo de execução –Independência de linguagem e arquitetura Mantém a melhor qualidade e menor suscetibilidade a erros Não exige codificações específicas em cada sistema para integrar com os demais Apenas uma ponte de comunicação para cada sistema integrado

Alternativa Comercial – OpenSpirit Aplicações OSP enabled DATASTORES Dados sísmicos, de poço, interpretação etc. conectores de dados adaptadores de aplicações Plataforma OpenSpirit Base Corporativa SIGEO, WebSintesi, VGE etc. x outras bases OpenWorks/SeisWorks GeoFrame/IESX/Charisma...

Alternativa Comercial – Dificuldades Impossibilidade de construção de servidores genéricos de dados Impossibilidade de uso de modelos de dados que não pertençam ao modelo padrão Risco de descontinuidade da plataforma

Sistema Integrador – Requisitos Arquitetura aberta e extensível a diferentes domínios Dados estruturados e adequados ao domínio Compatibilidade com múltiplas linguagens Facilidade para criação de clientes e servidores de dados Transferência de dados e mensagens entre aplicações Eficiência na transferência de grandes volumes de dados Escalabilidade para grandes volumes de mensagens Suporte a mecanismos de autenticação e autorização Suporte ao trabalho colaborativo

Padrão de referência para soluções de integração de aplicações em ambientes heterogêneos Arquiteturas Orientadas a Serviços – SOA Serviço de Diretório Cliente do Serviço 1. Serviço se registra no diretório 2. Cliente procura detalhes do serviço no diretório 3. Cliente interage com o serviço

SOA O que é? –Padrão de referência para a implementação de soluções de integração em que aplicações compartilham dados e funcionalidades sob a forma de serviços Principais características: –Baixo acoplamento entre provedores e consumidores –Linguagem neutra para descrição dos serviços –Relação dinâmica entre consumidores e provedores

Padrão CORBA Especificado pela OMG Infraestrutura para o desenvolvimento de aplicações distribuídas em ambientes heterogêneos Tecnologia madura, comprovadamente estável e eficiente Independência de plataforma e linguagem de programação Especificação de interfaces de serviço em uma linguagem neutra (IDL) Transporte eficiente de diversos tipos de dados, inclusive dados binários

Proposta OpenBus Arquitetura SOA Implementação CORBA Serviços básicos –Controle de acesso –Registro de ofertas –Troca de mensagens Comunicação direta ponto a ponto Padronização de APIs de serviços e dados

Barramento Especializado de E&P – BEEP Serviço de Registro Serviço de Acesso OpenBus WebSintesi Base Integrada OpenSpiritSimBRSIGEO SGBDIv3o2VGE BDSISMICA GeoFrame Charisma IESX OpenWorks Seisworks BDGEOL …… Serviço de Colaboração Serviço de Sessão usr1usrn … GEDIGMARLIM

Serviço de Acesso Ponto de entrada no barramento –Sua localização é conhecida Autentica componentes que chegam ao barramento Emite credenciais que possuem validade Serviço de Acesso Cliente credencial Autenticação com usuário / senha LDAP

Serviço de Acesso – Autenticação A autenticação no barramento pode ser feita por chave e senha ou por certificado digital Quando a conexão com o barramento é proveniente de um cliente de um sistema, normalmente se usa a autenticação por chave e senha Quando a conexão com o barramento é proveniente de um sistema servidor, normalmente se usa a autenticação por certificado digital

Serviço de Acesso – Credenciais Estrutura básica –Identificador unívoco –Informação de origem Lease –Indica por quanto tempo a credencial é válida –Deve ser renovada periodicamente

Serviço de Registro Permite a oferta e a descoberta de serviços Sua referência é obtida através do Serviço de Acesso Oferta de serviço –Identificação das interfaces do serviço –Lista de propriedades descritivas

Serviço de Registro Serviço de Acesso Serviço autenticado Obtém referência do serviço de registro LDAP Serviço de Registro Autenticação com certificado credencial Registra sua oferta ofertas Procura uma oferta de serviço Cliente autenticado Obtém referência do serviço de registro Acessa o serviço

Serviço de Sessão Agrupa componentes que compartilham uma mesma credencial Mantém a validade da credencial junto ao serviço de acesso Oferece mecanismo simplificado de troca de mensagens entre seus componentes

Serviço de Sessão Cria sessão Serviço de Sessão Obtém referência do serviço de sessão Serviço de Registro ofertas Obtém referência do serviço de registro credencial Se adiciona à sessão Cliente autenticado Cliente Serviço de Acesso LDAP

Governança Cadastro dos sistemas Cadastro das implantações que acessam o barramento Cadastro dos usuários que exportam serviços no barramento Cadastro das interfaces dos serviços exportados no barramento Cadastro das autorizações de oferta de serviços

Governança nos Serviços Básicos

Governança – Exemplos run_management --login=admin --add-system=HelloWorld --description="Hello World” run_management --login=admin --add-user=brunoos --name="Bruno Silvestre” run_management --login=admin --add-deployment=HelloService --system=HelloWorld --description="Hello World implantado no Brasil" --certificate=../certs/hello.crt run_management --login=admin --add-interface=IDL:demo/hello:1.0 run_management --login=admin --add-interface=IDL:demo/hello:2.0 run_management --login=admin --set-authorization=HelloService --grant=IDL:demo/hello:1.0 run_management --login=admin --set-authorization=brunoos --grant=IDL:demo/hello:1.0

Suporte ao Desenvolvimento Para desenvolver serviços ou utilizar serviços existentes, o OpenBus possui SDKs nas seguintes linguagens: –C++ –C# –Java –Lua Nesse curso, veremos o uso do SDK C++ para desenvolvimento de clientes e servidores integrados ao barramento OpenBus

Barramento Especializado de E&P BEEP

Serviços Padronizados BEEP Acesso genérico a dados Acesso a dados hierárquicos e projetos Execução de comandos Georeferenciamento Dados XYZ Dados de perfil BIAEP SBEP

BEEP – Exemplo de Acesso a Dados Sistema WebSintesi utiliza o sistema VGE para buscar dados para seus projetos Transferência de dados via serviço de acesso a dados hierárquicos Sincronização dos clientes via sessão

WebSintesi – Sistema Integrador de Aplicações Sísmicas

VGE – Sistema de Informações de E&P

Integração VGE/WebSintesi Barramento de E&PBarramento de E&P Servidor WebSintesi Área de projetos Servidor VGE Base Integrada Usuário do WebSintesi deseja recuperar um arquivo de trajetória de poço, usando o VGE, que é disparado pelo WebSintesi para realizar a tarefa Após selecionar o poço no VGE, o usuário escolhe o local no projeto onde o arquivo deve ser armazenado e o VGE realiza a transferência do dado para o WebSintesi Sistemas WebSintesi e VGE estão conectados ao Barramento de E&P

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi Cliente VGE

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE IHDS+IODSIHDS

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi URL(credencial+ior(IHDS))

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi Cliente VGE

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi Cliente VGE

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi Cliente VGE

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi Cliente VGE

Integração VGE/WebSintesi Servidor WebSintesi Servidor VGE Cliente WebSintesi

Integração VGE/WebSintesi WebSintesi oferece no barramento: –Serviço de acesso a projetos VGE oferece no barramento: –Serviço de recuperação de dados A comunicação para troca do dado é feita diretamente entre os servidores –Dados não trafegam pelo barramento, mas diretamente ponto a ponto

OpenDreams OpenBus Distributed Resource and Algorithms Management Service Implementação do padrão DRMAA – Distributed Resource Management Application API –Padrão GGF – Global Grid Forum –GridWay, Grid Engine, PBS/Torque Submissão de processos via OpenBus, através da interface IOpenDreamsService

BEEP – Exemplo de Execução de Comandos Sistema SGBDI utiliza o sistema WebSintesi para executar a conversão de dados XYZ em HBR e arquivar o resultado diretamente na Base de Arquivos de E&P Execução de comandos via OpenDreams Transferência de dados via serviço de acesso a dados hierárquicos Sincronização dos clientes via sessão

SGBDI – Gestão de Dados de Interpretação

Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi Cliente SGBDI Cliente WebSintesi Serviço BIAEP

Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi Serviço BIAEP

Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi IHDS+IODS Serviço BIAEP

Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi Cliente SGBDI

Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi Cliente SGBDI URL(credencial+ior(IHDS))

Servidor de execução Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi

Servidor de execução Integração SGBDI/WebSintesi Serviço BIAEP

Servidor de execução Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi

Integração SGBDI/WebSintesi Servidor SGBDI Servidor WebSintesi Cliente SGBDI Cliente WebSintesi

Integração SGBDI/WebSintesi WebSintesi oferece no barramento: –Serviço de acesso a projetos –Serviço de execução de algoritmos BIAEP oferece no barramento: –Serviço de acesso à base de arquivos O acesso a serviços pode ser feito por qualquer tipo de aplicação A execução de algoritmos no WebSintesi deve ser feita de forma planejada –O mesmo vale para outras integrações!

BEEP – Em Produção WebSintesi × VGE VGE × BIAEP MARLIM × SOLAR SIGEO/SOSS × SIPLEX Navegação de projetos OpenSpirit

BEEP – Em Desenvolvimento SGBDI × WebSintesi × BIAEP Solução de Busca de E&P – SBEP SBEP × Sigeoteca SBEP × BIAEP BIAEP × TSM Serviço de perfil do SOSS VGE × BIAEP Sistemas de Gestão × BIAEP GEDIG MLL × MARLIM GEDIG MLL × BIAEP

BEEP – Futuro SOSS × RECON v3o2 × WebSintesi BR Plugin – CSGrid × Petrel

BR Plugin – CSGrid × PETREL Desenvolvimento de algoritmos para o Petrel sem prende-los à plataforma: uso do sistema CSBase/CSGrid

Framework CSBase – O que é? Ambiente de execução que oferece recursos básicos para sistemas de computação em clusters e grades –Facilidades para gerenciamento de recursos e execução de algoritmos Interface web orientada a projetos, representando um desktop virtual –Arquivos de dados são organizados por projeto –Usuário pode iniciar e monitorar a execução de tarefas na grade –Administração de usuários e de controle de acesso Facilidade para integração de aplicações

CSBase – Principais Conceitos Projetos –Estrutura hierárquica que armazena arquivos do usuário –Podem ser privados, públicos ou compartilhados com outros usuários Aplicações –Programas interativos que executam acoplados à infra-estrutura do CSBase –Podem acessar e modificar projetos do usuário e seus arquivos, disparar a execução de um algoritmo específico, ou usar qualquer outro serviço interno do CSBase

CSBase – Principais Conceitos Algoritmos –Programas não-interativos, de um domínio específico de aplicação, que são executados remotamente em outras máquinas –Podem ser escritos em qualquer linguagem –Podem ser parametrizados através de arquivos XML, e podem ser instalados dinamicamente SGA – Servidor de Gerência de Algoritmos –Daemon instalado em um computador que está conectado à grade e provê serviços de execução e monitoramento

Arquitetura CSBase

Sistema CSGrid Uma instanciação do framework CSBase Possui apenas as aplicações básicas providas pelo framework, como bloco de notas, transferidor de arquivos e construtor de fluxos de algoritmos É utilizado como sistema de submissão de execução de algoritmos

Sistema CSGrid

Proposta de Integração Petrel/BEEP Novos algoritmos desenvolvidos externos ao Petrel, como programas executáveis São instalados em um servidor CSGrid, que exporta os serviços de acesso a dados e de execução de algoritmos Os plug-ins do Petrel acessam o CSGrid para transferir os dados, executar os algoritmos e buscar os resultados Os algoritmos passam a estar disponíveis para outros sistemas e aplicações