rails elasticsearch searchkick用法
1.安装elasticsearch 之前要先安装java8:  参考https://www.elastic.co/guide/en/elasticsearch/reference/current/zip-targz.html#install-targz
wget 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_name
4.测试查询
测试时使用准确查询
 @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">& ...