03-用户画像+Elasticsearch

优点

  • es支持海量数据的写入和更新
  • es可以和hadoop,hive及spark进行集成
  • es支持hivesql的操作,可以通过hivesql将数据导入es
  • es的在进行数据检索查询是速度比较快
  • es是分布式存储

应用

全文检索

全文检索流程:

1-对文档数据(文本数据)进行分词

2-将分词数据建立索引

3-根据分词查询数据

官网 https://www.elastic.co/cn/

ES 分布式搜索服务 文本数据存储

  • 存储单元 shard 分片
  • 副本 默认 2
    • 主分片 副本分片
  • 索引 相同类型数据 先创建索引,然后存储数据
  • 元数据
    • 分片信息,datanode信息
      • 被master管理
  • 自己内部有选举算法实现master选举

es启动命令

python 复制代码
su es
cd
elasticsearch -d

es客户端工具使用

启动

在浏览器输入网址

Pycharm的客户端插件


python 复制代码
# 创建索引
PUT itcast


# 写入 数据
POST itcast/_doc
{
  "name": "张飒",
  "age": 20
}

# 查询数据
GET itcast/_search

# 删除索引
DELETE itcast

# 查看索引配置
GET itcast/_settings

# 修改索引配置
PUT itcast/_settings
{
  "number_of_replicas": "0"
}

elasticsearch 模块安装

python 复制代码
pip install elasticsearch==7.17.3 -i https://mirrors.aliyun.com/pypi/simple

开发

python 复制代码
# 导入模块
# Elasticsearch类封装了操作es的方法
from elasticsearch import Elasticsearch
# 1、创建索引库
es = Elasticsearch(hosts=['192.168.88.166:9200'])
# index='itheima' 指定索引库名
# id=1 指定数据id
# document 指定数据内容
# res = es.index(index='itheima',id=1,document={'name':'张三','age':20,'gender':'男性'})
res = es.index(index='itheima',id=2,document='{"name":"李四","age":22,"gender":"男性"}')
# 查看创建后的信息
# print(res)

# 2、查询创建的数据
# 返回的结果是字典类型,可以按照字典方式进行取值
# 查询所有数据
res = es.search(index='itheima')
print(res["hits"]['hits'][0]['_source'])

# 2-1 按照指定一个字段查询
res = es.search(index='itheima',query={'match':{'name':"李四"}})
print(res["hits"]['hits'][0]['_source'])

# 2-2 按照指定多个字段查询
res = es.search(index='itheima',query={'multi_match':{'query':"李四",'fields':["name",'gender']}})
print(res["hits"]['hits'][0]['_source'])

# 2-3 指定id查询
res = es.get(index='itheima',id=1)
print(res['_source'])
相关推荐
StarChainTech3 分钟前
打造火爆的线上推币机APP:一站式合规娱乐解决方案
大数据·人工智能·物联网·小程序·娱乐·软件需求·共享经济
GeminiJM8 分钟前
亿级向量检索:Elasticsearch vs. Milvus,性能鸿沟与架构抉择
elasticsearch·架构·milvus
LaughingZhu27 分钟前
Product Hunt 每日热榜 | 2026-01-28
数据库·经验分享·神经网络·搜索引擎·chatgpt
Hello.Reader29 分钟前
Flink TaskManager 内存配置从“总量”到“组件”,把资源用在刀刃上
大数据·flink
观远数据29 分钟前
中国式报表是什么?观远BI如何赋能企业数据决策
大数据·数据挖掘·数据分析·时序数据库
小冷coding31 分钟前
【ES】 Elasticsearch在电商系统中的核心应用场景与实践案例
大数据·elasticsearch·搜索引擎
EndingCoder32 分钟前
高级项目:构建一个 CLI 工具
大数据·开发语言·前端·javascript·elasticsearch·搜索引擎·typescript
搞科研的小刘选手32 分钟前
【虚拟现实/人机交互会议】第二届人工智能、虚拟现实与交互设计国际学术会议(AIVRID)
大数据·人工智能·计算机·aigc·虚拟现实·国际学术会议·交互技术
AORUO奥偌33 分钟前
医用气体报警箱:构筑楼层气体安全的监测前哨
大数据·数据库
数说星榆1811 小时前
AI零售:个性化推荐与智能库存管理
大数据·人工智能·零售