Consulte o trecho necessário: object storage não precisa virar cópia integral em banco
O Serverless Beacon usa índices e leitura seletiva de arquivos genômicos. O padrão depende do formato, não apenas da escolha por serverless.
O Serverless Beacon, da CSIRO, mantém arquivos genômicos VCF no S3 e separa os metadados necessários para localizar e filtrar os dados.[17] A arquitetura usa Lambda, Athena e DynamoDB no processamento e na indexação, com Ontoserver para os termos associados à busca e uma interface seguindo o padrão GA4GH Beacon.[17]
O ponto de arquitetura é evitar uma decisão automática: copiar todo arquivo grande para um banco antes de descobrir como ele será consultado. Quando a consulta precisa de uma pequena região e o formato permite localizá-la, a avaliação deve incluir acesso seletivo ao conteúdo original.
O que muda para quem desenvolve
Nas consultas descritas, funções selecionam os conjuntos relevantes e usam bcftools e htslib para buscar intervalos de bytes das regiões genômicas necessárias, agregando resultados parciais antes da resposta.[17] Isso evita transferir o arquivo inteiro e aproveita seu formato comprimido, mas depende dos índices e das ferramentas de acesso seletivo.[17]
Minha análise: o objeto grande e o índice pequeno têm responsabilidades diferentes. O índice responde onde procurar; a leitura parcial obtém o conteúdo necessário. A decisão de persistência deve considerar a seletividade das consultas e a possibilidade real de navegar pelo formato, não apenas o tamanho bruto do acervo.
Como aplicar
Escolha um arquivo representativo e duas estratégias de teste: leitura completa e leitura dos trechos necessários com um índice apropriado. Use as mesmas perguntas e confira a equivalência dos resultados antes de comparar desempenho.
Registre preparação, tamanho do índice, bytes transferidos, quantidade de requisições, duração e custo estimado. Varie a seletividade: uma consulta muito localizada e outra que precise atravessar uma parte maior do arquivo. O objetivo é encontrar quando a economia de leitura deixa de compensar a coordenação adicional.
Inclua uma atualização do arquivo no exercício. Verifique como manter índice e conteúdo associados à mesma versão e o que acontece se um deles estiver ausente ou atrasado. Não aceite um resultado rápido obtido por um índice que aponta para bytes de outra versão.
Cuidados e limites
O experimento relatado usou um VCF comprimido de 1,1 GB, com 2.504 amostras do cromossomo 1 do projeto 1000 Genomes.[17] A preparação levou 18 segundos; consultas de 10 mil pares de bases tiveram média de 1,52 segundo e custo estimado de computação de US$ 0,00013.[17]
Esses números pertencem àquele experimento e não garantem o custo total ou a latência de outro serviço. Também não basta colocar qualquer arquivo comprimido no S3 para obter a mesma capacidade de consulta.[17] Se o formato não oferecer acesso seletivo adequado, converter ou ingerir os dados pode continuar sendo a escolha correta. Evitar cópia é uma hipótese para medir, não uma obrigação arquitetural.
Fonte
[17] Fonte: InfoQ