a 下载地址
https://nodejs.org/en/download/
b 解压,分两步进行1
2xz -d node-v8.9.4-linux-x64.tar.xz
tar -xvf node-v8.9.4-linux-x64.tar
c 配置环境变量
修改/etc/profile的PATH变量1
export PATH=$PATH:/data/software/node-v8.9.4-linux-x64/bin
d 使环境变量生效1
source /etc/profile
a 下载地址
https://nodejs.org/en/download/
b 解压,分两步进行1
2xz -d node-v8.9.4-linux-x64.tar.xz
tar -xvf node-v8.9.4-linux-x64.tar
c 配置环境变量
修改/etc/profile的PATH变量1
export PATH=$PATH:/data/software/node-v8.9.4-linux-x64/bin
d 使环境变量生效1
source /etc/profile
Top命令监控某个进程的资源占有情况 下面是各种内存: VIRT:virtual memory usage
1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等
2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长 100m,而不是实际的使用量
RES:resident memory usage 常驻内存
1、进程当前使用的内存大小,但不包括swap out
2、包含其他进程的共享
3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反
4、关于库占用内存的情况,它只统计加载的库文件所占内存大小
人生若只如初见,何事秋风悲画扇。
template字段用来匹配索引名字
keyword是String的一种子类型,说明字段是not not_analyzed
使用的时候将//开头的两行注释去掉1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64PUT /_template/template1
{
"order": 0,
"template": "index*",
"mappings": {
"_default_": {
"dynamic_templates": [
//针对特别字段进行定义
{
"long_to_date": {
"mapping": {
"doc_values": true,
"type": "date"
},
"match": "dt",
"match_mapping_type": "long"
}
},
//以下是通用字段定义
{
"long2integer": {
"mapping": {
"doc_values": true,
"type": "integer"
},
"match": "*",
"unmatch":"dt",
"match_mapping_type": "long"
}
},
{
"string2keyword": {
"mapping": {
"index": "not_analyzed",
"omit_norms": true,
"doc_values": true,
"type": "keyword"
},
"match": "*",
"match_mapping_type": "string"
}
},
{
"date": {
"mapping": {
"doc_values": true,
"type": "date",
"format":"strict_date_optional_time||epoch_millis"
},
"match": "*",
"match_mapping_type": "date"
}
}
],
"_all": {
"enabled": false
}
}
}
}
From: http://blog.csdn.net/lionel_fengj/article/details/78367570
在 ES2.x 版本字符串数据是没有 keyword 和 text 类型的,只有string类型,ES更新到5版本后,取消了 string 数据类型,代替它的是 keyword 和 text 数据类型,那么 keyword 和 text 有什么区别了?
Text 数据类型被用来索引长文本,比如说电子邮件的主体部分或者一款产品的介绍。这些文本会被分析,在建立索引前会将这些文本进行分词,转化为词的组合,建立索引。允许 ES来检索这些词语。text 数据类型不能用来排序和聚合。
curl -XPUT 'localhost:9200/employees/' -d '
{
"mappings":{
"employee":{
"properties": {
"intro":"text"
}
}
}
}
'
Keyword 数据类型用来建立电子邮箱地址、姓名、邮政编码和标签等数据,不需要进行分词。可以被用来检索过滤、排序和聚合。keyword 类型字段只能用本身来进行检索。
curl -XPUT 'localhost:9200/employees/' -d '
{
"mappings":{
"employee":{
"properties": {
"name":"keyword"
}
}
}
}
'
注意,如果不像以上通过mapping 配置索引时,遇到字符串类型时候的字端,系统会默认为“text”类型。检索的时候对字符串进行分析。所以要想只通过字段本身来进行检索,还是需要按照上面把该字段改为“keyword”类型。
No search type for [count]
可能是因为版本没有选对。比如使用5.X的Elasticsearch,在Grafana上的DataSource总选择的却是2.X
使用filter搜索不到数据
使用
1 | GET /tracker/_search |
语句搜索数据时,无法搜到。当使用1
2
3
4
5
6
7
8
9
10
11
12GET /tracker/_search
{
"query": {
"bool": {
"filter": {
"term": {
"bro": "chrome"
}
}
}
}
}
搜索数据时,则可以。这其中最关键的是使用filter时,过滤term需要使用英文小写。
在Elasticsearch中对 text 类型的字段进行聚合异常Fielddata is disabled,Set fielddata=true
以下是从google play上下架你的App的步骤: