solr 对数据添加索引

solr对单条的数据添加,无需多讲,只需要按步骤来就可以了

1.单条的添加索引,通过代码  

// 添加一条数据

    public static void addDoc() throws SolrServerException,IOException {
        // 得到请求
        SolrClient sc = getSolrClient();
        // 拼装文本
        SolrInputDocument doc = new SolrInputDocument();
        doc.addField("id", 100242);
        doc.addField("name", "尹鹏飞");
        doc.addField("gender", "男");
        sc.add(doc);
        sc.commit();

    }

    这里的url是你的solr服务器的路径

     private static final String url = "http://localhost:8088/solr/new_core";

    public static SolrClient getSolrClient() {
        //solr的服务器端路径配置在project.properties文件中的project.solr.url里
//        return new HttpSolrClient(CenConf.getInstance().getProperty("project.solr.url"));
        return new HttpSolrClient(url);
    }

2.当solr搭建成功后,创建自己的实例,Core Admin--->add Core

 <1>创建自己的实例后,点击 dataimport ,然后右边有一个Configuration,里面是你查询数据库后,需要做索引的

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
	<dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.0.100:3306/talent?characterEncoding=utf-8" user="root" password="root" />
    <document name="document"> 
    	<entity name="person" query="SELECT * from person ">
            <field column="id" name="id" />   
            <field column="name" name="name" /> 
            <entity name="user" query="SELECT * from user where personId = '${person.id}'">
<field column="userid" name="username" />
                 <field column="password" name="password" />
            </entity>
  </entity>
</document>
</dataConfig>
这个地方可以配置你需要查询的数据库,表可以是链表查询。
添加索引的工作就已经做完了,勾选这几个红框框,然后点击execute执行




到这里,添加索引的都已经完事了,如果在导入的途中,你的solr的tomcat报错,那估计是你的内存挂了,或者数据库连接关了,这个时候,你可以增大你的solr的tomcat的jvm参数,调大一点就可以了

-Xms128m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m

-Djava.awt.headless=true

这里对应的参数都可以进行合理的设置


这里多说点,data-config.xml里面设置的<field>要添加到managed-schema文件中,我的solr是6.4.2版本。可以通过管理端来操作:点击左侧的 Schema 然后add field

也就是说data-config.xml需要创建的索引必须在Schema里面有。设置完毕后,把managed-schema 改成schema.xml




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值