こんにちは、Apache Spark を使用していますが、HDFS から PDF を読み取る際に問題が発生しました。
バイナリ ファイルを使用して問題を解決しようとしましたが、それを実装する方法がわかりません。すべての例は scala 言語で記述されています。Apache Tika はバイナリファイルからの PDF 読み込みを提供していると聞きましたが、この pdf ファイルの読み方を知らない限り、この知識は役に立たず、今は PDFBox を使用しています
SparkConf sparkConf = new SparkConf().setAppName("spark-AI").setMaster("local[*]");
JavaSparkContext javaSparkContext = new JavaSparkContext(sparkConf);
JavaRDD<File> pdfFiles = javaSparkContext.objectFile("hdfs://192.123.81.123:9000/atos/sample.pdf");
JavaRDD<PDDocument> pdfDocuments = a.map(file -> PDDocument.load(file));
JavaRDD<String> pdfText = pdfDocuments.map(document -> new PDFTextStripper().getText(document));
実際の出力は「java.io.IOException: hdfs://192.123.81.123:9000/atos/sample.pdf not a SequenceFile」です。