目前数据处理方案:
由于各个子系统用的都是mysql,我们采取抓取mysql binlog(DDL和DML)日志的方案,同步数据到mongodb进行数据模型整合。
数据量日渐庞大,mongodb近亿级,单文档将近上百字段,后台对数据的处理显得有些吃力。
预想方案:
想用elasticsearch,将存量数据导入,并且实时同步mongo数据,或者直接同步mysql数据库(太分散,目前先不考虑)。
为什么要用它呢
源于一个令男人听了沉默,女人听了流泪,程序员听了亢奋的字:快
为什么快呢
需要了解他的基本概念和原理了(也是查各种资料,结合大神的帖子加入自己的理解,有什么不对的地方还请多多指教)
基本描述:
elasticsearch是一个底层基于lucene,专门做检索,日志分析的框架。提供分布式文档存储,支持分布式数据检索,可集群n台机器,处理PB级数据。
基本概念:
1.名词与传统数据库对应关系
索引--index(数据库)
类型--type(表)
文档--document(行)
字段--field(列)
分片--shard(负载均衡式分表)----------每个分片都是一个lucene实例
2.查询方式
http Restful API
java API
3.集群
集群简单,可随时水平扩容
官网链接: https://www.elastic.co/
elasticsearch权威指南:https://es.xiaoleilu.com/010_Intro/05_What_is_it.html