Estou trabalhando em um projeto que visa recuperar um grande conjunto de dados (ou seja, dados de tweets com alguns dias) do Twitter, usando a biblioteca twitteR na R., tem dificuldade em armazenar tweets porque minha máquina possui apenas 8 GB de memória . Ficou sem memória mesmo antes de eu configurá-lo para recuperar por um dia. Existe uma maneira de armazenar os tweets diretamente no meu disco sem armazenar na RAM? Não estou usando a API de streaming, pois preciso obter tweets antigos.
8
gzipped
) e depois voltar ao R para análise?Respostas:
Encontre uma maneira de fazer seu programa gravar no disco periodicamente. Mantenha a contagem do número de tweets que você pega e salva depois que esse número é alto. Eu não escrevo R, mas o psuedocode pode se parecer com:
$tweets = get_tweets(); $count = 0; $tweet_array = array(); for each ($tweets as $tweet) { $tweet_array += $tweet; $count++; if ($count > 10000) { append_to_file($tweet_array, 'file_name.txt'); clear_array($tweet_array); } }
fonte
Trabalhei em um projeto de dados do Twitter no outono passado, no qual usamos bibliotecas Java para extrair dados de tuítes do streaming e das demais APIs. Usamos o Twitter4J (uma biblioteca Java não oficial) para a API do Twitter .
Os dados do tweet foram buscados e gravados diretamente em arquivos de texto em nossos discos rígidos. Sim, aumentamos a memória e a pilha. Eu acredito que o estúdio R terá uma opção semelhante. Uma alternativa seria extrair quantidades menores de dados de tweets com mais número de repetições.
fonte