1. 首页
  2. elasticsearch教程

10-十、Elasticsearch 教程: 准备数据

上一章节我们体验了下结巴分词器,对中文的分词效果真的好好啊,是不是跃跃欲试,想要赶紧怎么把自己的数据添加到 Elasticsearch

别急别急,在添加数据之前我们必须先要对自己的数据进行格式化

本章节我们就来讨论如何格式化数据

对于搜云库技术团队 的搜索功能,我初步的计划是把用户信息放到 Elasticsearch 上,于是我对此做了一些简单的分析

索引

网站的用户分为两大类,版主以上级别的用户和普通注册的用户

根据前面所学,我们知道 Elasticsearch 也有数据库、表结构和行数据的概念,分别是索引、映射和文档

所以我们首先需要创建两个索引 user_adminuser,分别用于索引版主和普通用户

而且它们有功能的类型 type,都是 user

字段

因为具有相同的类型,所以我们的版主和普通用户的信息几乎是一模一样的,都包括以下字段

字段 类型 说明
id int ID
nickname string 昵称
description string 用户简介
street string 当前居住街道
city string 当前所在城市
state string 当前所在省
zip int 邮政编码
location array 地理位置,两个元素数组,第一个表示经度,第二个表示纬度
money int 当前站币
tags array 标签
vitality float 活跃度,满分为10分

数据

我们需要把数据库中用户相关的所有数据读出来,然后筛选出上面的字段,拼接成多个 JSON 对象

1、版主 ( user_admin )


[ { "id":1, "nickname":"站长", "description":"创业是的天赋是天生的,而我偏偏是后生的", "street":"东四十条", "city":"Beijing", "state":"Beijing", "zip":"100007", "location":[116.432727,39.937732], "money":5201314, "tags":["PHP", "Python"], "vitality":"9.0" }, { "id":2, "nickname":"雅少", "description":"虚怀若谷", "street":"四川大学", "city":"Chengdu", "state":"Sichuan", "zip":"610044", "location":[104.094537,30.640174], "money":68023, "tags":["Python", "HTML"], "vitality":"7.8" }, { "id":3, "nickname":"歌者", "description":"程序设计也是设计,研发新菜也是研发", "street":"五道口", "city":"Beijing", "state":"Beijing", "zip":"100083", "location":[116.346346,39.999333], "money":71128, "tags":["Java", "Scala"], "vitality":"6.9" } ]

2、普通用户


[ { "id":1, "nickname":"question", "description":"问题少年也是少年", "street":"张江高科技园区", "city":"Shanghai", "state":"Shanghai", "zip":"201204", "location":[121.60632,31.199305], "money":13648, "tags":["VUE", "HTML"], "vitality":"8.8" }, { "id":2, "nickname":"枫晚", "description":"停车坐爰枫林晚", "street":"苏州大学", "city":"Suzhou", "state":"Jiangsu", "zip":"215006", "location":[120.65426,31.30797], "money":10235, "tags":["Java", "Android"], "vitality":"3.5" } ]

希望读者能够给小编留言,也可以点击[此处扫下面二维码关注微信公众号](https://www.ycbbs.vip/?p=28 "此处扫下面二维码关注微信公众号")

看完两件小事

如果你觉得这篇文章对你挺有启发,我想请你帮我两个小忙:

  1. 关注我们的 GitHub 博客,让我们成为长期关系
  2. 把这篇文章分享给你的朋友 / 交流群,让更多的人看到,一起进步,一起成长!
  3. 关注公众号 「方志朋」,公众号后台回复「666」 免费领取我精心整理的进阶资源教程
  4. JS中文网,Javascriptc中文网是中国领先的新一代开发者社区和专业的技术媒体,一个帮助开发者成长的社区,是给开发者用的 Hacker News,技术文章由为你筛选出最优质的干货,其中包括:Android、iOS、前端、后端等方面的内容。目前已经覆盖和服务了超过 300 万开发者,你每天都可以在这里找到技术世界的头条内容。

    本文著作权归作者所有,如若转载,请注明出处

    转载请注明:文章转载自「 Java极客技术学习 」https://www.javajike.com

    标题:10-十、Elasticsearch 教程: 准备数据

    链接:https://www.javajike.com/article/1253.html

« 11-十一、Elasticsearch 教程: 填充数据
09-九、Elasticsearch 教程: 中文分词 – 结巴分词»

相关推荐

QR code