Armazenamento de dados, discos e Topologias

Interfaces de Discos Rígidos e SNA
O interface utilizado num determinado sistema pode afectar a fiabilidade e a performance do mesmo. Recorrer à utilização de discos de grande capacidade significa também aumentar os tempos de pesquisa nos mesmos. É apresentada uma tabela com informação informativa e comparativa:
Interface Vantagens Desvantagens Notas
Small Computer System Interface (SCSI) Suporta escrita forçada da informação para disco, aumentado as possibilidades de recuperação.SCSI com TCQ (Tagged Command Queueing) suporte múltiplos pedidos de I/O.Suporta substituições de disco em funcionamento (hot-swapping).Permite até 15 drives por canal.Menos restritivo no comprimento dos cabos de ligação.   A sobrecarga dos canais aumenta a possibilidade de se atingir a velocidade máxima de transferência de informação.
Integrated Device Electronics (IDE) Suporta substituições de disco em funcionamento (hot-swapping).Suporta altos valores de transferência só no caso de um drive por canal.Tipicamente possui maior capacidade e é mais económico do que o SCSI. Só permite manipular um pedido pendente de I/O por canal.  
Serial Advanced Technology Attachment (SATA) Suporta substituições de disco em funcionamento (hot-swapping).A maioria é desenhada explicitamente para suportar um só drive por canal, no entanto existem placas que suportam desde 2 até 12 ou mais Canais SATA.on interface cards are also available.Tipicamente possui maior capacidade e é mais económico do que o SCSI.    
Serial-attached SCSI (SAS) Bastante rápido.Suporta o protocolo SCSI.Permite um número de discos superior ao que suporta o SCSI.   Unicamente aplicável a DAS (Direct-attached Storage).Tecnologia que substitui o SCSI paralelo.Retro-compatibilidade com os dives SATA.

Topologias de Disco Rígido

A topologia de disco utilizado num determinado sistema pode afectar a fiabilidade e a performance do mesmo. Deverá ser objectivo minimizar a latência no subsistema de I/O. Uma baixa ou má performance do subsistema de I/O não poder ser corrigida adicionando outros recursos aos sistema (i.e., CPU e/ou memoria).
Topologia Vantagens Desvantagens Notas
SAN Permite servir vários servidores.Não há limitações relativamente ao número de discos que podem estar acessíveis.Facilidade em adicionar servidores. Facilidade em administrar vários servidores.Facilidade em realocar espaço de armazenamento entre servidores.Custos de manutenção tendem a ser menores dos que dos(DAS.    
DAS Grande largura de BandaFacilidade de administração para um pequeno número de servidores. Os custos iniciais são menores do que dos SAN. Implantado e associada a cada servidor.O número de disco é limitado pelo número de slots disponíveis em cada servidor e pelo tipo de interface utilizado. Esta solução deverá ser considerada em caso de situações de constrangimento de grande volume de trabalho, quando o limite de DAS para um servidor é atingido, deverá ser adicionado e implantado outro servidor.
Network-attached storage (NAS)   iSCSI só suporta pouco tráfego de I/O. Não é recomendável a utilização de NAS caso esta não tenha a capacidade de latência suficiente para o sistema proposto. Caso seja imprescindível recorrer a um armazenamento de rede, recomenda-se utilizar iSCSI numa placa dedicada Ethernet Gigabit em detrimento do NAS.

  João Paulino

Publicado em IT, Storage. Tags: , , , , , . Leave a Comment »

Database Architect/Arquitecto de Base de Dados

 É o profissional especialista de TI que produz, define, analisa, desenha, recomenda as características, funcionalidades, requisito(s) da(s) Base(s) de Dados relativamente à arquitectura do(s) sistema(s) e da arquitectura do software.

 Responsabilidades, características, especialização, formação e tarefas do Arquitecto de Base de Dados.

  • 1. Analisar e compreender de forma relevante;
    • 1.1.1. Especificações dos requisitos.
    • 1.1.2. Convenções.
    • 1.1.3. Documentação de Administração dos produtores de SGBDR’s.
  • 2. Arquitectura de Base de Dados;
    • 2.1.1. Avaliar requisitos de relevância/impacto sobre as Bases de Dados.
    • 2.1.2. Realizar o planeamento de capacidade das Bases de Dados.
    • 2.1.3. Assegurar que a arquitectura do sistema e do software abordam devidamente a persistência.
    • 2.1.4. Determinar a tecnologia de Dados adequada (i.e., relacional ou objecto)
    • 2.1.5. Avaliar e seleccionar os SGBDR’s a serem incorporados nas aplicações de software.
    • 2.1.6. Determinar onde as Bases de Dados serão disponibilizadas em sistemas de aplicações distribuídas multi-camadas (i.e., Bases de Dados Relacionais em Servidores Dedicados de Base de Dados, Base de Dados de Objectos na middle tier e Base de Dados Relacionais na camada de backend da infrastrutura).
    • 2.1.7. Avaliar e seleccionar correctamente e de modo apropriado os equipamentos de armazenamento (NAS, DAS, SAN e Robot’s de Tape para Backup).
    • 2.1.8. Produzir os modelos lógicos para as Bases de Dados.
    • 2.1.9. Determinar se o software de acesso à Base de Dados necessita modificações.
    • 2.1.10. Colaborar com outros profissionais para determinar:
      • 2.1.10.1. O impacto das alterações da Base de Dados nos outros sistemas.
      • 2.1.10.2. O custo ao nível de recursos humanos para alteração nas Base de Dados.
    • 2.1.11. Especifica as autorizações dos utilizadores:
      • 2.1.11.1. Quais os utilizadores que acedem a determinada Base de Dados.
      • 2.1.11.2. A que Dados os utilizadores acedem em determinada Base de Dados.
    • 2.1.12. O nível de acesso aos Dados (i.e., create, select, update, delete)
    • 2.1.13. Avaliar de forma adequada a plataforma que suporta as Base de Dados.
    • 2.1.14. Providenciar/Normalizar modelos de código fonte:
      • 2.1.14.1. Acesso a Base de Dados.
      • 2.1.14.2. Stored Procedures, Views, Functions, Triggers.
    • 2.1.15. Produzir os itens relacionados com a Base de Dados nas áreas do desenvolvimento/implantação e operações:
      • 2.1.15.1. Plano de Implantação.
      • 2.1.15.2. Manual de Instalação.
      • 2.1.15.3. Manual de Operações.

Perfil

Para cumprir esta função, o profissional Arquitecto de Base de Dados deverá possuir as seguintes características pessoais, conhecimentos técnicos, formação e experiência.

  • 1. Características pessoais;
    • 1.1.1. Pensamento lato e abstracto que permita:
      • 1.1.1.1. Trabalhar confortavelmente e estrategicamente num alto nível de abstracção
      • 1.1.1.2. Ter uma visão geral sem pormenores supérfluos.
      • 1.1.1.3. Ter uma visão para além dos evidentes problemas e possíveis conexões entre os mesmo que pareçam não estar relacionados.
      • 1.1.1.4. Capacidade de reconhecer questões essenciais subjacentes a situações complexas.
    • 1.1.2. Capacidade de realizar e aplicar a engenharia nas seguintes situações:
      • 1.1.2.1. Requisitos que provoquem conflitos significativos na arquitectura.
      • 1.1.2.2. Decisões que envolvam competição por persistência, especialmente as Bases de Dados.
    • 1.1.3. Capacidade de identificar requisitos arquitectónicos e suas ramificações na arquitectura das Base de Dados.
    • 1.1.4. Capacidade de captar de uma forma clara e inequívoca o contexto da aplicação e da arquitectura do sistema, em particular base de dados herdadas.
    • 1.1.5. Capacidade de estimar e projectar a actual e futura dimensão:
      • 1.1.5.1. Da Base de Dados (i.e., média e número máximo de tabelas/classes e registos/objectos).
      • 1.1.5.2. Hardware necessário (i.e., número e dimensão dos servidores de Base de Dados, Discos de Storage e Sistemas de Backup)
    • 1.1.6. Capacidade de realizar confortavelmente tarefas de arquitectura em simultâneo.
    • 1.1.7. Capacidade de tomar importantes decisões, mesmo com informação incompleta ou em conflito.
    • 1.1.8. Alta capacidade de gerir e prioritizar os múltiplos desafios em simultâneo e concorrentes, tais como: questões, ambiguidades e contradições que são normais ocorrerem durante o processo de desenho e arquitectura das Base de Dados.
    • 1.1.9. Capacidades consolidadas na análise e resolução de problemas.
    • 1.1.10. Excelentes capacidades de comunicação verbais e escritas, capacidade de explicar e documentar a arquitectura da Base de Dados a diversas audiências
    • 1.1.11. Sólidas competências de construção e motivação de equipas.
  • 2. Especialização;
    • 2.1.1. Conhecimentos aprofundados e práticos:
      • 2.1.1.1. Tarefas, técnicas e ferramentas de arquitectura de Base de Dados.
      • 2.1.1.2. Modelação lógica e física de Dados.
      • 2.1.1.3. Teoria de modelação de Base de Dados, incluí normalização de dados, replicação de dados, integridade de dados e segurança de dados.
      • 2.1.1.4. Desenvolvimento baseado em componentes, conceitos, modelos, infra-estrutura e interfaces.
      • 2.1.1.5. Tecnologias de infra-estrutura e de integração de sistemas utilizadas para implementar as arquitecturas de sistemas, conhecimento dos fabricantes e produtos disponíveis.
      • 2.1.1.6. Como desenvolver e implementar arquitecturas para aplicações distribuídas e acedida por várias plataformas heterogéneas.
      • 2.1.1.7. Conceitos de Object-oriented (OO), como Abstracção, Encapsulação, Herança e polimorfismo.
      • 2.1.1.8. Linguagens de Modulação (i.e., UML, OML, Modelação E-R, ) incluído a capacidade de produzir e interpretar os documentos e diagramas associados.
      • 2.1.1.9. Ferramentas de modelação de Base de Dados.
      • 2.1.1.10. Standards e orientações gerais de Arquitectura.
    • 2.1.2. Sólidos conhecimentos:
      • 2.1.2.1. Teóricos e práticos de ferramentas de Administração de Base de Dados.
      • 2.1.2.2. Principais padrões e mecanismos de persistência reutilizáveis.
      • 2.1.2.3. Modelos de arquitecturas de Base de Dados para aplicações específicas ou famílias de aplicações.
      • 2.1.2.4. Mecanismos de segurança das Base de Dados.
      • 2.1.2.5. Conceitos e técnicas de Engenharia.
      • 2.1.2.6. Objectos, casos de uso, processos e modelagem funcional.
      • 2.1.2.7. Arquitectura de Hardware e Software.
      • 2.1.2.8. Redes e equipamentos de rede.
      • 2.1.2.9. Conhecimentos teóricos e práticos de ferramentas de Engenharia de Software.
      • 2.1.2.10. Conhecimentos Básicos:
        • 2.1.2.10.1 Domínio da Aplicação.
        • 2.1.2.10.2 Negócio da Empresa cliente.
      • 2.1.2.11. Conhecimentos teóricos e práticos de ferramentas de testes e integração.
      • 2.1.2.12. Ferramentas de gestão de configurações, controlo de configurações.
  • 3. Formação;
    • 3.1.1. Bacharelato, licenciatura ou outro ciclo superior de estudos em Engenharia Informática, Engenharia Informática e de Sistema, Engenharia de Sistemas e Informática, Engenharia Informática e de Computadores, Engenharia Electrotécnica e de Computadores, Informática, Matemática Informática ou equivalente.
    • 3.1.2. Formação Profissional dos fabricantes de SGBDR’s (i.e., Oracle, Microsoft, IBM, MySQL, etc.)
    • 3.1.3. Prática em:
      • 3.1.3.1. Projectos, tarefas relevantes, técnicas, produtos.
      • 3.1.3.2. Ferramentas, conceitos e diagramas de modelagem de Dados.
      • 3.1.3.3. SGBDR’s.
      • 3.1.3.4. Técnicas e Conceitos de Data Warehouse
      • 3.1.3.5. Auto-formação e actualização na leitura de livros, revistas e artigos da especialidade.
  • 4. Tarefas;
    • 4.1.1. Arquitectura de persistência e Base de Dados:
      • 4.1.1.1. Seleccionar os padrões da Arquitectura.
      • 4.1.1.2. Concepção da Arquitectura lógica.
      • 4.1.1.3. Concepção da Arquitectura Física.
      • 4.1.1.4. Concepção do Mecanismo da Arquitectura.
      • 4.1.1.5. Reutilização da Arquitectura
      • 4.1.1.6. Documentação da Arquitectura.
      • 4.1.1.7. Garantia da Integridade da Arquitectura.
      • 4.1.1.8. Ambientes de Engenharia, incluí fornecedores SGBDR’s.
      • 4.1.1.9. Avaliação de SGBDR’s
      • 4.1.1.10. Selecção de SGBDR’s.
      • 4.1.1.11. Implementação;
        • 4.1.1.11.1. Planeamento da implementação.
    • 4.1.2. Operações;
    • 4.1.2.1. Documentação das Operações, incluí:
      • 4.1.2.1.1. Documentação incluindo operações: (tarefas operacionais de administração de Base de Dados, tarefas Operacionais, tarefas de instalação de Base de Dados e software associado).
    • 4.1.3. Engenharia da Qualidade;
      • 4.1.3.1. Controle de Qualidade – Avaliação de requisitos.
      • 4.1.3.2. Inspeccionar e avaliar o desenho da Base de Dados.
    • 4.1.4. Documento do design da Base de Dados.
    • 4.1.5. Componente de Software.
    • 4.1.6. Garantia de Qualidade – Auditoria do Desenvolvimento da Base de Dados.
    • 4.1.7. Técnicas, tarefas relacionadas com a Base de Dados.
    • 4.1.8. Standards, modelos, validação e verificação do documento de design da Base de Dados.

João Paulino