Apache Solr - 在 Hadoop 上

  • 简述

    Solr 可以与 Hadoop 一起使用。由于 Hadoop 处理大量数据,Solr 帮助我们从如此大的来源中找到所需的信息。在本节中,让我们了解如何在系统上安装 Hadoop。
  • 下载 Hadoop

    下面给出了将 Hadoop 下载到您的系统上的步骤。
    Step 1− 进入 Hadoop 主页。您可以使用链接 - www.hadoop.apache.org/。点击链接Releases,如以下屏幕截图中突出显示的那样。
    Hadoop主页
    它会将您重定向到Apache Hadoop Releases页面,其中包含各种 Hadoop 版本的源文件和二进制文件的镜像链接,如下所示 -
    Hadoop 版本
    Step 2− 选择最新版本的 Hadoop(在我们的教程中为 2.6.4)并单击其binary link. 它将带您到一个页面,其中提供了 Hadoop 二进制文件的镜像。单击其中一个镜像以下载 Hadoop。

    从命令提示符下载 Hadoop

    打开 Linux 终端并以超级用户身份登录。
    
    $ su 
    password: 
    
    转到您需要安装 Hadoop 的目录,并使用之前复制的链接将文件保存在那里,如以下代码块所示。
    
    # cd /usr/local 
    # wget http://redrockdigimark.com/apachemirror/hadoop/common/hadoop-
    2.6.4/hadoop-2.6.4.tar.gz
    
    下载 Hadoop 后,使用以下命令将其解压缩。
    
    # tar zxvf hadoop-2.6.4.tar.gz  
    # mkdir hadoop 
    # mv hadoop-2.6.4/* to hadoop/ 
    # exit 
    
  • 安装 Hadoop

    按照下面给出的步骤进行安装Hadoop在伪分布式模式下。

    第 1 步:设置 Hadoop

    您可以通过附加以下命令来设置 Hadoop 环境变量~/.bashrc文件。
    
    export HADOOP_HOME = /usr/local/hadoop export
    HADOOP_MAPRED_HOME = $HADOOP_HOME export
    HADOOP_COMMON_HOME = $HADOOP_HOME export 
    HADOOP_HDFS_HOME = $HADOOP_HOME export 
    YARN_HOME = $HADOOP_HOME 
    export HADOOP_COMMON_LIB_NATIVE_DIR = $HADOOP_HOME/lib/native 
    export PATH = $PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin 
    export HADOOP_INSTALL = $HADOOP_HOME
    
    接下来,将所有更改应用到当前正在运行的系统中。
    
    $ source ~/.bashrc
    

    第 2 步:Hadoop 配置

    您可以在“$HADOOP_HOME/etc/hadoop”位置找到所有 Hadoop 配置文件。需要根据您的 Hadoop 基础架构对些配置文件进行更改。
    
    $ cd $HADOOP_HOME/etc/hadoop
    
    为了在 Java 中开发 Hadoop 程序,您必须在hadoop-env.sh通过替换文件JAVA_HOME值与 Java 在您的系统中的位置。
    
    export JAVA_HOME = /usr/local/jdk1.7.0_71
    
    以下是您必须编辑以配置 Hadoop 的文件列表 -
    • core-site.xml
    • hdfs-site.xml
    • yarn-site.xml
    • mapred-site.xml
    core-site.xml
    core-site.xml文件包含诸如用于 Hadoop 实例的端口号、为文件系统分配的内存、存储数据的内存限制以及读/写缓冲区大小等信息。
    打开 core-site.xml 并在 <configuration>、</configuration> 标记内添加以下属性。
    
    <configuration> 
       <property>     
          <name>fs.default.name</name>     
          <value>hdfs://localhost:9000</value>   
       </property> 
    </configuration> 
    
    hdfs-site.xml
    hdfs-site.xml文件包含复制数据的值等信息,namenodePATH,以及datanode本地文件系统的PATH。意味着您要存储 Hadoop 基础架构的地方。
    让我们假设以下数据。
    
    dfs.replication (data replication value) = 1  
    (In the below given path /hadoop/ is the user name. 
    hadoopinfra/hdfs/namenode is the directory created by hdfs file system.) 
    namenode path = //home/hadoop/hadoopinfra/hdfs/namenode  
    (hadoopinfra/hdfs/datanode is the directory created by hdfs file system.) 
    datanode path = //home/hadoop/hadoopinfra/hdfs/datanode
    
    打开此文件并在 <configuration>、</configuration> 标记内添加以下属性。
    
    <configuration> 
       <property>     
          <name>dfs.replication</name>     
          <value>1</value>   
       </property>  
       
       <property>     
          <name>dfs.name.dir</name>     
          <value>file:///home/hadoop/hadoopinfra/hdfs/namenode</value>   
       </property>  
       
       <property>     
          <name>dfs.data.dir</name>     
          <value>file:///home/hadoop/hadoopinfra/hdfs/datanode</value>   
       </property> 
    </configuration> 
    
    Note− 在上述文件中,所有属性值都是用户定义的,您可以根据您的 Hadoop 基础架构进行更改。
    yarn-site.xml
    该文件用于将 yarn 配置到 Hadoop 中。打开 yarn-site.xml 文件并在该文件的 <configuration>、</configuration> 标记之间添加以下属性。
    
    <configuration> 
       <property>     
          <name>yarn.nodemanager.aux-services</name>     
          <value>mapreduce_shuffle</value>   
       </property> 
    </configuration> 
    
    mapred-site.xml
    该文件用于指定我们使用的 MapReduce 框架。默认情况下,Hadoop 包含一个 yarn-site.xml 模板。首先,需要从mapred-site,xml.templatemapred-site.xml文件使用以下命令。
    
    $ cp mapred-site.xml.template mapred-site.xml
    
    打开mapred-site.xml文件并在 <configuration>、</configuration> 标签内添加以下属性。
    
    <configuration> 
       <property>     
          <name>mapreduce.framework.name</name>     
          <value>yarn</value>   
       </property> 
    </configuration> 
    
  • 验证 Hadoop 安装

    以下步骤用于验证 Hadoop 安装。

    第 1 步:名称节点设置

    使用命令“hdfs namenode –format”设置名称节点,如下所示。
    
    $ cd ~ 
    $ hdfs namenode -format 
    
    预期结果如下。
    
    10/24/14 21:30:55 INFO namenode.NameNode: STARTUP_MSG: 
    /************************************************************ 
    STARTUP_MSG: Starting NameNode 
    STARTUP_MSG:   host = localhost/192.168.1.11 
    STARTUP_MSG:   args = [-format] STARTUP_MSG:   version = 2.6.4 
    ... 
    ... 
    10/24/14 21:30:56 INFO common.Storage: Storage directory 
    /home/hadoop/hadoopinfra/hdfs/namenode has been successfully formatted. 
    10/24/14 21:30:56 INFO namenode.NNStorageRetentionManager: Going to retain 1 
    images with txid >= 0 
    10/24/14 21:30:56 INFO util.ExitUtil: Exiting with status 0 
    10/24/14 21:30:56 INFO namenode.NameNode: SHUTDOWN_MSG: 
    /************************************************************ 
    SHUTDOWN_MSG: Shutting down NameNode at localhost/192.168.1.11 
    ************************************************************/ 
    

    第 2 步:验证 Hadoop dfs

    以下命令用于启动 Hadoop dfs。执行此命令将启动您的 Hadoop 文件系统。
    
    $ start-dfs.sh 
    
    预期输出如下 -
    
    10/24/14 21:37:56 
    Starting namenodes on [localhost] 
    localhost: starting namenode, logging to /home/hadoop/hadoop-2.6.4/logs/hadoop-
    hadoop-namenode-localhost.out 
    localhost: starting datanode, logging to /home/hadoop/hadoop-2.6.4/logs/hadoop-
    hadoop-datanode-localhost.out 
    Starting secondary namenodes [0.0.0.0] 
    

    第 3 步:验证 Yarn 脚本

    以下命令用于启动 Yarn 脚本。执行此命令将启动您的 Yarn 恶魔。
    
    $ start-yarn.sh 
    
    预期输出如下 -
    
    starting yarn daemons 
    starting resourcemanager, logging to /home/hadoop/hadoop-2.6.4/logs/yarn-
    hadoop-resourcemanager-localhost.out 
    localhost: starting nodemanager, logging to /home/hadoop/hadoop-
    2.6.4/logs/yarn-hadoop-nodemanager-localhost.out 
    

    第 4 步:在浏览器上访问 Hadoop

    访问 Hadoop 的默认端口号是 50070。使用以下 URL 在浏览器上获取 Hadoop 服务。
    http://localhost:50070/
    访问 Hadoop
  • 在 Hadoop 上安装 Solr

    请按照以下步骤下载并安装 Solr。

    步骤1

    通过单击以下链接打开 Apache Solr 的主页 - https://lucene.apache.org/solr/
    Solr 主页

    第2步

    点击download button(在上面的屏幕截图中突出显示)。单击后,您将被重定向到拥有各种 Apache Solr 镜像的页面。选择一个镜像并单击它,会将您重定向到一个页面,您可以在其中下载 Apache Solr 的源文件和二进制文件,如以下屏幕截图所示。
    阿帕奇镜像

    第 3 步

    单击时,一个名为的文件夹Solr-6.2.0.tqz将下载到您系统的下载文件夹中。提取下载文件夹的内容。

    第4步

    在 Hadoop 主目录中创建一个名为 Solr 的文件夹,并将提取的文件夹的内容移动到该文件夹​​中,如下所示。
    
    $ mkdir Solr 
    $ cd Downloads 
    $ mv Solr-6.2.0 /home/Hadoop/ 
    

    确认

    浏览binSolr 主目录的文件夹并使用version选项,如以下代码块所示。
    
    $ cd bin/ 
    $ ./Solr version 
    6.2.0 
    

    设置HOME和PATH

    打开.bashrc使用以下命令文件 -
    
    [Hadoop@localhost ~]$ source ~/.bashrc 
    
    现在为 Apache Solr 设置主目录和PATH目录,如下所示 -
    
    export SOLR_HOME = /home/Hadoop/Solr  
    export PATH = $PATH:/$SOLR_HOME/bin/
    
    打开终端并执行以下命令 -
    
    [Hadoop@localhost Solr]$ source ~/.bashrc
    
    现在,您可以从任何目录执行 Solr 的命令。