Terapêutica de Relação: Plataforma de Análise de Biotecnologia HPC no Oracle Cloud

Para entender melhor as causas das doenças e ajudar a descobrir novas maneiras de tratar essas doenças e reduzir o número de programas de desenvolvimento de drogas sem sucesso, a Relation Therapeutics (RelationRx) usa um mecanismo de recomendação baseado em gráfico para mapear as relações entre genética humana, perfis de célula única e genômica funcional.

Executando sua plataforma de análise de biotecnologia em um cluster de computação de alto desempenho no OCI (Oracle Cloud Infrastructure), o RelationRx aplica métodos de ciência de dados e aprendizado de máquina para determinar rapidamente os relacionamentos causais que levam doenças.

Fundada em 2019, a startup de Londres está atualmente trabalhando com a Fundação Bill e Melinda Gates para identificar candidatos terapêuticos para complicações imunes decorrentes de COVID-19. A empresa também está trabalhando com o Mila AI Research Institute e G3 Therapeutics, com foco em profilaxia molecular profunda, metilação de DNA, sequenciamento de RNA, proteômica, metabolômica e lipidômica.

Desde que mudou sua plataforma para a OCI, RelationRx criou uma arquitetura de malha de dados, que ajuda a startup de biotecnologia a disponibilizar dados para engenheiros e cientistas de dados. Como resultado, os cientistas de dados RelationRX conseguiram compartilhar a computação e a infraestrutura criadas pela equipe de engenharia, mantendo ainda a propriedade sobre os dados e, em seguida, controlando o acesso usando o Oracle Cloud Infrastructure Identity and Access Management, políticas e grupos.

Os aspectos únicos da arquitetura Relation Therapeutics são:

  • Aplicativo de recursos bare metal e computação de alto desempenho (HPC)
  • O uso do armazenamento baseado em NVMe para acomodar até dezenas de terabytes de dados para que os servidores não fiquem lentos por qualquer latência de acesso aos dados
  • A criação de ambientes baseados em um plano gráfico permite a criação de novas configurações de maneira consistente
  • Gerenciamento de dados usando princípios de design de malha de dados

A adoção da RelationRx pela OCI foi impulsionada não apenas pelo fato de a OCI atender a todos os seus requisitos técnicos, mas também pelo entendimento excepcional da equipe da Oracle sobre startups, seu suporte com as pessoas e recursos apropriados e um nível de atenção às necessidades da RelationRx que não está disponível em outro lugar.

Arquitetura

O núcleo da arquitetura é a aplicação da Relation Therapeutics de computação de alto desempenho (HPC) e servidores bare metal para alimentar seus processos de ciência de dados e aprendizado de máquina.

Para aproveitar ao máximo esses recursos, a Relation Therapeutics atualmente ingere dados e gerencia os recursos de computador em duas regiões, Londres e Frankfurt, com os processos de ingestão de dados e ciência de dados em Londres e o aprendizado de máquina (ML) em Frankfurt. Os conjuntos de dados são coletados de laboratórios, fornecedores e outras fontes públicas. A Relation Therapeutics executa os dados recebidos através de seu pipeline de extração, transformação e carga (ETL) que limpa, padroniza e, quando necessário, anonimiza os dados. Os serviços de ciência de dados são usados para ajudar a identificar quaisquer problemas que possam exigir alguma limpeza adicional. Os recursos de análise também são usados para ajudar a desenvolver os requisitos para o processamento de ML. Os dados ingeridos e preparados são então vinculados a um canal de conhecimento e armazenados no data lake da empresa. A partir daí, os dados são executados através do pipeline de aprendizado de máquina da empresa, onde são analisados e usados para fazer inferências ou para executar experimentos adicionais.

No total, a região de Londres compreende quatro sub-redes privadas principais:

  1. Sistemas de ciência de dados, incluindo um servidor bare metal
  2. Sistema de arquivos ETL, que contém três VMs com dimensionamento automático e um pool de instâncias
  3. Cluster de serviços, que inclui contêineres, Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE), volume persistente e um servidor de nomes de domínio (DNS)
  4. Desenvolvendo e testando cluster, que fornece aos cientistas de dados uma máquina virtual e um servidor de computação bare metal

Os dados preparados que foram ingeridos e lidos para uso são mantidos em um data lake sobreposto por uma arquitetura de malha de dados. A abordagem de malha de dados significa que os dados podem ser gerenciados pelas equipes que "permitem" os dados, em vez de precisarem de uma equipe dedicada de engenharia de dados. Esses conceitos de design ajudam a fornecer agilidade e flexibilidade na entrega e no uso dos dados enquanto usam os serviços da OCI.

Na região de Frankfurt, os usuários de machine learning da Relation Therapeutics acessam uma rede virtual na nuvem (VCN) na OCI usando uma VPN (Virtual Private Network) configurada, conectando seus escritórios à OCI. Depois que os usuários tiverem sido autenticados por meio do Oracle Cloud Infrastructure Identity and Access Management, eles poderão trabalhar com os serviços fornecidos no OCI. Os ambientes funcionam a partir de um modelo comum (ou motivo) que fornece os recursos básicos necessários para a pesquisa. Esse modelo de núcleo é definido de forma que possa ser dimensionado automaticamente e que fique em sua própria sub-rede privada, fornecendo assim controle e segurança aos serviços. O(s) cluster(s) de serviço principal(is) contém(êm) máquinas virtuais, armazenamento de alto desempenho, servidor do sistema de nomes de domínio (DNS) e OKE com contêineres para executar processos analíticos e de aprendizado de máquina. Os usuários podem complementar o modelo com qualquer recurso técnico e de dados adicional, conforme necessário, como bancos de dados por meio do uso de uma sub-rede de serviços separada.

O gerenciamento desses recursos é por meio de um servidor bastion que ocupa sua própria sub-rede. O bastion é usado para acessar e gerenciar os clusters de computação de alto desempenho. O nó bastion suporta o seguinte:

  1. Programação de nós de computação e controle de intermitência dinâmico
  2. Transferência de arquivo para dentro e fora dos ambientes HPC usando servidores de arquivos NFS
  3. Gerenciamento de administração de cluster
  4. Controle de acesso do usuário

Para dar suporte ao desenvolvimento e à experimentação com novos algoritmos e outras cargas de trabalho de aprendizado de máquina, os usuários têm acesso a ambientes de teste e preparação contendo máquinas virtuais e GPUs bare metal. Esses ambientes são complementados com recursos contínuos de integração e desenvolvimento contínuo (CI/CD). Os ambientes que não são de produção também têm suas próprias sub-redes e são dimensionados para operar com um pequeno subconjunto de um conjunto de dados de produção que pode ser executado em dezenas de terabytes de dados. Esses ambientes incluem o uso de dois servidores bare metal que contêm oito GPUs Nvidia Tesla A100.

Para gerenciar as cargas de trabalho, o SLURM, o software de código-fonte aberto para gerenciamento de serviços HPC, reside no servidor bastion e inicia o número apropriado de instâncias de computação para executar a carga de trabalho HPC com base nos requisitos de job do usuário. Quando a execução do job é concluída, o SLURM encerra automaticamente as instâncias de computação se não houver outros jobs na fila aguardando recursos idênticos. Os recursos de expansão dinâmica dessa arquitetura permitem que os pesquisadores usem imediatamente os nós de computação necessários, pagando apenas pelos recursos que estão sendo usados. Dependendo dos requisitos do usuário, o nó bastion pode ser selecionado de uma ampla gama de máquinas virtuais que o OCI oferece, começando por um VM.Standard.E3.Flex de baixo custo.

O processamento de dados realizado pela Relation Therapeutics segue uma sequência natural:



O processo é mostrado no diagrama de arquitetura a seguir com o fluxo de produção nas sub-redes na parte inferior do diagrama e nos processos de suporte em sub-redes na metade superior do diagrama.



relação-terapêutica-oci-oracle.zip

A arquitetura tem os seguintes componentes:

  • Locação

    Uma tenancy é uma partição segura e isolada que a Oracle configura no Oracle Cloud quando você acessa o Oracle Cloud Infrastructure. Você pode criar, organizar e administrar seus recursos no Oracle Cloud em sua tenancy. Uma tenancy é sinônimo de uma empresa ou organização. Normalmente, uma empresa terá uma única locação e refletirá sua estrutura organizacional nessa locação. Em geral, uma única tenancy está associada a uma única assinatura e uma única assinatura geralmente só tem uma tenancy.

  • Região

    Uma região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominados domínios de disponibilidade. As regiões são independentes das outras regiões, e grandes distâncias podem se separar (em países ou até mesmo continentes).

  • Identity and Access Management (IAM)

    O Oracle Cloud Infrastructure Identity and Access Management (IAM) é o plano de controle de acesso do Oracle Cloud Infrastructure (OCI) e dos Aplicativos Oracle Cloud. A API do IAM e a interface do usuário permitem que você gerencie domínios de identidade e os recursos dentro do domínio de identidades. Cada domínio de identidade do OCI IAM representa uma solução de gerenciamento de acesso e identidade independente ou outra população de usuários.

  • Política

    Uma política do Oracle Cloud Infrastructure Identity and Access Management especifica quem pode acessar quais recursos e como. O acesso é concedido no nível de grupo e compartimento. Isso significa que você pode gravar uma política que dá a um grupo um tipo específico de acesso em um compartimento específico ou à tenancy.

  • Log
    O registro em log é um serviço altamente escalável e gerenciado que oferece acesso aos seguintes tipos de logs de seus recursos na nuvem:
    • Logs de auditoria: Logs relacionados a eventos emitidos pelo serviço Audit.
    • Logs de serviço: Logs emitidos por serviços individuais, como Logs de fluxo do serviço API Gateway, Events, Functions, Load Balancing, Object Storage e VCN.
    • Logs personalizados: Logs que contêm informações de diagnóstico de aplicativos personalizados, outros provedores de nuvem ou um ambiente local.
  • Registro

    O Oracle Cloud Infrastructure Registry é um registro gerenciado pela Oracle que permite simplificar seu workflow de desenvolvimento até a produção. O registro facilita o armazenamento, o compartilhamento e o gerenciamento de artefatos de desenvolvimento, como imagens do Docker. A arquitetura altamente disponível e escalável do Oracle Cloud Infrastructure garante que você possa implantar e gerenciar seus aplicativos de forma confiável.

  • Rede virtual na nuvem (VCN) e sub-redes

    Uma VCN é uma rede predefinida e personalizável que você configura em uma região do Oracle Cloud Infrastructure. Como as redes de data center tradicionais, as VCNs dão a você total controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após criar a VCN. Você pode segmentar uma VCN em sub-redes, que podem ter escopo em uma região ou em um domínio de disponibilidade. Cada sub-rede consiste em um intervalo contínuo de endereços que não se sobrepõem com as outras sub-redes da VCN. Você pode alterar o tamanho de uma sub-rede após a criação. Uma sub-rede pode ser pública ou privada.

  • Lista de segurança

    Para cada sub-rede, você pode criar regras de segurança que especifiquem a origem, o destino e o tipo de tráfego que deve ser permitido dentro e fora da sub-rede.

  • Gateway de roteamento dinâmico (DRG)

    O DRG é um roteador virtual que fornece um caminho para tráfego de rede privada entre VCNs na mesma região, entre uma VCN e uma rede fora da região, como uma VCN em outra região do Oracle Cloud Infrastructure, uma rede local ou uma rede em outro provedor de nuvem.

  • Gateway de serviço

    O gateway de serviço fornece acesso de uma VCN a outros serviços, como o Oracle Cloud Infrastructure Object Storage. O tráfego da VCN para o serviço Oracle percorre a malha da rede Oracle e nunca atravessa a internet.

  • Gateway NAT (Network address translation)

    Um gateway NAT permite que recursos privados em uma VCN acessem hosts na internet, sem expor esses recursos a conexões provenientes da internet.

  • Container Engine for Kubernetes

    O Oracle Cloud Infrastructure Container Engine for Kubernetes é um serviço totalmente gerenciado, escalável e altamente disponível que você pode usar para implantar seus aplicativos de contêineres na nuvem. Você especifica os recursos de computação necessários para os seus aplicativos, e o Serviço Container Engine for Kubernetes vai provisioná-los no Oracle Cloud Infrastructure em uma tenancy existente. O Serviço Container Engine for Kubernetes usa o Kubernetes para automatizar a implantação, o dimensionamento e o gerenciamento de aplicativos de contêineres em clusters de hosts.

  • Computação

    O serviço Oracle Cloud Infrastructure Compute permite provisionar e gerenciar hosts de computação na nuvem. Você pode iniciar instâncias de computação com formas que atendem aos requisitos de recursos de CPU, memória, largura de banda da rede e armazenamento. Depois de criar uma instância de computação, você pode acessá-la de forma segura, reiniciá-la, anexá-la e desconectar volumes e encerrá-la quando não precisar mais dela.

  • Bare metal

    Os servidores bare metal da Oracle oferecem isolamento, visibilidade e controle usando instâncias de computação dedicadas. Os servidores suportam aplicativos que exigem altas contagens de núcleos, grandes quantidades de memória e alta largura de banda. Eles podem dimensionar até 160 núcleos (os maiores do setor), 2 TB de RAM e até 1 PB de armazenamento em blocos. Os clientes podem criar ambientes de nuvem em servidores bare metal da Oracle com melhorias significativas no desempenho em relação a nuvens públicas e data centers locais.

  • Pareamento remoto

    O pareamento remoto permite que os recursos da VCNs se comuniquem usando endereços IP privados sem rotear o tráfego pela internet ou por meio da sua rede local. O pareamento remoto elimina a necessidade de um gateway de internet e endereços IP públicos para as instâncias que precisam se comunicar com outra VCN em outra região.

  • Object Storage

    O armazenamento de objetos oferece acesso rápido a grandes quantidades de dados estruturados e não estruturados de qualquer tipo de conteúdo, incluindo backups de bancos de dados, dados de análise e conteúdo avançado, como imagens e vídeos. Você pode armazenar de forma segura e depois recuperar dados diretamente da internet ou de dentro da plataforma da nuvem. Você pode escalar o armazenamento de forma integrada sem prejudicar o desempenho ou a confiabilidade do serviço. Use o armazenamento padrão para armazenamento "quente" que você precisa para acessar rapidamente, imediatamente e com frequência. Use o armazenamento de arquivos compactados para armazenamento "frio" que você mantém por longos períodos de tempo e raramente acessa.

Crie e Implemente Recursos

Deseja mostrar o que você criou no Oracle Cloud Infrastructure? Você tem que compartilhar suas lições aprendidas, melhores práticas e arquiteturas de referência com nossa comunidade global de arquitetos de nuvem? Vamos ajudá-lo a começar.

  1. Fazer download do modelo (PPTX)

    Ilustre sua própria arquitetura de referência arrastando e soltando os ícones na estrutura de arame de amostra.

  2. Assistir ao tutorial sobre arquitetura

    Obtenha instruções passo a passo sobre como criar uma arquitetura de referência.

  3. Enviar o diagrama

    Envie um e-mail com seu diagrama. Nossos arquitetos de nuvem analisarão seu diagrama e entrarão em contato com você para discutir sua arquitetura.

Confirmações

  • Autores: Sasha Banks-Louie
  • Colaborador: Robert Lies, Phil Wilkins