Desidero utilizzare la cache distribuita per consentire ai miei mappatori di accedere ai dati. In main, sto usando il comandoAccesso ai file nella cache distribuita hadoop
DistributedCache.addCacheFile(new URI("/user/peter/cacheFile/testCache1"), conf);
Dove/user/Peter/CacheFile/testCache1 è un file che esiste in HDFS
Poi, la mia funzione di configurazione è simile al seguente:
public void setup(Context context) throws IOException, InterruptedException{
Configuration conf = context.getConfiguration();
Path[] localFiles = DistributedCache.getLocalCacheFiles(conf);
//etc
}
Tuttavia, questo array localFiles è sempre nullo.
Inizialmente ero in esecuzione su un cluster host singolo per il test, ma ho letto che questo impedirà il funzionamento della cache distribuita. Ho provato con uno pseudo-distribuita, ma che non ha funzionato neanche
sto utilizzando Hadoop 1.0.3
grazie Peter
possibile duplicato del [file non messo correttamente nella cache distribuita] (http://stackoverflow.com/questions/12708947/ files-not-put-correct-into-distributed-cache) – kabuko