Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
K
kb
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • granite
  • kb
  • Wiki
    • Replay
  • lake_20201130

Last edited by 吴一博 Feb 22, 2021
Page history

lake_20201130

双十一项目总结

1.数据的采集。

在爬虫机器上通过logstash采集汇总到kafka队列里面。

2.数据的存储。

从kafka中读取数据到本地磁盘。通过data_pump多进程方式加快采集速度,进程数由1增加到12时,存储速度基本线性增长,勉强跟上数据收集的速度;
为了减少积压,还要继续增大进程数。进程数增加到24时,数据的消耗速度不在增长,经过评估云盘的性能,发现磁盘的未到瓶颈,怀疑是购买的阿里云kafka的性能限制,在升级了kafka配置后,速度明显增长。

3.数据的传输。

通过rsync工具每5min开启一次同步,通过进程锁保证最多只有一个进程在同步。flock命令。
flock -xn ${LOCK_FILE}/rsync.lock -c "rsync -auv --progress -e '${ID_RSA}' '${SOURCE}' '${LOCAL}'"

4.数据的入库。

data_pump实现了ES.writer的批量入库功能。可以通过多台机器多进程入库,单台机器(4核)机性能测试为3万条每分钟,16核心机器为10多万条每分钟。

各个环节的单元测试没有问题后 进行系统的测试:

在经过一轮的数据爬取后,预估淘宝天猫爬虫全开状态为的平均每一秒数据大小7M/S,在采集、 存储、传输、入库的性能测试后,发现数据传输环节是瓶颈,把百度云和阿里云2边的带宽同时增加100M,传输的平均性能是10M/s。这样就保障了各个环节的数据处理能力最少为10M/S, 可以满足爬虫的7M/S的数据。
Clone repository
  • README
  • basic_guidelines
  • basic_guidelines
    • basic_guidelines
    • dev_guide
    • project_build
    • 开发流程
  • best_practice
  • best_practice
    • AlterTable
    • RDS
    • azkaban
    • create_table
    • design
    • elasticsearch
    • elasticsearch
      • ES运维
    • logstash
View All Pages