目录
02、Springboot+ElasticSearch构建博客检索系统
第一次周会
大数据总监、搜狐四年-中国搜索
【mapReduce】sql
大数据代表:Hadoop、spark、es、flink
zookeeper、kafka、HBASE、
集群规模太大,会出现小数据量不会出现的问题。
高考项目:上千万数据量。学习大数据官方文档,解决方案...
软件版本太多了,版本变化非常多,兼容性问题。
需要沉淀!发挥趋势:大数据+人工智能、大数据+xxx...需求较多。
深入项目中去,把问题研究透,就业优势会大一些。
log存储到hdfs或es
es同步:id号、时间戳
es安装kopf插件
01、ElasticSearch-学习总结
上周主要学习了这些内容并实际动手练习了其中的部分内容::
- es基本概念、es的安装、es中head插件的安装及使用(完成图形化界面的效果、完成索引数据的查看);
- 使用postman与es进行交互,练习了GET、PUT、POST、Delete等索引方法的使用;
- ik分词器的安装及使用;
- es集群的概念、简单搭建了集群,设置了mappings并进行了简单的数据插入测试;
- 学习了使用Java客户端操作es索引库
能够使用java客户端完成创建、删除索引的操作
能够使用java客户端完成文档的增删改的操作
能够使用java客户端完成文档的查询操作
能够完成文档的分页操作
能够完成文档的高亮查询操作
能够搭建Spring Data ElasticSearch的环境
能够完成Spring Data ElasticSearch的基本增删改查操作
能够掌握基本条件查询的方法命名规则
- 使用springdata与es进行交互,学习了springdata创建索引与增删索引文档的内容。
- 导入Spring Data ElasticSearch坐标;
- 创建applicationContext.xml配置文件,引入elasticsearch命名空间;
- 编写实体Article;
- 编写Dao;
- 编写Service;
- 配置applicationContext.xml;
- 配置实体(基于spring data elasticsearch注解配置索引、映射和实体的关系);
- 创建测试类SpringDataESTest。
索引库查询_queryString查询
02、Springboot+ElasticSearch构建博客检索系统
视频地址:
博客笔记:
01、将MySQL数据同步到ES中
开发技术栈:

  
   - 
    
     
    
    
     
      input {
     
    
- 
    
     
    
    
     
          jdbc {
     
    
- 
    
     
    
    
             
      # 指定jdbc驱动包位置(不同版本处理不同,此处可直接将mysql驱动包放置logstash-core/lib/jars下,无需配置jdbc_driver_library)
     
    
- 
    
     
    
    
     		
      # "C:\\logstash-6.3.2\\mysql-connector-java-5.1.31.jar" /xxx/logstash-7.5.0/mysql-connector-java-5.1.31.jar
     
    
- 
    
     
    
    
     
              jdbc_driver_library => 
      "F:\\logstash\\logstash-6.3.2\\mysql-connector-java-5.1.31.jar"
     
    
- 
    
     
    
    
             
      # 要使用的驱动包类,有过java开发经验的应该很熟悉这个了,不同的数据库调用的类不一样。
     
    
- 
    
     
    
    
     
              jdbc_driver_class => 
      "com.mysql.jdbc.Driver"
     
    
- 
    
     
    
    
             
      # mysql数据库的连接信息
     
    
- 
    
     
    
    
     
              jdbc_connection_string => 
      "jdbc:mysql://127.0.0.1:3306/blog"
     
    
- 
    
     
    
    
             
      # mysql用户
     
    
- 
    
     
    
    
     
              jdbc_user => 
      "root"
     
    
- 
    
     
    
    
             
      # mysql密码
     
    
- 
    
     
    
    
     
              jdbc_password => 
      "root"
     
    
- 
    
     
    
    
             
      # 定时任务,多久执行一次查询,默认一分钟,如果想要没有延迟,可以使用 schedule => "* * * * * *"
     
    
- 
    
     
    
    
             
      # 定时任务,默认一分钟,"* * * * *"代表设置为无延迟
     
    
- 
    
     
    
    
     
              schedule => 
      "* * * * *"
     
    
- 
    
     
    
    
             
      # *清空存储在logstash的上一次的sql_last_value记录*
     
    
- 
    
     
    
    
     
              clean_run => 
      true
     
    
- 
    
     
    
    
             
      # 要执行的语句
     
    
- 
    
     
    
    
     
              statement => 
      "select * FROM t_blog WHERE update_time > :sql_last_value AND update_time < NOW() ORDER BY update_time desc"
     
    
- 
    
     
    
    
     
          }
     
    
- 
    
     
    
    
     
      }
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      output {
     
    
- 
    
     
    
    
     
          elasticsearch {
     
    
- 
    
     
    
    
     		
      # es host : port
     
    
- 
    
     
    
    
     
              hosts => [
      "127.0.0.1:9200"]
     
    
- 
    
     
    
    
             
      # 索引
     
    
- 
    
     
    
    
     
              index => 
      "blog"
     
    
- 
    
     
    
    
             
      # _id (取到mysql数据库记录的id)
     
    
- 
    
     
    
    
     
              document_id => 
      "%{id}"
     
    
- 
    
     
    
    
     
          }
     
    
- 
    
     
    
    
     
      }
     
    
 logstash -f ../config/mysql.conf
- -f:指定自己设置的配置文件
- config/mysql.conf:配置文件存储位置
使用kibana开发工具查看mysql数据是否成功同步到es中:
GET /blog/_stats
02、SpringBoot集成ES
SpringBoot框架内置Tomcat,使用idea时不需要再配置tomcat了。

RestStatusException{status=500} org.springframework.data.elasticsearch.RestStatusException: Elasticsearch exception [type=json_parse_exception, reason=Current token (VALUE_NUMBER_INT) not of boolean type
at [Source: org.elasticsearch.transport.netty4.ByteBufStreamInput@4fcc28b8; line: 1, column: 137]]; nested exception is ElasticsearchStatusException[Elasticsearch exception [type=json_parse_exception, reason=Current token (VALUE_NUMBER_INT) not of boolean type
at [Source: org.elasticsearch.transport.netty4.ByteBufStreamInput@4fcc28b8; line: 1, column: 137]]]
错误原因:当前最新版springboot 2.7.6相匹配的spring-boot-starter-data-elasticsearch支持的是elasticsearch 7.x.x版本,然而本门课程使用的是elasticsearch 6.3.2,解决方法:①升级elasticsearch到7.x.x版本;②使用过去的springboot版本,我尝试了2.2.0.RELEASE版本的springboot,这个错误就不再出现了,推荐此方法因为比较容易修改只需更新pom.xml。
03、本周学习计划
Hadoop
转载:https://blog.csdn.net/weixin_44949135/article/details/129026825
 
					






 
 








