Saya sedang mengerjakan sebuah proyek yang bertujuan untuk mengambil set data yang besar (yaitu, data tweet yang berumur beberapa hari) dari Twitter menggunakan perpustakaan twitteR di R. mengalami kesulitan menyimpan tweet karena mesin saya hanya memiliki memori 8 GB . Kehabisan memori bahkan sebelum saya mengaturnya untuk mengambil selama satu hari. Apakah ada cara di mana saya dapat menyimpan tweet langsung ke disk saya tanpa menyimpan ke dalam RAM? Saya tidak menggunakan streaming API karena saya perlu mendapatkan tweet lama.
8
gzipped
), dan kemudian kembali ke R untuk analisis?Jawaban:
Temukan cara untuk membuat program Anda menulis ke disk secara berkala. Pertahankan hitungan jumlah tweet yang Anda ambil dan simpan setelah angka itu tinggi. Saya tidak menulis R tetapi psuedocode mungkin terlihat seperti:
$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); } }
sumber
Saya bekerja pada proyek data Twitter musim gugur lalu di mana kami menggunakan perpustakaan Java untuk menarik data tweet dari streaming dan API sisanya. Kami menggunakan Twitter4J (perpustakaan Java tidak resmi) untuk API Twitter .
Data tweet diambil dan langsung ditulis ke file teks pada hard drive kami. Ya, kami memang meningkatkan memori dan tumpukan. Saya percaya R studio akan memiliki opsi serupa. Alternatifnya adalah dengan menarik jumlah data tweet yang lebih sedikit dengan jumlah pengulangan yang lebih banyak.
sumber