博客
关于我
全文搜索引擎ElasticSearch弹性搜索教程(二)简单插入数据(使用bash脚本语言)
阅读量:584 次
发布时间:2019-03-11

本文共 1519 字,大约阅读时间需要 5 分钟。

安装Elasticsearch并创建简单搜索数据库

作为数据库爱好者,您已经了解了如何安装Elasticsearch,现在让我们一起创建一个简单的搜索数据库,方便您进行日常开发和测试。下面是详细的操作指南。

一、启动Elasticsearch

启动Elasticsearch前,请确保已完成安装。开启终端,并进入Elasticsearch的安装目录,执行以下命令:

./bin/elasticsearch -d

二、验证启动情况

确保命令正确执行,可以运行以下命令查看启动状态:

ps aux | grep elasticsearch

성공显示会有 elasticsearch 进程运行,说明Elasticsearch已经成功启动。

三、插入数据

接下来,我们将使用curl命令插入一些测试数据。假设您的数据库结构如下:

  • 数据库名:csdn
  • 表名(index)**:**people
  • 文档ID:1
  • 字段:name、age、profile、hobby

插入一个测试文档,执行以下命令:

curl -X PUT "localhost:9200/csdn/people/1?pretty" -H 'Content-Type: application/json' -d({    "name": "$2",    "age": "$3",    "profile": "$4",    "hobby": ["$5", "$6"]})

请注意参数的顺序和格式,确保脚本能够正常执行。

四、批量插入数据(可选)

如果您需要批量插入数据,可以根据实际需求修改脚本。以下是一个简单的Bash脚本模板:

#!/bin/bash# 使用方法: sh 01-insert-data.sh ID name age profile hobby ...# 检查输入参数if [[ $# -gt 1 ]]; then  ID=$1  name=$2  age=$3  profile=$4  hobby=$5 兴趣="}"  if [[ $6 ]]; then hobby=','$6'; fi  if [[ $7 ]]; then hobby=','$7'; fi  data="{    \"name\": \"$name\",    \"age\": \"$age\",    \"profile\": \"$profile\",    \"hobby\": [${hobby}]  }"  curl -X PUT "localhost:9200/csdn/people/${ID}?pretty" -H 'Content-Type: application/json' -d ${data}  exit 0fi

五、验证数据插入

运行脚本后,执行以下命令查看数据是否已插入:

curl -X GET "localhost:9200/csdn/people/1/_source

预期返回的JSON数据应与插入的数据相符。如还需要更详细的操作,请参考ES 官方文档。

六、常见问题解决

  • 安装目录错误:请确保运行命令时所在目录是Elasticsearch的安装目录。
  • 参数顺序错误:脚本对参数的依次验证至关重要,乱序可能导致失败。
  • 字符处理问题:脚本对引号和空格处理严格,确保输入无误。
  • 超时问题:可考虑提高ES节点数或优化网络连接。
  • 七、后续操作

    • 如果需要归档数据,可以使用Elasticsearch的restapi进行CRUD操作。
    • 对于更复杂的应用场景,建议结合Elasticsearch的高级功能,如组合索引、动态映射等。

    希望这篇文档能为您提供实用的帮助!

    转载地址:http://cnftz.baihongyu.com/

    你可能感兴趣的文章
    python系列【仅供参考】:python二进制转10进制
    查看>>
    Python基础-函数篇
    查看>>
    python基础---->常用模块
    查看>>
    Python基础(2):控制结构
    查看>>
    Python基础 | 关于“循环”那些事
    查看>>
    python系列【仅供参考】:python之subprocess模块rsync拉取文件
    查看>>
    python系列【仅供参考】:python 远程rdp
    查看>>
    python基础
    查看>>
    Python基本语法与变量类型
    查看>>
    python基本数据类型(容器)- tuple list dict set
    查看>>
    python基本工资的调整方案_Python薪资又涨了!这可咋办!
    查看>>
    Python基准测试和性能分析内存管理和垃圾回收
    查看>>
    Python基于RESTful风格的接口自动化测试实战
    查看>>
    python基于flask搭建http服务(四)—— Docker容器化部署
    查看>>
    python基于flask搭建http服务(二)—— 实现Excel上传、数据清洗、入库
    查看>>
    python基于flask搭建http服务(三)—— 使用gunicorn部署项目
    查看>>
    python基于flask搭建http服务(一)—— 实现数据查询和Excel导出
    查看>>
    Python块键盘/鼠标输入
    查看>>
    python在心理学研究中的应用有哪些_心理学在线研究可用平台简介和应用进展
    查看>>
    python在使用HTMLTestRunner时,报告为空,错误提示<_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf_8'>...
    查看>>