sig_rpt分析对象对应的表

本文介绍了一个基于SIG_RPT的报表系统,该系统通过不同的数据表管理业务套餐、预定义对象、自定义属性等内容,并根据区域ID和分库规则生成报表名称。系统还包含了用于数据清理和汇总的任务调度机制。
sig_rpt分析对象
select * from sig_mpd.mnt_conf_user_serv;// 业务套餐
select * from sig_mpd.mnt_conf_user_etl;//预定义对象
select * from sig_mpd.mnt_conf_user_attr;//自定义属性
select * from sig_mpd.MNT_CONF_USER_GROU;//区域
select * from sig_mpd.mnt_conf_user_info;//公众客户
=====================================
select * from sig_mpd.mnt_conf_user_area 每个pkid对应的usernum字段决定 该pkid对应的分库区域有多少套表(usernum20W 一套表)
群组类的报表 名称生成规则为:区域"FL_TF_UR_AR_" + object.getObjectId() + suffix;
自定义属性"FL_TF_UR_P" + smashIndex + suffix;预定义对象:"FL_TF_UR_AG_" + object.getObjectId() + suffix;业务套餐:"FL_TF_UR_GR_" + object.getObjectId() + suffix;
单用户的报表 名称生产规则为:"FL_TF_UR_" + areaId(区域ID) +"_" + shardId (某个区域对应的多个自增Id 与该分库区域的套表有关联)+ A/B(天表月表没有AB表)+suffix(D(1-93)/M(48)/H(168)/MI(1-228)+)

Node组件的功能是清理汇总数据 下载并执行查询任务 将结果集插入到 rpt_DB中 心跳发生自身状态维护等。。
清理的时候 比如分钟表汇入到小时表 是在半点执行的 比如我要汇总今天12点-13点的数据
我会首先清理25小时之前1小时也就是昨天10:30-11:30分的数据 也就是12个五分钟表,然后汇总12-13点一个整点的数据(当前系统时间为13:30)
node主要的线程有 /** node 启动的重置线程 */
private static NodeThread resetThread;(2s主要用于重启时 将正在执行的子任务状态重置为失败)
/** 扫描子任务线程 */(3s扫描查询子任务表中的状态为新jian的 sql)
private static NodeThread scanTaskThread;
/** 更新node节点状态 */(30s定时检查每个node的状态 已经事实设置系统时间)
private static NodeThread timeUpdateNodeStateThread;
/** 守护线程 */
private static NodeThread watchThread;(每隔60s执行 检查前三个线程状态如果用户线程restTrendI累计到阀值15个 则认为线程已死重新启动新的线程)
CREATE OR REPLACE FUNCTION sig_qry_rpt.p_ipv6_host_analsys(in_date timestamp without time zone) RETURNS void LANGUAGE plpgsql NOT FENCED NOT SHIPPABLE AS $$ DECLARE part_num number; part_value number; tab_num number; part_name varchar2(100); tablename varchar2(100); v_sql text; ts text; error_msg text; start_time date; r_count number; begin select to_char(EXTRACT(epoch from trunc(in_date)::timestamp with time zone)) into ts; tablename := 't_ipv6_host_analsys'; select count(*) into tab_num from user_tables where table_name = tablename; if tab_num = 0 then v_sql := 'CREATE TABLE if not exists sig_qry_rpt.t_ipv6_host_analsys( stat_date varchar(800), protocol_name text, host text, alluser_ipv6_traffic varchar(800), alluser_all_traffic varchar(800), ipv6user_ipv6_traffic varchar(800), ipv6user_all_traffic varchar(800), fttruser_ipv6_traffic varchar(800), fttruser_all_traffic varchar(800) );'; execute immediate v_sql; end if; insert into sig_qry_rpt.t_ipv6_host_analsys( stat_date, protocol_name, host, alluser_ipv6_traffic, alluser_all_traffic, ipv6user_ipv6_traffic, ipv6user_all_traffic, fttruser_ipv6_traffic, fttruser_all_traffic ) with t1308_tmp as ( /*基础:1308单天数据*/ select * from sig_qry_rpt.t1308_user_http_detail_h where export_time = ts and left(stat_date,10)=left (in_date,10) ), standard_app_host_traffic as ( /*中间:标准格式的host所对应的流量数据*/ select left(stat_date,10) as stat_date, app_name, a.host, account, sum(case when left(serverip,3)='240' then nvl(outputoctets,0)+nvl(inputoctets,0) else 0 end )/1024/1024 as ipv6_traffic, sum(case when left(serverip,3)!='240' then nvl(outputoctets,0)+nvl(inputoctets,0) else 0 end )/1024/1024 as ipv4_traffic, ipv6_traffic+ipv4_traffic as all_traffic from t1308_tmp a join sig_qry_rpt.t_app_host_list b on a.host= b.host group by 1,2,3,4 ), no_standard_app_host_traffic as ( /*中间:非标准格式的host所对应的流量数据*/ select left(stat_date,10)as stat_date, case when host like '%video.qq.com' or host like '%wxqcloud.qq.com' or host like '%wxlivecdn.com' then '微信' when (host like '%pinduoduo.com' or host like '%pddpic.com' or host like '%fanuchdf.com' or host like '%yangkeduo.com' or host like '%pddugc.com') then '拼多多' when (host like '%sohu.com' or host like '%itc.cn' or host like '%sohucs.com' or host like '%sohu.com.cn' or host like '%sohu.cn' or host like '%qf.com.cn' or host like '%56.com' or host like '%56imgs.com' or host like '%56img.com' or host like '%v-56.com' or host like '%qianfan.tv') then '搜狐视频' end as app_name, host, account, sum(case when left(serverip,3)='240' then nvl(outputoctets,0)+nvl(inputoctets,0) else 0 end)/1024/1024 as ipv6_traffic, sum(case when left(serverip,3)!='240' then nvl(outputoctets,0)+nvl(inputoctets,0) else 0 end)/1024/1024 as ipv4_traffic, ipv6_traffic+ipv4_traffic as all_traffic from t1308_tmp where host like '%video.qq.com' or host like '%wxqcloud.qq.com' or host like '%wxlivecdn.com' or host like '%pinduoduo.com' or host like '%pddpic.com' or host like '%fanuchdf.com' or host like '%yangkeduo.com' or host like '%pddugc.com' or host like '%sohu.com' or host like '%itc.cn' or host like '%sohucs.com' or host like '%sohu.com.cn' or host like '%sohu.cn' or host like '%qf.com.cn' or host like '%56.com' or host like '%56imgs.com' or host like '%56img.com' or host like '%v-56.com' or host like '%qianfan.tv' group by 1,2,3,4 ) --fttr用户列(根据设备提取)移动局点适用(不统计FTTR用户/电联局点,可注掉到下一个注释间的内容) --,fttr_user_list as ( --select -- date_time,account,onu_model --from -- sig_qry_rpt.t_user_homenetwork_d --where -- export_time=ts -- and onu_model in ('SK-FH849','SK-FH849L','HG3142F(ONU)','HG3145F','HG3142F','HG3142F1','HN8145XR','V173','V173-50','V176-20','V175','V271-20','COMHEART TY-F802G','TFM-8661A2','ZN-AX172G','F7607P','G6615','G6611','G7611','G7611V2','G7615','G7615A','G7615AV5','G7715V5','CMGII-2200','HX6-FM1','HX5-FM1Pro') -- group by 1,2,3 --) --非移动局点,需注释掉以上内容 --fttr用户(根据用户提取提取)电联局点适用(电联局点,需将‘fttr用户’替换为前期导入的fttr用户名) ,fttr_user_list as (select account from account_20250401 ) --非电联局点,需注释掉以上内容 select stat_date, app_name as protocol_name, host, sum(nvl(ipv6_traffic,0)) as alluser_ipv6_traffic, sum(nvl(all_traffic,0)) as alluser_all_traffic ,sum(case when bb.account is not null then nvl(ipv6_traffic,0) else 0 end) as ipv6user_ipv6_traffic,/*不统计双栈用户,可注掉这两行*/ sum(case when bb.account is not null then nvl(all_traffic,0) else 0 end) as ipv6user_all_traffic /*不统计双栈用户,可注掉这两行*/ ,sum(case when cc.account is not null then nvl(ipv6_traffic,0) else 0 end) as fttruser_ipv6_traffic,/*不统计FTTR用户,可注掉这两行*/ sum(case when cc.account is not null then nvl(all_traffic,0) else 0 end) as fttruser_all_traffic/*不统计FTTR用户,可注掉这两行*/ from ( select stat_date,app_name,host,account,ipv6_traffic,ipv4_traffic,all_traffic from no_standard_app_host_traffic union all select stat_date,app_name,host,account,ipv6_traffic,ipv4_traffic,all_traffic from standard_app_host_traffic )aa left join sig_qry_rpt.t_support_ipv6_user_list bb on aa.stat_date = bb.date_time and aa.account = bb.account /*统计双栈用户数据,无需统计的局点可自行注释掉*/ left join fttr_user_list cc on aa.account = cc.account /*统计FTTR用户数据,无需统计的局点可自行注释掉*/ group by 1,2,3; -----记录执行时间、数据量等信息----- get diagnostics r_count = row_count; insert into sig_qry_rpt.t_job_work_info (stat_date,job_name,status,start_time,end_time,duration,cycle,data_time,data_volume) values (to_char(start_time,'yyyy-mm-dd'),'p_ipv6_host_analsys',0,to_char(start_time,'yyyy-mm-dd HH24:mi:ss'),to_char(sysdate,'yyyy-mm-dd HH24:mi:ss'),EXTRACT(epoch from (sysdate-start_time)),'daily',to_char(in_date,'yyyy-MM-dd'),r_count); exception when others then raise notice 'SQL ERROR:%',SQLERRM; error_msg=SQLERRM; insert into sig_qry_rpt.t_job_work_info (stat_date,job_name,status,start_time,end_time,duration,cycle,data_time,error_msg) values (to_char(start_time,'yyyy-mm-dd'),'p_ipv6_host_analsys',1,to_char(start_time,'yyyy-mm-dd HH24:mi:ss'),to_char(sysdate,'yyyy-mm-dd HH24:mi:ss'),EXTRACT(epoch from (sysdate-start_time)),'daily',to_char(in_date,'yyyy-MM-dd'),error_msg); end $$ / 为什么这个没有创建成功啊
06-28
【无人机】基于改进粒子群算法的无人机路径规划研究[和遗传算法、粒子群算法进行比较](Matlab代码实现)内容概要:本文围绕基于改进粒子群算法的无人机路径规划展开研究,重点探讨了在复杂环境中利用改进粒子群算法(PSO)实现无人机三维路径规划的方法,并将其与遗传算法(GA)、标准粒子群算法等传统优化算法进行对比分析。研究内容涵盖路径规划的多目标优化、避障策略、航路点约束以及算法收敛性和寻优能力的评估,所有实验均通过Matlab代码实现,提供了完整的仿真验证流程。文章还提到了多种智能优化算法在无人机路径规划中的应用比较,突出了改进PSO在收敛速度和全局寻优方面的优势。; 适合人群:具备一定Matlab编程基础和优化算法知识的研究生、科研人员及从事无人机路径规划、智能优化算法研究的相关技术人员。; 使用场景及目标:①用于无人机在复杂地形或动态环境下的三维路径规划仿真研究;②比较不同智能优化算法(如PSO、GA、蚁群算法、RRT等)在路径规划中的性能差异;③为多目标优化问题提供算法选型和改进思路。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,重点关注算法的参数设置、适应度函数设计及路径约束处理方式,同时可参考文中提到的多种算法对比思路,拓展到其他智能优化算法的研究与改进中。
标题中的"EthernetIP-master.zip"压缩文档涉及工业自动化领域的以太网通信协议EtherNet/IP。该协议由罗克韦尔自动化公司基于TCP/IP技术架构开发,已广泛应用于ControlLogix系列控制设备。该压缩包内可能封装了协议实现代码、技术文档或测试工具等核心组件。 根据描述信息判断,该资源主要用于验证EtherNet/IP通信功能,可能包含测试用例、参数配置模板及故障诊断方案。标签系统通过多种拼写形式强化了协议主题标识,其中"swimo6q"字段需结合具体应用场景才能准确定义其技术含义。 从文件结构分析,该压缩包采用主分支命名规范,符合开源项目管理的基本特征。解压后预期可获取以下技术资料: 1. 项目说明文档:阐述开发目标、环境配置要求及授权条款 2. 核心算法源码:采用工业级编程语言实现的通信协议栈 3. 参数配置文件:预设网络地址、通信端口等连接参数 4. 自动化测试套件:包含协议一致性验证和性能基准测试 5. 技术参考手册:详细说明API接口规范与集成方法 6. 应用示范程序:展示设备数据交换的标准流程 7. 工程构建脚本:支持跨平台编译和部署流程 8. 法律声明文件:明确知识产权归属及使用限制 该测试平台可用于构建协议仿真环境,验证工业控制器与现场设备间的数据交互可靠性。在正式部署前开展此类测试,能够有效识别系统兼容性问题,提升工程实施质量。建议用户在解压文件后优先查阅许可协议,严格遵循技术文档的操作指引,同时需具备EtherNet/IP协议栈的基础知识以深入理解通信机制。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值