#当前架构 heka(日志收集器) -> ElasticSearch(分布式搜索引擎,相当于数据库) -> Kibana(界面展现)
##Heka
- 日志收集服务
- Mozilla出品
- Golang编写
- 轻量却功能强大
- 灵活易用
- Go/Lua扩展
Heka用户:
- Mozilla(FireFox)
- Disqus(最流行的评论服务)
##ElasticSearch
- 分布式集群
- 非常便捷的扩容,新加节点自动重新分片
- 强大的全文索引,搜索性能非常好,支持非常复杂的查询
- 不够可靠,不够稳定,但集群情况下开启复制/备份可一定程度弥补这个问题
- 存储成本高,常用数据会加载到内存中,所以是内存大户,而且Java的内存管理不稳定
##Kibana
- 灵活定制的前端界面
- 比较漂亮的图形展示
#关于日志系统的存储选择
- 需要实时搜索,所以要支持全文索引
- 又有分析/统计需求
- 每日数据量大,历史积累数据量大
因为这个缘故:
- 纯MySQL不适合,like性能太差,而且数据量巨大时的统计性能也很差
- 但MySQL有一些全文索引的插件,问题是木有合适的集群化方案,sharding方案太蛋疼