Apache Tika架构和处理节点

时间:2019-06-26 06:18:04

标签: apache apache-tika

我刚刚开始探索Apache Tika。 我想检查一下Apache Tika后台程序的工作方式。

我尝试在独立计算机上执行Tika,但想知道它在Cloudera Cluster实时环境中如何工作。

示例:我有一个200页的pdf内容,并使用Tika提取文本或功能。 Tika是使用单个节点执行此过程(即将一个文件视为一个块)还是使用多个节点执行?

我只是将Tika进程与Mapreduce进行比较,并了解Tika是否也在逐块处理文件。

请帮助我了解此后台流程。

我现在没有代码。

请帮助我了解此后台流程在节点方面的作用。

1 个答案:

答案 0 :(得分:1)

  

我想检查apika tika后台程序如何工作。

Apache Tika在Java的TikaInputStream类的顶部使用抽象InputStream。这意味着以字节流的形式读取文件。没有障碍,没有任何幻想!

  

我尝试在独立计算机上执行Tika,但想知道它在Cloudera Cluster实时环境中如何工作。

     

示例:我有200页的pdf内容,并使用Tika提取了   文字或功能。 Tika是否将使用单个节点执行此过程   (即将一个文件视为一个块)或将使用   多个节点?

     

我只是将Tika流程与Mapreduce进行比较,并了解Tika是否也   逐块处理文件。

由于您专门提到了Map-Reduce,因此可以在here中找到在CDH群集上使用Apache Tika的行为。基本上,在CDH上,您的MR应用程序将从HDFS中读取文件(使用块方法),并使用Apache Tika库处理拆分,就像您在独立基础上一样。请注意,将根据输入拆分(HDFS底层)拆分处理。一个有效的例子可以在这里找到: https://github.com/ppruski/tika-hadoop-mapreduce

因此,您绝对可以使用CDH群集来达到并行处理的效率,因为MR或Spark都使用相同的方法来计算输入拆分。

相关问题