1.首先要搭建MongoDB的集群环境(可以参考的个人博客:http://blog.csdn.net/xuguokun1986)
2.比较关键的一点是安装MongoDB和Elasticsear向关联的一个插件,插件的安装方法是(操作目录是集群环境 的master节点的/home/bms/mongodb-3.0.5/bin目录):
./plugin --install com.github.richardwilly98.elasticsearch/elasticsearch-river-mongodb/2.0.9
注意:
1)运行上述命令的时候,要保证机器连接互联网。
2)根据官网提示,mongodb与elasticsearch是配合使用是是有版本要求的,如下图所示:
3)我用的mnogodb的版本是3.0.5,elasticsearch的版本是1.7.1,和上面的版本不是很对应,但是能进行 测试。
3.操纵Elastcisearch创建和Mongodb的联合索引,在Elasticsearch的bin目录下进行输入下列命令:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
4.在Mongodb上做如下操做:
1)在master节点(192.168.100.103)对数据库进行操,创建数据库(mydb),创建数据库的命令是:use mydb。
2)编写代码在mydb数据库中添加一个Collection(相当于结构化数据库的数据库表)users,创建的代码如下:
1 2 3 4 5 6 7 |
3)接着向mydb中插入数据,插入的代码如下:
DBCollection dbColl = db.getCollection("users");//获取Collection
//组织待插入的数据
DBObject data3 = new BasicDBObject();
data3.put("_id",123);
data3.put("cust_Id", "1111111");
data3.put("is_Show", 12);
data3.put("start_time", new Date());
dbColl.insert(data3);
4)在monogdb端验证数据是否插入mydb的users中。
DBObject fields = new BasicDBObject();
fields.put("_id", false);
fields.put("is_Show", true);
fields.put("start_time", true);
DBCursor cur = dbColl.find();
while(cur.hasNext()){
DBObject dbObject = cur.next();
System.out.println(dbObject.toString());
}
5)Myeclipse后台打印结果:
{ "_id" : 123", "cust_Id" : "22222222" , "is_Show" : 1 , "start_time" : { "$date" : "2015-08-01T06:10:41.916Z"}}
5.在Elasticsearch进行如下的验证工作:
1)首先验证刚才创建的myindex索引是否已经创建
curl -XGET 'http://192.168.100.103:9200/_cat/indices?v'
2)试验基本成功,需后续继续挖掘。