solrcloud和solr在集群中建立索方法是什么
发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,本篇内容介绍了"solrcloud和solr在集群中建立索方法是什么"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,
千家信息网最后更新 2025年01月22日solrcloud和solr在集群中建立索方法是什么
本篇内容介绍了"solrcloud和solr在集群中建立索方法是什么"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1 通过通过zookeeper通道建立索引
public static void main(String[] args) throws IOException, SolrServerException { //注意,zkHost在windows伪分布式与hadoop分布式设置不一样 //windows伪分布式zkHost最后不需要加"/solr",linux的hadoop中需要添加"/solr" String zkHost = "node1:2181,node2:2181,node3:2181/solr"; String defaultCollection = "collection1"; CloudSolrServer server = new CloudSolrServer(zkHost); server.setDefaultCollection(defaultCollection); for (int i = 0; i < 1000; ++i) { SolrInputDocument doc = new SolrInputDocument(); doc.addField("cat", "book"); doc.addField("id", "book-" + i); doc.addField("name", "The Legend of Po part " + i); server.add(doc); if (i % 100 == 0) server.commit(); // periodically flush } server.commit(); }
2 注意,CDH中,可以看zookeeper的设置,最大链接数为60,所以对于zookeeper一般用单例
public class myCloudSolrServer { // solrServer public static CloudSolrServer solrServer; //效率不高的方法// public static synchronized CloudSolrServer getSolrServer() {// if (solrServer == null) {// try {// solrServer = new CloudSolrServer(Const.ZK_HOST + "/solr");// final int zkClientTimeout = 20000; // 心跳20秒// final int zkConnectTimeout = 10000; // 设置链接主机超时(单位毫秒)//// solrServer.setDefaultCollection(Const.defaultCollection);// solrServer.setZkClientTimeout(zkClientTimeout);// solrServer.setZkConnectTimeout(zkConnectTimeout);// } catch (Exception e) {// e.printStackTrace();// }// }// return solrServer;// } //支持大并发方法 public static CloudSolrServer getSolrServer() { if (solrServer == null) { synchronized (myCloudSolrServer.class) { if (solrServer == null) { try { solrServer = new CloudSolrServer(Const.ZK_HOST + "/solr"); final int zkClientTimeout = 20000; // 心跳20秒 final int zkConnectTimeout = 10000; // 设置链接主机超时(单位毫秒) solrServer.setDefaultCollection(Const.defaultCollection); solrServer.setZkClientTimeout(zkClientTimeout); solrServer.setZkConnectTimeout(zkConnectTimeout); } catch (Exception e) { e.printStackTrace(); } } } } return solrServer; }}
3 急群中可以指定到某个分片
public static void main(String[] args) throws IOException, SolrServerException { String url= "node1:8983/solr/core_shard1_replica1"; String defaultCollection = "collection1"; HttpSolrServer server = new HttpSolrServer (url); server.setDefaultCollection(defaultCollection); for (int i = 0; i < 1000; ++i) { SolrInputDocument doc = new SolrInputDocument(); doc.addField("cat", "book"); doc.addField("id", "book-" + i); doc.addField("name", "The Legend of Po part " + i); server.add(doc); if (i % 100 == 0) server.commit(); // periodically flush } server.commit(); }
注意,在建立索引的时候,不要每一个就去commit,为了提高效率,一般用
Collectiondocs = new ArrayList (); for(){ SolrInputDocument doc = new SolrInputDocument(); docs.add(doc); } server.add(docs); server.commit();
其实 server.commit()效率也不高,一般用软提交
"solrcloud和solr在集群中建立索方法是什么"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
方法
分布式
效率
链接
集群
主机
内容
单位
更多
知识
索引
实用
最大
学有所成
接下来
困境
实际
情况
文章
时候
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全的一段话
郧西互联网软件开发品质保障
平湖市软件开发公司
Java 关联关系落数据库
升级bios连不上服务器
手机维修网络安全吗
财务软件的数据库nas
海量数据库hbase
东莞哪家软件开发好
黄金旋风什么时候出新服务器
19浙江省数据库技术三级
软件开发创新大赛
斐讯智能插座不能加网服务器关不
下列哪个数据库收录地方志
微信如何联系到服务器
网络安全运维数据库
数据库表数据取前10000
java 分布式数据库
个人电脑和服务器的区别
义乌学校软件开发
开放无线网络安全吗
和平精英服务器爆满怎么解决
昆明互联网科技产业园
升级bios连不上服务器
ftp服务器文件删除
日照商城软件开发哪家好
数据库分区 索引
dz论坛服务器配置
vba 列表框数据库
在cmd中删除数据库表