Hive data types binário opções


Eu estou querendo saber se há alguma maneira de realmente carregar dados CSV em um formato de colméia binário - ou seja, fazendo o mesmo que carregamento de dados em um banco de dados relacional faria: análise e tipo de conversão de entrada e armazená-lo em um formato binário (em outro binário Arquivo em caso de Hive). A referência Hive diz que o comando load data inpath não faz nenhuma transformação, então eu suspeito que os tipos não são convertidos, p. De string para inteiro. Eu estava lendo sobre os formatos OCR e RCFile, mas eu não era capaz de descobrir se, por exemplo. Os valores de string do CSV são convertidos em valores inteiros de máquina e armazenados em HDFS. É esse o caso Quais outras possibilidades existem para criar representações binárias de arquivos CSV no Hive Em uma nota relacionada: Eu suspeito Hive não converter valores de seqüência de caracteres em representações de máquina durante o processamento de consulta e não é, por exemplo. Por padrão, Hive apenas armazena arquivos como arquivos de texto sem formatação e armazena registros como texto sem formatação, todos descompactados. Ele usa ASCII 0x1 para um separador de campo que é mais conveniente do que uma vírgula para algumas entradas, mas eu tenho certeza que você trabalhou como obter Hive para trabalhar com valores separados por vírgula. Se você quiser Hive para usar um formato de arquivo diferente, serializedeserialize de forma diferente, ou comprimir os dados que você tem algumas opções diferentes para brincar com. Fora da caixa, Hive suporta vários formatos de arquivo diferentes: TEXTFILE. SEQUENCEFILE. E RCFILE. As diferenças entre têm a ver com como os arquivos são lidos, divididos e escritos. TEXTFILE é o padrão e opera em arquivos de texto normal. SEQUENCEFILE é um formato de par chave-valor binário que é facilmente consumido por outras partes do ecossistema Hadoop. E RCFILE é uma maneira orientada coluna para salvar as tabelas Hive. Além deste formato de arquivo, você pode escrever o seu próprio ou encontrar outras pessoas que escreveram para atender a diferentes necessidades. Além do formato de arquivo em que seus dados foram salvos, você pode decidir como os registros em uma tabela devem ser serializados e desserializados especificando um SerDe. Hive 0.9.1 e acima vem embalado com um AvroSerDe. E Avro salva dados em um formato binário (ele também tem um esquema em si que introduz algumas complicações). Uma pesquisa no Google para hive binário SerDe revelou um LazyBinarySerde que soa como uma forma mais simples de salvar em um formato binário. E se você não pode encontrar qualquer coisa para atender às suas necessidades, você sempre pode escrever o seu próprio SerDe. Imagino que sua pergunta encaixa no contexto de como fazer tabelas Hive menores e mais performant. Para isso, você pode aplicar compressão em cima de tudo o que eu mencionei acima. Para fazer isso, basta dizer ao Hive para compactar sua saída e diga qual codec deve compactar usando os seguintes comandos: Você pode alterar isso em seus arquivos de configuração se desejar que essa configuração persista fora da sessão (incluindo outros trabalhos de Hive e MapReduce de outras pessoas se você Estão compartilhando um cluster). Eu uso SnappyCodec porque ele funciona com Hive fora da caixa, é dividível e dá compressão boa compressão para o tempo de CPU gasto. Você pode decidir que um codec diferente é mais adequado às suas necessidades. Agora, como aplicar todas essas opções se todos os seus dados estiverem em formato CSV? A maneira mais fácil é criar uma tabela em cima dos arquivos CSV, em seguida, criar outra tabela com o formato de arquivo e SerDe que você deseja e, em seguida, inserir os dados a partir do CSV backed tabela para a nova tabela (certificando-se que você está compressão sua saída Hive com o seu codec de escolha). Sob o capô, Hive cuidará de ler os dados de um formato (CSV) e escrever para outro (o que você decidiu). Depois disso você terá uma duplicata dos dados e você pode soltar os arquivos CSV, se desejar. O exemplo acima demonstra como você pode aproveitar todas as opções disponíveis para você, mas não pense nisso como um padrão, caso de uso razoável. Leia sobre os diferentes formatos de arquivos SerDes compressão codecs e fazer alguns testes de desempenho para resolver em sua abordagem. Em Hive você armazenar arquivos em HDFS e adicionar metadados para dizer Hive que tipo de campo você está esperando para estar em cada posição no arquivo Separador e delimitadores em arquivo de texto, linhas em diferentes formatos binários.) Você pode gerar sua própria saída e usá-lo com os formatos de entrada e saída. Pode converter imagens para, como exemplo BASE64 como um anexo e usar um TextFile. Muitas possibilidades, mas não uma consulta para armazenar imagens. Você pode ter, para continuar o TextFile Exemplo, mas não é o melhor método, um arquivo com este formato: E carregar no hive: Se você usar uma versão do Hive 0.8 você pode usar o DataType BINARY na definição da tabela e carregá-lo. Hive explode mais de 25, backtested sinais de comércio de alta qualidade por dia na área de membros. Estes são baseados em nossos algoritmos proprietários que mostram uma taxa de vitória média de 65 anos ao longo de testes e dados. Comunidade Chat O Hive oferece uma sala de chat ao vivo onde você pode conversar com outros comerciantes e discutir todas as coisas relacionadas a opções binárias e os mercados em geral. Você também pode verificar sinais com comerciantes seniores para aumentar seu ITM. Observe o líder A colméia também permite que você assine a sinais de sinal pagos de estrela, escolhidos a dedo comerciantes de opções binárias com um histórico auditado. Se os sinais robóticos não são suficientes, ou você prefere o toque humano, observe os líderes Transparência Transparência é fundamental para nós e é por isso que a taxa de sinal de vitória é continuamente atualizado e sem perdas são sempre escondidos. Seu desempenho é nosso desempenho e nunca exibimos resultados falsos ou suavizados.

Comments

Popular Posts