Apache Solr - 核心

  • 简述

    Solr Core 是 Lucene 索引的运行实例,其中包含使用它所需的所有 Solr 配置文件。我们需要创建一个 Solr Core 来执行索引和分析等操作。
    Solr 应用程序可能包含一个或多个内核。如有必要,Solr 应用程序中的两个核心可以相互通信。
  • 创建核心

    安装并启动 Solr 后,您可以连接到 Solr 的客户端(Web 界面)。
    创建核心
    如以下屏幕截图中突出显示的那样,最初在 Apache Solr 中没有内核。现在,我们将了解如何在 Solr 中创建核心。

    使用创建命令

    创建核心的一种方法是创建一个schema-less core使用create命令,如下所示 -
    
    [Hadoop@localhost bin]$ ./Solr create -c Solr_sample 
    
    在这里,我们正在尝试创建一个名为Solr_sample在 Apache Solr 中。此命令创建一个显示以下消息的核心。
    
    Copying configuration to new core instance directory:
    /home/Hadoop/Solr/server/Solr/Solr_sample 
    Creating new core 'Solr_sample' using command: 
    http://localhost:8983/Solr/admin/cores?action=CREATE&name=Solr_sample&instanceD 
    ir = Solr_sample {  
       "responseHeader":{    
          "status":0,    
          "QTime":11550
       },  
       "core":"Solr_sample" 
    } 
    
    您可以在 Solr 中创建多个内核。在 Solr Admin 的左侧,您可以看到一个core selector您可以在其中选择新创建的核心,如以下屏幕截图所示。
    核心选择器

    使用 create_core 命令

    或者,您可以使用create_core命令。该命令具有以下选项 -
    -Ccore_name 您要创建的核心的名称
    -pport_name 您要创建核心的端口
    -dconf_dir 端口配置目录
    让我们看看如何使用create_core命令。在这里,我们将尝试创建一个名为my_core.
    
    [Hadoop@localhost bin]$ ./Solr create_core -c my_core 
    
    执行时,上述命令会创建一个显示以下消息的核心 -
    
    Copying configuration to new core instance directory: 
    /home/Hadoop/Solr/server/Solr/my_core  
    Creating new core 'my_core' using command: 
    http://localhost:8983/Solr/admin/cores?action=CREATE&name=my_core&instanceD
    ir = my_core {  
       "responseHeader":{  
          "status":0,  
          "QTime":1346
       },  
       "core":"my_core" 
    }
    
  • 删除核心

    您可以使用删除核心deleteApache Solr 的命令。假设我们有一个名为my_core在 Solr 中,如以下屏幕截图所示。
    删除核心
    您可以使用删除此核心delete通过将核心名称传递给该命令来执行命令,如下所示 -
    
    [Hadoop@localhost bin]$ ./Solr delete -c my_core 
    
    执行上述命令时,指定的核心将被删除,并显示以下消息。
    
    Deleting core 'my_core' using command: 
    http://localhost:8983/Solr/admin/cores?action=UNLOAD&core = my_core&deleteIndex
       = true&deleteDataDir = true&deleteInstanceDir = true  {
       
       "responseHeader" :{    
          "status":0,    
          "QTime":170
       }
    } 
    
    您可以打开 Solr 的 Web 界面来验证内核是否已被删除。
    网页界面