文档章节

一次大数据量日志存储升级改造

新栋BOOK
 新栋BOOK
发布于 2016/12/12 19:22
字数 722
阅读 119
收藏 1
点赞 0
评论 0

商家操作日志的使命就是记录卖家对商品、订单等业务的操作。以便于后续分析。我们在做技术选型的时候确定了kafka+storm+elasticsearch,当前的架构如下:

 

我们现在面临这样的问题,数据全部落到了ES上面,ES数据全部加载到内存里面之后,当前2个月的数量达到数十T之多。这个量对资源的需求非常大,而且我们的要求是同时要打开三个月的数据,因此远远达不到我们的要求。

我们以往是这样做的,每天一个索引,2个月之前的索引全部关掉。只保持一个月的索引打开。如果想查询以前的数据,就要先关掉当前的1个月,再打开要查看的那个月的索引。

ES集群,32个分片,32个副本(“1”-代表每个分片一个副本)

  1. "settings": {
  2.           "index": {
  3.             "number_of_shards": "32",
  4.             "creation_date": "1475193606337",
  5.             "number_of_replicas": "1",
  6.             "version": {
  7.               "created": "1070699"
  8.             },
  9.             "uuid": "JdEgO48dTTCWMAmMZ3oCXg"
  10.           }
  11.         },

在这里再说明下,集群Index TPS,Search TPS与副本数的关系

集群写入文档TPS与副本数正相关,查询TPS与副本数无关。
举例:
1分钟向集群写入1000个文档:
       当索引有0个副本:集群写入文档次数为1000,Index TPS为1000/60.
       当索引有1个副本:集群写入文档次数为2000,Index TPS为2000/60.
       当索引有2个副本:集群写入文档次数为3000,Index TPS为3000/60.

1分钟查询1000次:
      当索引有0个副本:search TPS为 1000/60.
      当索引有1个副本:search TPS为 1000/60.
      当索引有2个副本:search TPS为 1000/60.

我们必须要调整我们的架构及存储方式。ES只用于热数据的分析,利用ES的检索特性。3个月以前的数据全部放入HBASE,利用HBASE的这种存储,对历史数据查询,只从HBASE里面查。更新后的存储处理方案下面这样

将日志分集群存储,日志量大的与日志量小的,互不影响。将来申请资源单独针对相应的日志集群来申请。这次调整从业务类别来拆分,继续保留了原来的kafka+storm+elasticsearch技术方案,因为日志处理在这个技术选型下是没有任何问题的,我们所要调整的是落地的细节上的问题。比如我们这次的存储方案调整。

 

© 著作权归作者所有

新栋BOOK
粉丝 134
博文 51
码字总数 93256
作品 0
大兴
程序员
oracle存储过程处理业务如何改造为分布式计算

求助大家一个关于系统改造的问题,多数的企业级应用多数的业务处理都是由存储过程进行处理的,如何能把这些存储过程改到用分布式的某种计算框架进行计算呢,存储过程主要是方便不用把数据取出...

条纹双肩包 ⋅ 2017/02/27 ⋅ 1

超越软件:每天一亿公里可靠行驶的保障

一、行业发展:受监管要求以及企业业务需求,车联网市场越来越大 近年来,车联网被认为是物联网体系中最有产业潜力、市场需求最明确的领域之一。我国车联网产业已经进入快速发展阶段,产业活...

飞天战略营 ⋅ 06/20 ⋅ 0

阿里大数据分析师之大数据的核心价值

一、大数据的应用 大数据挖掘商业价值的方法主要分为四种: 1.客户群体细分,然后为每个群体量定制特别的服务。 2.模拟现实环境,发掘新的需求同时提高投资的回报率。 3.加强部门联系,提高整...

JAVA丶学习 ⋅ 05/04 ⋅ 0

看总理4年政府工作报告如何提升“中国制造”

2017年3月5日,李克强总理作政府工作报告,提出深入实施《中国制造2025》,首次明确把发展“智能制造”作为主攻方向。 四年来的政府工作报告中,总理是如何持续为中国制造“加油”的?读下文...

玄学酱 ⋅ 04/16 ⋅ 0

新手速读:你想知道的大数据知识都在这

  【IT168 评论】毋庸置疑,现如今是属于大数据(Big Data)的,革命性的时代。从社交媒体到企业,每时每刻都在产生大量的数据。无所作为,从而把这样的宝藏白白浪费掉是及其愚蠢的。企业已经...

博客园 ⋅ 05/23 ⋅ 0

CLI使用案例2:轻松拉取数据到本地

当你需要把特定数据下载到本地时, 是否遇到一些困难: 现在的Web控制台只能一页一页的下载? SDK提供的接口需要用起来有些复杂, 例如游标怎么获取, 分区如何传入, 拉去数据后需要输出格式化? 如...

成喆 ⋅ 01/25 ⋅ 0

大数据阿里云产品的简单介绍理解

很多人问,大数据是什么。一个时尚的技术名词,一个互联网时代的标志。给人高端大气上档次的感觉,很多公司不说自己有大数据都不好意思跟别人谈业务。那我就谈谈我的一些看法来结合阿里云的数...

上单 ⋅ 2017/05/15 ⋅ 0

一次生产事故的优化经历

在一次正常的活动促销之后,客服开始陆续反馈有用户反应在抢标的时候打不开网页或者APP,在打开的时候标的就已经被抢光了,刚开始没有特别的上心,觉得抢标不就是这样吗,抢小米手机的时候也...

纯洁的虫纸 ⋅ 2017/11/01 ⋅ 0

Google、Facebook等技术发展历程

互联网已经发展多年,其中不乏脱颖而出者,这些网站多数都已存在了接近10年或10年以上,在如此长时间的发展过程中,除了业务上面临的挑战,在技术上也面临了很多的挑战。我挑选了一些Alexa排...

长平狐 ⋅ 2013/01/06 ⋅ 1

知名网站的技术发展历程

互联网已经发展多年,其中不乏脱颖而出者,这些网站多数都已存在了接近10年或10年以上,在如此长时间的发展过程中,除了业务上面临的挑战,在技术上也 面临了很多的挑战。我挑选了一些Alexa...

oschina ⋅ 2012/05/26 ⋅ 21

没有更多内容

加载失败,请刷新页面

加载更多

下一页

如何优雅的编程——C语言界面的一点小建议

我们鼓励在编程时应有清晰的哲学思维,而不是给予硬性规则。我并不希望你们能认可所有的东西,因为它们只是观点,观点会随着时间的变化而变化。可是,如果不是直到现在把它们写在纸上,长久以...

柳猫 ⋅ 27分钟前 ⋅ 0

从零手写 IOC容器

概述 IOC (Inversion of Control) 控制反转。熟悉Spring的应该都知道。那么具体是怎么实现的呢?下面我们通过一个例子说明。 1. Component注解定义 package cn.com.qunar.annotation;impo...

轨迹_ ⋅ 27分钟前 ⋅ 0

系统健康检查利器-Spring Boot-Actuator

前言 实例由于出现故障、部署或自动缩放的情况,会进行持续启动、重新启动或停止操作。它可能导致它们暂时或永久不可用。为避免问题,您的负载均衡器应该从路由中跳过不健康的实例,因为它们...

harries ⋅ 29分钟前 ⋅ 0

手把手教你搭建vue-cli脚手架-详细步骤图文解析[vue入门]

写在前面: 使用 vue-cli 可以快速创建 vue 项目,vue-cli很好用,但是在最初搭建环境安装vue-cli及相关内容的时候,对一些人来说是很头疼的一件事情,本人在搭建vue-cli的项目环境的时候也是...

韦姣敏 ⋅ 39分钟前 ⋅ 0

12c rman中输入sql命令

12c之前版本,要在rman中执行sql语句,必须使用sql "alter system switch logfile"; 而在12c版本中,可以支持大量的sql语句了: 比如: C:\Users\zhengquan>rman target / 恢复管理器: Release 1...

tututu_jiang ⋅ 53分钟前 ⋅ 0

Nginx的https配置记录以及http强制跳转到https的方法梳理

Nginx的https配置记录以及http强制跳转到https的方法梳理 一、Nginx安装(略) 安装的时候需要注意加上 --with-httpsslmodule,因为httpsslmodule不属于Nginx的基本模块。 Nginx安装方法: ...

Yomut ⋅ 今天 ⋅ 0

SpringCloud Feign 传递复杂参数对象需要注意的地方

1.传递复杂参数对象需要用Post,另外需要注意,Feign不支持使用GetMapping 和PostMapping @RequestMapping(value="user/save",method=RequestMethod.POST) 2.在传递的过程中,复杂对象使用...

@林文龙 ⋅ 今天 ⋅ 0

如何显示 word 左侧目录大纲

打开word说明文档,如下图,我们发现左侧根本就没有目录,给我们带来很大的阅读障碍 2 在word文档的头部菜单栏中,切换到”视图“选项卡 3 然后勾选“导航窗格”选项 4 我们会惊奇的发现左侧...

二营长意大利炮 ⋅ 今天 ⋅ 0

智能合约编程语言Solidity之线上开发工具

工具地址:https://ethereum.github.io/browser-solidity/ 实例实验: 1.创建hello.sol文件 2.调试输出结果

硅谷课堂 ⋅ 今天 ⋅ 0

ffmpeg 视频格式转换

转 Mp4 格式 #> ffmpeg -i input.avi -c:v libx264 output.mp4#> ffmpeg -i input.avi -c:v libx264 -strict -2 output.mp4#> ffmpeg -i input.avi -c:v libx264 -strict -2 -s 1......

Contac ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部