Qual é a diferença entre o OpenTSDB e o Graphite?

28

Tanto quanto eu posso dizer, aqui estão as principais diferenças:

  1. O OpenTSDB não deteriora os dados ao longo do tempo, ao contrário do Grafite onde o tamanho do banco de dados é pré-determinado.
  2. O OpenTSDB pode armazenar métricas por segundo, ao contrário do Graphite, que tem intervalos de minutos (não tenho certeza disso, documentos do Graphite mostram políticas de retenção que armazenam métricas a cada minuto, mas não sei se essa é a unidade mínima de tempo que podemos brincar com)

Eu quero tomar uma decisão informada sobre qual ferramenta usar para armazenar métricas. Perdi outras diferenças nesses dois sistemas? Como são executáveis / escaláveis?

Pergunta sobre bônus: Existe algum outro sistema de séries temporais que eu deva analisar?

    
por vedang 21.02.2012 / 19:51

2 respostas

45

Aviso: Eu escrevi OpenTSDB .

Eu diria que a maior vantagem do Graphite parece ser capacidades gráficas superiores . Oferece mais tipos e características de gráficos. A complexidade de implantação também é provavelmente um pouco menor com o Graphite, já que não é um sistema distribuído e, portanto, tem menos partes móveis.

O OpenTSDB , por outro lado, é capaz de armazenar uma quantidade significativamente maior de pontos de dados de baixa granularidade. Isso vem ao custo de implementar HBase , o que não é grande coisa para ser honesto. Se você quiser obter dados em tempo real até o segundo com > > 10k novos pontos de dados / s, o OpenTSDB atenderá bem a você.

Algumas informações sobre a nossa escala atual no StumbleUpon (esses números geralmente dobram a cada 2-3 meses):

  • Mais de 1B novos pontos de dados por dia (= 12k / s em média).
  • Centenas de bilhões de pontos de dados armazenados.
  • Menos de 2TB de espaço em disco consumido (antes de 3x de replicação por HDFS).
  • As consultas de leitura geralmente são capazes de recuperar, inserir e plotar mais de 500 mil pontos de dados por segundo.
por 21.02.2012 / 20:50
19

Interface do usuário

O

Graphite tem algumas excelentes ferramentas gráficas disponíveis. A interface da Web padrão é feia (embora funcional), mas você tem uma grande variedade de opções gráficas e de painel.

Alguns exemplos:

  • Painel Grafana , com gráficos dinâmicos (zoom)

  • Painel do GraphExplorer do Vimeo

  • Cubism.js gráficos de horizonte

Veja aqui ou aqui para encontrar muitos mais.

OpenTSDB do outro ainda está no estágio do gnuplot:

Configuração

Naprática,oGraphiteénaverdademuitomaisdifícildeconfigurarqueoHBase+OpenTSDB.OOpenTSDBpossuiumadocumentaçãoabrangenteealgumasetapassimples. Estes são os comandos para instalar o Graphite , as coisas ficam ainda mais complicadas se você construir a partir do código-fonte.

Apresentações

OpenTSDB does not deteriorate data over time, unlike Graphite where the size of the database is pre-determined.

Verdadeiro. Além disso, o Graphite usa um formato de arquivo semelhante ao RRD. Na prática, isso significa que um único ponto de dados ocupará tanto espaço em disco quanto a série de tempo integral, já que esse espaço é pré-alocado. Isso também significa que a plotagem de um intervalo de tempo vazio levará tanto tempo quanto se houvesse dados lá (um mecanismo de armazenamento alternativo, Ceres , está no trabalho mas ainda não tentei).

Como tsuna disse OpenTSDB permitirá que você armazene significativamente mais pontos de dados, aproveitando o poder do HDFS do Hadoop. Grafite, por outro lado, cuja arquitetura é detalhada neste capítulo da AOSA , é uma solução mais ad hoc.

OpenTSDB can store metrics per second, as opposed to graphite which has minute intervals.

Não, ambos podem fazer o segundo registro.

    
por 13.02.2014 / 14:14