elasticsearch type
时间: 2023-04-18 15:01:31 浏览: 139
Elasticsearch中的type是指在一个index中,可以定义多个type来存储不同类型的文档。在Elasticsearch 7.x版本中,type已经被废弃,不再建议使用。相反,建议使用index来代替type,将不同类型的文档存储在不同的index中。这样可以更好地管理数据,并提高搜索效率。
相关问题
Elasticsearch type
在 Elasticsearch 7.x 及以上的版本中,已经废弃了 type 的概念。在创建 index 时,需要指定一个唯一的 index name,然后在该 index 下可以创建多个 document,每个 document 都有一个唯一的 _id。在查询时,可以通过 index 和 _id 来定位到具体的 document。如果需要对 document 进行分类,可以在 document 中添加一个 type 字段来进行区分。但是,type 不再是必须的字段。
请详细解释一下这段代码:services: elasticsearch: image: elasticsearch:7.14.2 container_name: elasticsearch restart: always ports: - 9200:9200 environment: - "TAKE_FILE_OWNERSHIP=true" #volumes 挂载权限 如果不想要挂载es文件改配置可以删除 - "discovery.type=single-node" #单机模式启动 - "TZ=Asia/Shanghai" # 设置时区 - "ES_JAVA_OPTS=-Xms512m -Xmx512m" # 设置jvm内存大小 volumes: - ./elasticsearch/logs:/usr/share/elasticsearch/logs - ./elasticsearch/data:/usr/share/elasticsearch/data - ./elasticsearch/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml ulimits: memlock: soft: -1 hard: -1
这段代码是一个 Docker Compose 文件的一部分,用于配置一个 Elasticsearch 服务。下面是各个配置项的含义:
- `image`: 指定 Elasticsearch 使用的 Docker 镜像版本为 7.14.2。
- `container_name`: 指定 Docker 容器的名称为 `elasticsearch`。
- `restart`: 指定容器在退出时自动重启。
- `ports`: 将 Elasticsearch 的 9200 端口映射到主机的 9200 端口,以便可以通过浏览器访问 Elasticsearch 的 HTTP API。
- `environment`: 设置 Elasticsearch 运行时的环境变量,其中包括 `TAKE_FILE_OWNERSHIP`,它会在容器启动时将文件的所有权归属于 Elasticsearch 用户,以便正确访问挂载的文件;`discovery.type`,它指定 Elasticsearch 运行在单机模式;`TZ`,它设置容器的时区为亚洲上海;`ES_JAVA_OPTS`,它设置 JVM 的内存大小为 512MB。
- `volumes`: 将 Elasticsearch 的日志、数据和配置文件挂载到主机上的指定目录中。
- `ulimits`: 设置容器的资源限制,其中 `memlock` 表示将 Elasticsearch 内存锁定在 RAM 中,以提高性能和稳定性。