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
    • Data_stream
    • Risk
  • risk_zxgk_find_new

Last edited by liuzhiqiang Jul 06, 2022
Page history
This is an old version of this page. You can view the most recent version or browse the history.

risk_zxgk_find_new

执行公开找新策略

找新简述

执行公开找新(包含:'zhixing','shixin','xianxiao','zhongben')
zhixing: 通过任务表增加的zhixing_id和爬取结果1101的zhixing_id进行找新
shixin: 通过任务表增加的ep_id和爬取结果1101的ep_id进行找新
zhongben: 通过任务表增加的zhongben_id和爬取结果1101的zhongben_id进行找新
xianxiao: 通过shixin和zhongben新增数据的name进行找新

找新策略详情

* 被执行人
  * 每天发布四次任务,每次发布的zhixing_id为距今十五天内且爬取失败次数小于80次且爬取结果为1101或null的zhixing_id
  * 每次发布任务前,判断任务表内执行结果为1000的最大zhixing_id id1与表内最大zhixing_id id2,若两个id之差(id2-id1)小于七万,就补充差额的zhixing_id到任务表内。

* 终本案件
  * 根据每天终本网页上的最大zhongben_id(有些zhongben_id为错误值,需要排除),按照向上增加2万,向下增加6万的范围补充执行任务表内没有的id
  * 每天发布四次任务,每次发布的zhongben_id为距今3天内且爬取失败次数小于80次且爬取结果为1101或null的zhongben_id

* 限制高消费
  * 使用每天失信和终本新增的name作为任务进行查找

* 失信被执行人
  * 与被执行招新策略一致,增大ep_id后发布任务

发布id的时间范围,最大失败次数以及补充id的范围都可通过data_pump的参数进行调整

data_pump参数说明

task_type
(任务类型)
search_days
(任务表发布时间范围)
incre
(向上扩大id数量)
decre
(向下扩大id数量)
max_failure_number
(爬取失败最大次数,默认80)
zhixing -v search_days 16 -v incre 70000 -v decre 0 80
zhongben -v search_days 4 -v incre 20000 -v decre 40000 80
shixin -v search_days 16 -v incre 70000 -v decre 0 80

队列名称及队列地址

  • redis host: redis://:utn@0818@bdp-mq-001.redis.rds.aliyuncs.com:6379/7
  • redis port: 6379
  • redis db: 7
  • redis key:
    • risk_zxgk

优先级队列说明

  • risk_zxgk 支持队列优先级
    • 找新任务
      • zhixing:risk_zxgk:101
      • shixin:risk_zxgk:102
      • zhongben:risk_zxgk:103
      • xianxiao:risk_zxgk:4
    • 存量循环更新任务
      • zhixing:risk_zxgk:51
      • shixin:risk_zxgk:52
      • zhongben:risk_zxgk:53
      • xianxiao:risk_zxgk:2
    • 补漏及其他任务
      • risk_zxgk:60

任务输入参数(样例)

找新任务

zhixing
{
  "zhixing_id": "1371041114",
  "task_type": "spider_zhixing_task",
  "update_id_type": "zhixing"
}

shixin
{
  "shixin_id": "1371041114",
  "task_type": "spider_shixin_task",
  "update_id_type": "shixin"
}

xianxiao
{
  "pname": "刘春志",
  "task_type": "spider_xianxiao_task",
  "update_id_type": "xianxiao"
}

zhongben
{
  "zhongben_id": "1371041114",
  "task_type": "spider_zhongben_task",
  "update_id_type": "zhongben"
}

例行更新任务

任务参数中update_id_type变化
zhixing
{
  "zhixing_id": "1371041114",
  "task_type": "spider_zhixing_task",
  "update_id_type": "zhixing_routine"
}

shixin
{
  "shixin_id": "1371041114",
  "task_type": "spider_shixin_task",
  "update_id_type": "shixin_routine"
}

xianxiao
{
  "pname": "刘春志",
  "task_type": "spider_xianxiao_task",
  "update_id_type": "xianxiao_routine"
}

zhongben
{
  "zhongben_id": "1371041114",
  "task_type": "spider_zhongben_task",
  "update_id_type": "zhongben_routine"
}

代码地址

data_type 代码简介 代码地址
zhixing, shixin, zhongben 通过任务表发布任务到redis http://192.168.109.110/granite/project-collie-app/-/blob/master/app_risk/data_pump/zxgk_update_id_to_redis.yml
zhixing, shixin, zhongben 将爬虫结果更新到任务表中 http://192.168.109.110/granite/project-collie-app/-/blob/master/app_risk/data_pump/zxgk_update_id.yml
xianxiao 将新增的shixin和zhongben的name发布到redis http://192.168.109.110/granite/project-collie-app/-/blob/master/app_risk/data_pump/xianxiao_find_new_to_redis.yml

数据存储表地址

任务表:主要包括id(zhixing_id,ep_id,zhongben_id),task_result(1000/1101/null),
failures_number(爬取失败次数:0--max_failure_number)等字段
data_type 表简介 数据库地址 表名
zhixing zhixing任务表,用于发布爬虫任务 bdp-ext.rwlb.rds.aliyuncs.com bdp_risk.risk_zhixing_loss
shixin shixin任务表,用于发布爬虫任务 bdp-ext.rwlb.rds.aliyuncs.com bdp_risk.risk_shixin_loss
zhongben zhongben任务表,用于发布爬虫任务 bdp-ext.rwlb.rds.aliyuncs.com bdp_risk.risk_zhongben_loss
业务表:业务数据,包含爬虫结果(id,name等)以及内部分析字段(company_name_digest等)
data_type 表简介 数据库地址 表名
zhixing zhixing业务表,记录所有业务字段 bdp-rds-001.mysql.rds.aliyuncs.com utn_ng_risk.risk_zhixing
shixin shixin业务表,记录所有业务字段 bdp-rds-003.mysql.rds.aliyuncs.com utn_risk.risk_shixin
zhongben zhongben业务表,记录所有业务字段 bdp-rds-001.mysql.rds.aliyuncs.com utn_ng_risk.risk_zhongben
xianxiao xianxiao业务表,记录所有业务字段 bdp-rds-001.mysql.rds.aliyuncs.com utn_ng_risk.risk_xianxiao

钉钉预警

找新预警:以zhongben找新为例,其余三种数据预警逻辑一致,每天找新成功的爬虫日志少于10条时预警

报警信息:zhongben24小时内找新失败
索引:public-company-spider-data-*
监控频率:每4小时一次
监控起止时间: 06:00到20:00
报警条件:spider_name=risk_zxgk 且 task_params.update_id_type=zhongben 且 task_result=1000 24小时内量少于10条

补漏预警:以zhongben补漏为例,zhixing与shixin预警逻辑一致,统计每天任务表内未更新的数据写到total字段,total>10报警,或补漏预警程序失败未向es写入数据时报警

报警内容:"报警:zhongben补漏数据24小时内未更新"
索引:mysql_stat-*
监控频率:每天两次
监控时间:10:00和16:00
报警条件:db_host=bdp-ext.rwlb.rds.aliyuncs.com且db_name=bdp_risk且db_table=risk_zhongben_loss 24小时内量为0条
或db_host=bdp-ext.rwlb.rds.aliyuncs.com且db_name=bdp_risk且db_table=risk_zhongben_loss 且total>10 24小时内量大于1条

例行更新预警:zhixing T+3预警,统计三天内es例行任务量与业务表中满足例行条件的数据量进行比较,差值计入total字段,total<0,说明三天内未例行完成,进行报警

报警内容:"报警:被执行表T+3更新未完成"
索引:mysql_stat-*
监控频率:每天一次
监控时间:10:00
报警条件:db_host=bdp-rds-001.mysql.rds.aliyuncs.com且db_name=utn_ng_risk且db_table=risk_zhixing且total<0 24小时内量大于0条

部署地址

10.8.6.18

部署方法及说明

  • crontab + data_pump
  • supervisor + data_pump
  • supervisor + consumer

数据接收来源

1.爬虫数据进行数据更新
2.代码生成新的执行id进行爬虫任务发布
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