Aviso Legal Sim, estou pedindo que você crie um sistema para mim:)
Tenho a tarefa de criar um sistema para armazenar cerca de 10 TB / dia com um tempo de retenção de 180 dias.
Minha primeira abordagem seria usar o GlusterFS e usar uma configuração de HW como esta:
Nó Único no Sistema:
Eu preciso de 9 nós para obter um armazenamento de rede (sem replicação ou invasão em discos locais) que possa conter os dados.
Prós:
- posso começar com um único servidor sem prateleiras
- Cresça adicionando as prateleiras a um único servidor (ou adicione servidores, basta colocar algum pensamento em escala, primeiro adicionando nós ou primeiro adicionando prateleiras ou alguma mistura de ambos)
- escala "infinitamente" (para certas definições de "infinito")
Contras:
- Em geral: na verdade, não tenho ideia de como verificar se será uma configuração viável quando chegar ao estágio final de expansão (1,8 PB estimado)
Eu não tenho nenhuma direção preferida, apenas alguma experiência com o GlusterFS, onde eu tenho um sistema de 4 TB (distribuído, replicado, 4 nós) usando o GlusterFS.
Tenho certeza de que não há muita diferença se esta instalação executa o Hadoop / Gluster / Netapp / EMC / Hitachi / EveryoneElse, mas o caso de uso é ( drumroll ):
ls -ltr | grep 'something' | xargs grep somethingelse
Sim, isso é assustador. Eu tentei convencer as pessoas a executar verdadeiros trabalhos analíticos sobre esses dados, mas parece que isso não acontecerá. ( OK, não é tão ruim assim, mas essas pessoas usarão uma simples sessão ssh em algum sistema de "análise" para acessar manualmente algum diretório, procurar recursivamente por alguns arquivos e determinar se os dados estão OK ou não, o que soa ainda pior agora que eu escrevi )
Estou aberto a quaisquer ideias, tenho pessoas que administram "grandes armazenamentos" dentro de nossa empresa (um sistema de backup tem 2PB por exemplo) e eu adoraria ir com qualquer coisa que já tenha funcionado. Mas eu também tenho que provar que eles estão fazendo a coisa certa (por favor, não pergunte sobre isso, é uma coisa política, eu confio meus dados para a equipe de armazenamento, eu não tenho idéia porque eu tenho que duplicar o trabalho)
Pensar sobre o problema de como realmente executar a análise dos dados está explicitamente fora do escopo.
Houve inúmeras reuniões e eu levantei tudo, desde o Splunk até trabalhos de análise desenvolvidos internamente (com e / ou sem um sistema Map / Reduce). Não há interesse nisso. Todas as pessoas se preocupam com isso:
- 10 TB / dia
- Mantenha os dados 180 dias
- Torne-o altamente disponível (ainda não totalmente definido, mas algo ao longo de 99,9, 99,99 ...)