我想使用hadoop阅读PDF文件,怎么可能?我只知道hadoop只能处理txt文件,所以无论如何都要将PDF文件解析为txt。
给我一些建议。
我想使用hadoop阅读PDF文件,怎么可能?我只知道hadoop只能处理txt文件,所以无论如何都要将PDF文件解析为txt。
给我一些建议。
一种简单的方法是创建一个SequenceFile来包含 PDF 文件。SequenceFile 是一种二进制文件格式。您可以将 SequenceFile 中的每条记录设为 PDF。为此,您将创建一个派生自Writable的类,该类将包含 PDF 和您需要的任何元数据。然后,您可以使用任何 Java PDF 库(例如PDFBox)来操作 PDF。
在 Hadoop 中处理 PDF 文件可以通过扩展FileInputFormat类来完成。让扩展它的类是 WholeFileInputFormat。在 WholeFileInputFormat 类中,您覆盖 getRecordReader() 方法。现在每个 pdf 都将作为单独的 Input Split接收。然后可以解析这些单独的拆分以提取文本。这个链接给出了一个清楚的例子来理解如何扩展 FileInputFormat。