Apache Spark kullanarak bir dosyaya nasıl RDD[Array[Byte]]
yazıyorsunuz ve tekrar okuyorsunuz?Kıvılcım dizisindeki ham bayt dizilerini yazıp oku - Sıralı Dosya Sırası Dizisini KullanarakDosya
7
A
cevap
10
Sık karşılaşılan sorunlar, BytesWritable'dan NullWritable'a tuhaf bir istisna alamıyor gibi görünüyor. Diğer yaygın sorun ise BytesWritable getBytes
, bayt almayan, anlamsız bir anlamsız saçmalık yığınıdır. getBytes
'un ne yapması, byte'ları elde etmekten ziyade, sonuna kadar bir ton sıfır ekler! copyBytes
val rdd: RDD[Array[Byte]] = ???
// To write
rdd.map(bytesArray => (NullWritable.get(), new BytesWritable(bytesArray)))
.saveAsSequenceFile("/output/path", codecOpt)
// To read
val rdd: RDD[Array[Byte]] = sc.sequenceFile[NullWritable, BytesWritable]("/input/path")
.map(_._2.copyBytes())
İlgili konular
- 1. Base64 kodlu görüntüye bayt dizisini oku
- 2. Dosya için bayt dizisini kaydet
- 3. Spark'den String dizisini oku
- 4. Ham baytları ham bayt olarak al R
- 5. Bayt dizisini bloğa dönüştürme
- 6. Bayt dizisini PNG/JPG
- 7. Bayt dizisini farklı veri türlerine ayırma?
- 8. İç diziden dizi dizisini oku
- 9. IPAddress.GetAddressBytes() yöntemi - bayt sırası nedir?
- 10. Hocon: Yapılandırma dosyasından bir nesne dizisini oku
- 11. dize dizisini bayt dizisine dönüştürme
- 12. İki Bayt Dizisini karşılaştır? (Java)
- 13. Sıralı Karakter Sonuç Dizisini Kaydetme Sırasıyla
- 14. Bir bayt dizisini bir dizi flora dönüştürmek
- 15. Bir bayt dizisini posta ekine nasıl dönüştürebilirsiniz
- 16. Ham param dizisini raylara almak mümkün mü?
- 17. Ruby UTF-8'de Geçersiz Bayt Sırası
- 18. İkili verinin bayt sırası nasıl değiştirilir
- 19. Bir NSMutableData nesnesine ham bayt nasıl yazılır?
- 20. Java bayt dizisini Scala bayt dizisine nasıl dönüştürebilirim?
- 21. Hamur sıralı dosya nasıl okunur?
- 22. Çift nesne dizilerini kaldırarak iki nesne dizisini birleştirir Javascript Jquery
- 23. Numune dizilerini dosya olarak saklama ve yükleme
- 24. Scala + Akka, görüntülerin bayt dizilerini mesajlarla geçiriyor musunuz?
- 25. Bayt dizisini JSONArray'a dönüştürmenin basit yolu
- 26. Java'da bayt dizisini Base64'e nasıl dönüştürebilirim?
- 27. NV21 bayt dizisini bitmap okunabilir biçime dönüştürün
- 28. Bayt dizisini bir dizeye nasıl dönüştürebilirim?
- 29. Bayt dizisini C dizgisine dönüştürme C#
- 30. Bayt dizisini Java'da onaltılık biçime dönüştürme
Bu gönderi nispeten eskidir, bu nedenle cevabın hala güncel olup olmadığını öğrenmek istediniz mi? Okumadan önce copyBytes kullanmak hala gerekli mi? –
@SamStoelinga Evet Sanırım, değişmesi mümkün olmayan Hadoop API'sı. – samthebest
Daha verimli bir alternatif, .getBytes() 'işlevini kullanmak ve yalnızca .getLength()' baytlarını işlemektir. Tabii ki, kesinlikle bir RDD [Array [Byte]] 'na ihtiyacınız varsa, bu yaklaşım işe yaramaz, ancak bir RDD [(Array [Byte], Int)] 'yi düşünebilirsiniz. –
user1609012