rails elasticsearch searchkick用法
1.安装elasticsearch 之前要先安装java8:  参考https://www.elastic.co/guide/en/elasticsearch/reference/current/zip-targz.html#install-targzwget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.2.tar.gz sha1sum elasticsearch-5.5.2.tar.gz tar -xzf elasticsearch-5.5.2.tar.gz cd elasticsearch-5.5.2/
2.启动elasticsearch:进入elasticsearch目录: ./bin/elasticsearch -d 后台执行ps aux|grep elasticsearch可以查看是否启动
3.查看elasticsearch状态
curl -XGET localhost:9200
{"status" : 200,"name" : "She-Venom","cluster_name" : "elasticsearch","version" : {"number" : "1.7.2","build_hash" : "e43676b1385b8125d647f593f7202acbd816e8ec","build_timestamp" : "2015-09-14T09:49:53Z","build_snapshot" : false,"lucene_version" : "4.10.4"},"tagline" : "You Know, for Search"}
或
GET /
{
  "name" : "Cp8oag6",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA",
  "version" : {
    "number" : "5.5.2",
    "build_hash" : "f27399d",
    "build_date" : "2016-03-30T09:51:41.449Z",
    "build_snapshot" : false,
    "lucene_version" : "6.5.1"
  },
  "tagline" : "You Know, for Search"
}
rails中使用searchkick
1.添加gem
gem 'searchkick'
2.配置model
class Product < ActiveRecord::Base searchkick end
3.reindex
rake searchkick:reindex:all 或 单独对某一个model
rake searchkick:reindex CLASS=your_model_class_name4.测试查询
测试时使用准确查询
 @lessons = Lesson.search params[:search],  fields: [{name: :exact}]
demo:https://www.driftingruby.com/episodes/searchkick-and-elasticsearch
http://billhung.logdown.com/posts/393386
tutorial:http://www.munocreative.com/nerd-notes/tutor-portal
api:http://www.rubydoc.info/gems/searchkick/1.3.1参考文档:https://stackoverflow.com/questions/25052973/rails-elasticsearch-searchkick 
常见错误
1Connection refused - connect(2) for "localhost" port 9200)
表结构改变一定要在启动elasticsearch的情况下,重新执行rake searchkick:reindex CLASS=your_model_class_name,再对这个model进行操作(比如添加数据等)
2启动elastic Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME
如果在服务器中新安装了java,要重新启动一下
3 There is insufficient memory for the Java Runtime Environment to continue.
修改elasticksearch/config/jvm.options,将xms 和 xmx设置教小一些
-Xms512m
-Xmx512m
rails elasticsearch searchkick用法的更多相关文章
- Elasticsearch SQL用法详解
		Elasticsearch SQL用法详解 mp.weixin.qq.com 本文详细介绍了不同版本中Elasticsearch SQL的使用方法,总结了实际中常用的方法和操作,并给出了几个具体例子 ... 
- Elasticsearch match_phrase用法
		目前有用到的用法如下: post /index_name/_search { "query" : { "match_phrase": { "nickn ... 
- Elasticsearch常见用法-入门
		前台启动 默认是只有本地可以访问 ./bin/elasticsearch 远程访问 修改elasticsearch.yml,把network.host(注意配置文件格式不是以 # 开头的要空一格, : ... 
- Elasticsearch基本用法(2)--Spring Data Elasticsearch
		Spring Data Elasticsearch是Spring Data项目下的一个子模块. 查看 Spring Data的官网:http://projects.spring.io/spring-d ... 
- Elasticsearch基本用法(1)--原生操作
		2.2.创建索引 2.2.1.语法 创建索引的请求格式: 请求方式:PUT 请求路径:/索引库名 请求参数:json格式: { "settings": { "number ... 
- Elasticsearch常见用法-分布式集群
		集群内部工作方式 Elasticsearch用于构建高可用和可扩展的系统.扩展的方式可以是购买更好的服务器(纵向扩展(vertical scale or scaling up))或者购买更多的服务器( ... 
- ElasticSearch基本用法
		最大的特点: 1. 数据库的 database, 就是 index 2. 数据库的 table, 就是 tag 3. 不要使用browser, 使用curl来进行客户端操作. 否则会出现 jav ... 
- elasticsearch 基本用法
		最大的特点: 1. 数据库的 database, 就是 index 2. 数据库的 table, 就是 tag 3. 不要使用browser, 使用curl来进行客户端操作. 否则会出现 jav ... 
- ElasticSearch使用spring-data-elasticSearch的用法
		spring-data-Elasticsearch 使用之前,必须先确定版本,elasticsearch 对版本的要求比较高. spring和elasticsearch有两种链接方式,一种是用TCP协 ... 
随机推荐
- BZOJ 3566 [SHOI2014]概率充电器 ——期望DP
			期望DP. 补集转化,考虑不能被点亮的情况, 然后就是三种情况,自己不能亮,父亲不能点亮它,儿子不能点亮它. 第一次计算比较容易,第二次计算的时候需要出去第一次的影响,因为一条线只能传导一次 #inc ... 
- BZOJ 1855 [Scoi2010]股票交易 ——动态规划
			DP方程是比较简单的,主要有三种:什么都不做.买入.卖出. 发现买入卖出都是$\Theta (n^3)$但是转移方程都是线性的,而且决策和当前的情况是分开的. 所以可以单调队列优化. 复杂度$\The ... 
- 洛谷 [P3265] 装备购买
			线性基 通过题目描述可以感觉到就是要求线性基, 线性基的求法是高斯消元,消完以后剩下的x的系数非 0 的就是线性基 本题有一个贪心策略,每次挑选价格最小的来消掉其他的元 //可以快排预处理 #incl ... 
- *Codeforces961G. Partitions
			$k \leq n \leq 100000$,求式子$Ans=\sum_{i=1}^n w_i\sum_{j=1}^n j\binom{n-1}{n-j} \{ ^{n-j}_{k-1} \}$. 题 ... 
- 使用 ftrace 调试 Linux 内核,第 2 部分
			ftrace 操作概述 使用 ftrace 提供的跟踪器来调试或者分析内核时需要如下操作: 切换到目录 /sys/kernel/debug/tracing/ 下 查看 available_tracer ... 
- 如何细粒度地控制你的MyBatis二级缓存(mybatis-enhanced-cache插件实现)
			前几天网友chanfish 给我抛出了一个问题,笼统地讲就是如何能细粒度地控制MyBatis的二级缓存问题,酝酿了几天,觉得可以写个插件来实现这个这一功能.本文就是从问题入手,一步步分析现存的MyBa ... 
- Spring Boot使用Schedule实现定时任务
			适用的工具是:Schedule 集成步骤: 1.开启Schedule支持 package com.jsoft.springboottest.springboottest1; import org.sp ... 
- Go -- PipleLine
			1.pipeline的产生 从一个现象说起,有一家咖啡吧生意特别好,每天来的客人络绎不绝,客人A来到柜台,客人B紧随其后,客人C排在客人B后面,客人D排在客人C后面,客人E排在客人D后面,一直排到店面 ... 
- 【Hibernate】(2)Hibernate配置与session、transaction
			1. Hibernate经常使用配置 使用hibernate.default_schema属性能够让全部生成的表都带一个指定的前缀. 2. session简单介绍 不建议直接使用jdbc的connec ... 
- C# 实体类序列化与反序列化一 (XmlSerializer)
			/// <summary> /// 实体类序列化的反序列化的类 /// </summary> /// <typeparam name="T">& ... 
