O que significa "acesso a dados de streaming" no HDFS?

O que significa "acesso a dados de streaming" no HDFS?

De acordo com a página da arquitetura HDFS, o HDFS foi projetado para "streaming de acesso a dados". Não tenho certeza do que isso significa exatamente, mas acho que significa que uma operação como a busca está desativada ou tem desempenho abaixo do ideal. Isso estaria correto?

Estou interessado em usar o HDFS para armazenar arquivos de áudio/vídeo que precisam ser transmitidos para clientes de navegador. A maioria das transmissões será do início ao fim, mas algumas poderão ter um grande número de buscas.

Talvez haja outro sistema de arquivos que possa fazer isso melhor?

Responder1

O streaming implica apenas que pode oferecer uma taxa de bits constante acima de um determinado limite ao transferir os dados, em vez de fazer com que os dados cheguem em rajadas ou ondas.

Se o HDFS estiver configurado para streaming, ele provavelmente ainda suportará busca, com um pouco de sobrecarga necessária para armazenar os dados em cache para um fluxo constante.

É claro que, dependendo da carga do sistema e da rede, suas buscas podem demorar um pouco mais.

Responder2

O HDFS armazena dados em grandes blocos – como 64 MB. A ideia é que você queira que seus dados sejam dispostos sequencialmente em seu disco rígido, reduzindo o número de buscas que seu disco rígido precisa fazer para ler os dados.

Além disso, o HDFS é um sistema de arquivos de espaço do usuário, portanto, há um único nó de nome central que contém um diretório na memória onde todos os blocos (e suas réplicas) são armazenados no cluster. Espera-se que os arquivos sejam grandes (digamos 1 GB ou mais) e sejam divididos em vários blocos. Para ler um arquivo, o código solicita ao nó do nome uma lista de blocos e então lê os blocos sequencialmente.

Os dados são "transmitidos" para fora do disco rígido, mantendo a taxa máxima de E/S que a unidade pode sustentar para esses grandes blocos de dados.

Responder3

Para streaming de dados doHadoop: o guia definitivo, 3ª edição:

O HDFS é construído em torno da ideia de que o padrão de processamento de dados mais eficiente é um padrão de gravação única e leitura muitas vezes. Um conjunto de dados normalmente é gerado ou copiado da fonte e, em seguida, várias análises são realizadas nesse conjunto de dados ao longo do tempo. Cada análise envolverá uma grande proporção, se não a totalidade, do conjunto de dados, portanto o tempo para ler todo o conjunto de dados é mais importante do que a latência na leitura do primeiro registro.

informação relacionada