初窥ElasticSearch

官网上面的,不知道讲的是什么。。

youtube上面有一个start with,内容是在windows以下跑这个elastic search,然后用一个fidler工具可视化測试

https://www.youtube.com/watch?

v=60UsHHsKyN4

粗略看起来。事实上es和其它db没什么大差别,仅仅是在搜索上有非常多强大功能,所以非常适合用在须要搜索的项目。貌似用curl发送一个JSON格式的数据(实际上是命令)到es就能够做CRUD

elasticsearch权威指南。一本书,或许有帮助。在gitbook上正在翻译。

下载下来看,翻译的事实上挺不错。

虽说看英文版原汁原味,可是看中文还是快上非常多。

。下载下来叫LearnElasticSearch.pdf

http://es.xiaoleilu.com

一个简单的es介绍,中文的看起来快

http://www.elasticsearch.cn

一个入门型的指导,可惜是gradle的。

http://java.dzone.com/articles/first-step-spring-boot-and

文档,来自spring io,简单讲了一下springboot里面能够直接应用elastic search

http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-nosql.html


花了一晚上看了不少资料,才堪堪搞明确这个东西是啥玩意。

资质驽钝。

。。ES本质上事实上真的和Mongodb之类的NoSql数据库没有特别大的差别。预计最大的长处是模糊搜索。范围搜索之类的功能,所以名字就非常强调search。我一開始以为这个是用来搜索的算法库,,结果终于还是个数据库。。希望我如今的理解是肤浅的。希望它功能远远不止这些。

。。

依据LearnElasticSearch.pdf,能够初步学习ES在命令行以下的一些基本知识,事实上就是数据库的CRUD之类的。还有更高级一点的就是ES的搜索功能(重点)。


C:

curl -XPUT localhost:9200/megacorp/employee/1 -d ‘{“name”:”charlie”}’

R:

curl -XGET localhost:9200/megacorp/employee/1

U:

curl -XPOST localhost:9200/megacorp/employee/1 -d ‘{“last_name”:”peng”}’

D:

curl -DELETE localhost:9200/megacorp/employee/1

在基础的CRUD之后。ElasticSearch提供了强大的搜索功能。

搜索的时候,事实上是发送一个json数据到一个url,然后这个json数据包里面包括了搜索条件。

curl -XGET localhost:9200/magacorp/employee/_search?pretty -d ‘{“query”:{“match”:{“last_name”:”huang”}}}’

这里的json称谓DSL,就是所谓的Domain Specific Language

更复杂的DSL例如以下,

{

“query” : {

“filtered” : {

“filter” : {

“range” : {

“age” : { “gt” : 30 }

}

},

“query” : {

“match” : {

“last_name” : “Smith”

}

}

}

}

全文搜索:

{

“query” : {

“match” : { “last_name” : “John Smith”}

}

}

这个会依据搜索评分按顺序给出反馈

{

“query” : {

“match_phrase” : { “last_name” : “John Smith”}

}

}

这个会精确搜过该phrase

初窥ElasticSearch的更多相关文章

  1. Scrapy001-框架初窥

    Scrapy001-框架初窥 @(Spider)[POSTS] 1.Scrapy简介 Scrapy是一个应用于抓取.提取.处理.存储等网站数据的框架(类似Django). 应用: 数据挖掘 信息处理 ...

  2. 初窥Kaggle竞赛

    初窥Kaggle竞赛 原文地址: https://www.dataquest.io/mission/74/getting-started-with-kaggle 1: Kaggle竞赛 我们接下来将要 ...

  3. scrapy2_初窥Scrapy

    递归知识:oop,xpath,jsp,items,pipline等专业网络知识,初级水平并不是很scrapy,可以从简单模块自己写. 初窥Scrapy Scrapy是一个为了爬取网站数据,提取结构性数 ...

  4. WWDC15 Session笔记 - Xcode 7 UI 测试初窥

    https://onevcat.com/2015/09/ui-testing/ WWDC15 Session笔记 - Xcode 7 UI 测试初窥 Unit Test 在 iOS 开发中已经有足够多 ...

  5. Java发送邮件初窥

    一.背景 最近朋友的公司有用到这个功能,之前对这一块也不是很熟悉,就和他一起解决出现的异常的同时,也初窥一下使用Apache Common Email组件进行邮件发送. 二.Java发送邮件的注意事项 ...

  6. 【软件工程】week5-个人作业-敏捷开发方法初窥

    敏捷开发方法初窥 引言:本周的软件工程个人博客作业是阅读关于敏捷开发方法的文章(http://martinfowler.com/agile.html),并撰写自己的读后感.文章内容非常丰富,对敏捷开发 ...

  7. 网页3D效果库Three.js初窥

    网页3D效果库Three.js初窥 背景 一直想研究下web页面的3D效果,最后选择了一个比较的成熟的框架Three.js下手 ThreeJs官网 ThreeJs-github; 接下来我会陆续翻译 ...

  8. iOS视频直播初窥:高仿<喵播APP>

    视频直播初窥 视频直播,可以分为 采集,前处理,编码,传输, 服务器处理,解码,渲染 采集: iOS系统因为软硬件种类不多, 硬件适配性比较好, 所以比较简单. 而Android端市面上机型众多, 要 ...

  9. php面向对象(一) 初窥

    初窥php面向对象 1.类:类就是属性和方法的集合 是一个抽象的概念比如生活中的“人”,"汽车"2.对象:对象是具体的事物 比如一叫“小强”的人 一辆叫“奥迪a7”的汽车3.类和对 ...

随机推荐

  1. Kafka查看偏移量报错:WARN WARNING: ConsumerOffsetChecker is deprecated and will be dropped in releases following 0.9.0. Use ConsumerGroupCommand instead.

    Kafka0.9版本后,命令ConsumerOffsetChecker已弃用,用新的命令来查. // 列表 bin/kafka-consumer-groups.sh --zookeeper local ...

  2. Spark导论(Spark自学一)

    1.1 Spark是什么? Spark是一个用来实现快速而通用的集群计算的平台. 1.2 一个大一统的软件栈 Spark项目包含多个紧密集成的组件. 1.2.1 Spark Core Spark Co ...

  3. js获取url參数值的两种方式具体解释

    有个url例如以下: http://passport.csdn.net/account/login? from=http%3a%2f%2fwrite.blog.csdn.net%2fpostedit ...

  4. Python——装饰器与面向切面编程

    今天来讨论一下装饰器.装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较 为经典的有插入日志.性能测试.事务处理等.装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函 ...

  5. TP框架I方法详解

    TP框架I方法详解   I方法是ThinkPHP众多单字母函数中的新成员,其命名来自于英文Input(输入),主要用于更加方便和安全的获取系统输入变量,可以用于任何地方,用法格式如下:I('变量类型. ...

  6. Android重写ViewPager改动滑动灵敏度

        使用ViewPager作为一个页面进行切换.里面能够存放非常多View,但有时在操作View时不小心滑动一下就有可能跳到下一页,这并非我们想要的,这里就须要重写ViewPager改动它的滑动条 ...

  7. LINUX经常使用命令小整理

    系统操作: 1.重新启动机器:reboot. 2.查看某程序的进程:ps -ef|grep xxx(比如:ps -ef|grep tomcat). 3.查看当前linux系统系统版本号:lsb_rel ...

  8. 一个256行代码的第一人称引擎(Direct2D移植版)

    这篇文章是对"a first person engine in 265 lines"[1]的一个Direct2D版的移植.看到这篇文章我立刻就想到了QUAKE,当然QUAKE使用了 ...

  9. Java 连接使用 Redis

    1. 开始在 Java 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 Java redis 驱动,且你的机器上能正常使用 Java. 首先你需要下载驱动包,下载 jedis.j ...

  10. NodeJS在CentOs7下安装

    node下载地址:https://nodejs.org/en/download/ 1.安装gcc $ yum install gcc-c++ 2.解压最新版本 $ mkdir /usr/local/n ...