Tôi nhận được dưới đây ngoại lệ khi một kích thước kỷ lục cá nhân là hơn 3GB 'Xử lý kích thước kỷ lục hơn 3GB trong spark
java.lang.IllegalArgumentException
App > at java.nio.CharBuffer.allocate(CharBuffer.java:330)
App > at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:792)
App > at org.apache.hadoop.io.Text.decode(Text.java:412)
App > at org.apache.hadoop.io.Text.decode(Text.java:389)
App > at org.apache.hadoop.io.Text.toString(Text.java:280)
App > at org.apache.spark.sql.execution.datasources.json.JsonFileFormat$$anonfun$createBaseRdd$1.apply(JsonFileFormat.scala:135)
App > at org.apache.spark.sql.execution.datasources.json.JsonFileFormat$$anonfun$createBaseRdd$1.apply(JsonFileFormat.scala:135)
Làm thế nào tôi có thể làm tăng kích thước bộ đệm cho một hồ sơ duy nhất?
Có thể không hữu ích, nhưng đáng chú ý: ngay cả khi điều này là có thể làm (không chắc chắn), nó có thể không phải là cách tiếp cận đúng (sẽ được làm chậm và nguy hiểm). Bạn có thể tránh được một kích thước kỷ lục khổng lồ như vậy không? Làm thế nào nó đến được? Nếu đó là kết quả của một 'RDD.groupByKey', ví dụ, bạn có thể muốn thay thế nó bằng' reduceByKey' hoặc một số tập hợp khác. –
Đây là tệp json có tất cả các bản ghi dưới dạng mảng json dưới một khóa. Tôi đang cố gắng làm phẳng nó. Nhưng tôi không thể thực hiện bất kỳ thao tác nào trên nó. Thậm chí không in lược đồ của mảng json. –
Nếu bạn có thể đủ khả năng thay đổi cấu trúc của tệp JSON, chúng tôi có thể không chia tách "mảng lớn duy nhất" thành "mảng mảng" bằng một số chương trình utiliy trước khi bạn xử lý thêm không? – Marco99