分享

用java实现solr数据分片抽取

zhuqitian 发表于 2016-9-8 17:46:42 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 8 12952
最近写了个java程序solr按小时抽取一天数据https://www.zybuluo.com/zhou-si/note/450891,打成jar包放测试环境测试,遇到了些小问题,时常会链接失败(我们这边solr集群也不给力),我想了个方法:分片抽取,但是由于技术问题,不知用代码如何实现,还望大神赐教

已有(8)人评论

跳转到指定楼层
langke93 发表于 2016-9-8 18:24:44
楼主说的分片是指solr分片,还是自己定义的
回复

使用道具 举报

nextuser 发表于 2016-9-8 18:29:35
集群不好使,感觉分片也是一样的
回复

使用道具 举报

zhuqitian 发表于 2016-9-8 20:52:33
langke93 发表于 2016-9-8 18:24
楼主说的分片是指solr分片,还是自己定义的

就是solr分片,不是自己定义的
回复

使用道具 举报

zhuqitian 发表于 2016-9-8 20:54:27
nextuser 发表于 2016-9-8 18:29
集群不好使,感觉分片也是一样的

我也这么觉得,只是组长说他们爬虫组说了都没分片怎么就说他们集群不行,我也是没办法,本来就是集群扛不住,可能他们负载均衡没有做好。而来我是认为可能去实现分片不难,只是我没玩过这东西,我是做hive开发的
回复

使用道具 举报

zhuqitian 发表于 2016-9-11 10:07:57
已经解决:new SolrQuery().add("shards", conditions[0]);
就是加个分片,查询,个人理解应该跟sparkRDD差不多,一个rdd是在多个节点上有partition的,加分片就是给数据更小范围的圈出数据和所在节点
其中condition参数是string数组   String ... condition   
回复

使用道具 举报

nextuser 发表于 2016-9-11 12:29:08
zhuqitian 发表于 2016-9-11 10:07
已经解决:new SolrQuery().add("shards", conditions[0]);
就是加个分片,查询,个人理解应该跟sparkRDD ...

性能快多了吗
回复

使用道具 举报

zhuqitian 发表于 2016-9-11 14:40:46

快多了那是不可能的,solr服务器一共就不到10台节点,而且这东西得走网络
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条