O documento discute a mudança na arquitetura de armazenamento de arquivos digitais de uma abordagem centralizada para distribuída. Anteriormente os arquivos eram armazenados em um banco de dados central, mas agora serão armazenados em um servidor dedicado para conteúdo e metadados serão mantidos no banco de dados. Isso melhorou o desempenho, reduziu erros e aumentou a capacidade de armazenamento.
3. Contexto
● Arquivos armazenados em banco de dados;
● Espaço utilizado 4.7 TB (até abril de 2018);
● Conteúdo do arquivo dividido em tuplas no banco de dados;
● Processamento centralizado da requisição ao arquivo solicitado;
5. Contexto
● Cada instância precisa recuperar o arquivo em banco;
● Para cada arquivo vamos ter N fragmentos compactados;
● Servidor de aplicação precisa descompactar os fragmentos;
● Montar o arquivo para retorno;
● Retornar ao usuário;
7. Problemas
● Dificuldade na realização de backups;
● Alocação de recursos no servidor de aplicação ao recuperar
arquivo;
● Centralização do processamento das requisições ao servidor de
aplicação;
10. Solução
● Armazenamento em sistema de arquivos;
● Utilização de servidor dedicado ao conteúdo;
● Envio de arquivos utilizando criptografia;
● Replicação (rsync a cada 3 min);
● Backups (Full do ano corrente e diferencial diário);
● Processamento de requisição distribuído;
11. Solução
● Apenas metadados armazenados no banco;
● Arquivos em servidor dedicado;
● Arquivo solicitado a aplicação é recuperado
no servidor de conteúdo;
13. Resultados
● Média de requisições (/verFoto, /verArquivo) atendidas por mês no
ano de 2017 é de 776.876;
○ Total de requisições (/verFoto, /verArquivo) atendidas no ano
de 2017 é de 9.322.506;
● Média de requisições atendidas por mês em 2018 (até o momento)
é de 1.022.731;
○ Total de requisições (/verFoto, /verArquivo) atendidas no ano
de 2018 (até o momento) é de 6.136.385;
15. Resultados
● Requisições atendidas pelo servidor de conteúdo em 2017 é de
18.171.155;
○ Média de 1.514.263 requisições ao mês;
○ 50.475 requisições ao dia;
● Requisições atendidas pelo servidor de conteúdo em 2018 (até o
momento) é de 33.167.399;
○ Média de 5.527.900 requisições ao mês;
○ 184.263 requisições ao dia.
17. Resultados
● Total de arquivos armazenados é de 4.954.305 em 5,2 TB;
● Crescimento médio entre 2016 e 2017 de 946 GB;
● Crescimento médio entre 2016 e 2018 de 816 GB;
● Crescimento médio entre 2017 e 2018 de 765 GB;
21. Próximos passos
● Auditoria
○ Registro de Log Específico na stack do Elastic;
○ Identificar o acesso a determinado arquivo;
○ Registro de criação, modificação e exclusão;
● Monitoramento
○ Monitoramento de registros inválidos e/ou duplicados em
disco;
○ Limpeza e otimização de espaço;
○ Erros nas operações relacionadas.
23. Quando estará disponível?
● Depende mais de infra-estrutura adequada que software;
● Documentação em andamento para ativação da estratégia;
● Todos os sistemas já possuem o suporte;
● Configurado através de parâmetros;
● Até o final de 2018.