咨询该项目请拨打:400-006-6655
(同时提供 标书代写、信用评级、
ISO证书办理、大数据等服务)
招标代理公司(
立即查看)
受业主单位(
立即查看)
委托,于
2015-09-25在采购与招标网发布
长春轨道客车股份有限公司通用工具软件项目更正公告【变更】【变更】【变更】【变更】。现邀请全国供应商参与投标,有意向的单位请及时联系项目联系人参与投标。
项目编号:(略)-EMTC(略)-(略)
招标代理机(略)
招标代理机构地址:(略)(略)A座)
招标代理机构联系方式: (略)-(略)
首次公告日期:(略)年8月(略)日
更正日期:(略)年9月(略)日
更正理由:本项目技术参数变更
更正事项:
一、原招标公告技术需求书部(略)增加如下内容:
HADOOP具体服务内容:
1<(略)络配置、hadoop系列组件规划及安装。
2数据从redis中抽取: 数据从redis集群中取出, 具体接口定义按"(略)II期“的redis-hadoop接口定义。响应客户需求的变化。
3数据从hadoop到redis,具体接口定义按"(略)II期“的hadoop-redis接口定义。响应客户需求的变化。
4hadoop(hdfs/hbase/hive/zookeeper
5 Redis(略)工具是工作的一部(略),遵循"(略)II期“接口定义。
6 Hadoop"(略)II期“接口定义。查询性能应满足客户需求。
7 redis数据量根据车组数据量来定. Redis在"(略)II期“是一个(略)布集群。
HADOOP接口部(略)具体内容:
附录1 从数据库及redis读入记录并写入Hadoop的接口定义
一、 从Redis读取参数记录并写入Hadoop接口定义:
参数记录ParamBean属性如下:
String trainNo; //车号
String time; //时间
String roadNo = " "; //车次
List wholeList;//列车(略)体参数
List unitList;//牵引单(略)参数
List partList;//车辆部件参数
其中参数SubparamBean包括以下属性:
String sn;//车组号
String param_name;// 参数名称
String param_value;// 参数值
String coach;// 车厢号
String vcoach;// <(略)原车厢号
String status;// 该参数状态
String param_code;//参数编码
String unit; //单位
String part_name; //部件名
String part_code; //部件码
String sys_name; //
String sys_code; //
String subsys_name; //(略)名
String subsys_code; //(略)码
String time; //时间
String type; //类型
某天某个车所有的ParamBean实例按车号和日期存放在zset队列中,其key为
Key: "SubParamBean:" + YYYYMMDD + ":" + NNNN;
YYYYMMDD为日期,YYYY为年,MM为月,DD为日
NNNN为车号
超过8天以上的数据自动清除。
要求接口程序把每天把数据自动写入Hadoop中,当天的数据在次日6:(略)后应该能从Hadoop里面访问到,存放要求见上文。
二、 从数据库读取故障记录,并写入Hadoop接口定义
故障记录相关信息见下面的表:
CREATE TABLE ft_dict(
-- 故障编码
code VARCHAR((略)) not null ,
-- 名称
name VARCHAR((略)) not null ,
-- (略)编码
sys_code VARCHAR((略)) not null ,
-- 部件编码
part_code VARCHAR((略)) not null ,
-- 章节号
chapter_code VARCHAR((略)) not null ,
-- 事件
event VARCHAR((略)) not null ,
-- 类型
type VARCHAR((略)) not null ,
-- 来源
source VARCHAR(2) not null ,
-- 类型
ft_type VARCHAR(2) not null ,
-- 车型
train_cate VARCHAR((略)) not null ,
-- 运营影响等级
lvl VARCHAR((略)) not null ,
-- 编码
ocode VARCHAR((略)) not null ,
-- 是否原生
is_native INTEGER not null ,
-- 是否警报
is_alarm INTEGER not null ,
-- 警戒级别
warn_lvl VARCHAR((略)) not null ,
-- 检修级别
rep_lvl VARCHAR((略)) not null ,
-- 备注
remark VARCHAR((略)) not null ,
CONSTRAINT FK_ft_dict_cm_sys_sys_code FOREIGN KEY (sys_code) REFERENCES cm_sys(code),
CONSTRAINT FK_ft_dict_cm_part_part_code FOREIGN KEY (part_code) REFERENCES cm_part(code),
CONSTRAINT FK_ft_dict_train_cate_train_c FOREIGN KEY (train_cate) REFERENCES train_cate(code),
CONSTRAINT FK_ft_dict_ft_lvl_lvl FOREIGN KEY (lvl) REFERENCES ft_lvl(code),
primary key(code)
);
CREATE TABLE fault_rec(
-- 流水号
id VARCHAR((略)) not null ,
-- 故障编码
ft_code VARCHAR((略)) ,
-- 是否主控
is_leading CHAR(1) not null ,
-- 车号
train_id INT not null ,
-- 车次
train_no VARCHAR((略)) not null ,
-- (略)间
interval VARCHAR((略)) not null ,
-- 发生地点
occur_place INT not null ,
-- 线名
fa_xm VARCHAR((略)) not null ,
-- 车站1
zm_zm1 VARCHAR((略)) not null ,
-- 车站2
zm_zm2 VARCHAR((略)) not null ,
-- 车厢号
coach VARCHAR(8) not null ,
-- 位置编号
pos_id VARCHAR((略)) not null ,
-- 数据类型
data_type VARCHAR(2) not null ,
-- 故障来源
source VARCHAR(2) not null ,
-- 故障类型
error_type VARCHAR((略)) not null ,
-- 源文件
file_code VARCHAR((略)) not null ,
-- 发生时间戳
occr_time VARCHAR((略)) not null ,
-- 创建者
crt_user VARCHAR((略)) not null ,
-- 创建日期
crt_date VARCHAR((略)) not null ,
-- 创建时间
crt_time VARCHAR((略)) not null ,
-- 故障模式
occr_mode CHAR(1) not null ,
-- 故障状态
occr_status VARCHAR((略)) not null ,
-- 处理状态
status VARCHAR(2) not null ,
-- 关联故障号
ref_id VARCHAR((略)) not null ,
-- 更新时间
update_time VARCHAR((略)) not null ,
-- 注释
remark VARCHAR((略)) not null ,
-- 数据采集时间
collect_time VARCHAR((略)) ,
-- 参数值
param VARCHAR((略)) ,
-- 预警项目提示信息
tool_zip VARCHAR((略)) ,
CONSTRAINT FK_fault_rec_train_train_id FOREIGN KEY (train_id) REFERENCES train(id),
CONSTRAINT FK_fault_rec_users_crt_user FOREIGN KEY (crt_user) REFERENCES users(user_id),
CONSTRAINT FK_fault_rec_cm_position_pos_ FOREIGN KEY (pos_id) REFERENCES cm_position(id),
CONSTRAINT FK_fault_rec_ft_dict_ft_code FOREIGN KEY (ft_code) REFERENCES ft_dict(code),
primary key(id)
);
--协议故障
CREATE TABLE fault_agreement(
-- 流水号
id VARCHAR((略)) not null ,
-- 故障编码
ft_code VARCHAR((略)) ,
-- 是否主控
is_leading CHAR(1) not null ,
-- 车号
train_id INT not null ,
-- 车次
train_no VARCHAR((略)) not null ,
-- (略)间
interval VARCHAR((略)) not null ,
-- 发生地点
occur_place INT not null ,
-- 线名
fa_xm VARCHAR((略)) not null ,
-- 车站1
zm_zm1 VARCHAR((略)) not null ,
-- 车站2
zm_zm2 VARCHAR((略)) not null ,
-- 车厢号
coach VARCHAR(8) not null ,
-- 位置编号
pos_id VARCHAR((略)) not null ,
-- 数据类型
data_type VARCHAR(2) not null ,
-- 故障来源
source VARCHAR(2) not null ,
-- 故障类型
error_type VARCHAR((略)) not null ,
-- 源文件
file_code VARCHAR((略)) not null ,
-- 发生时间戳
occr_time VARCHAR((略)) not null ,
-- 创建者
crt_user VARCHAR((略)) not null ,
-- 创建日期
crt_date VARCHAR((略)) not null ,
-- 创建时间
crt_time VARCHAR((略)) not null ,
-- 故障模式
occr_mode CHAR(1) not null ,
-- 故障状态
occr_status VARCHAR((略)) not null ,
-- 处理状态
status VARCHAR(2) not null ,
-- 关联故障号
ref_id VARCHAR((略)) not null ,
-- 更新时间
update_time VARCHAR((略)) not null ,
-- 注释
remark VARCHAR((略)) not null ,
-- 数据采集时间
collect_time VARCHAR((略)) ,
-- 参数值
param VARCHAR((略)) ,
-- 预警项目提示信息
tool_zip VARCHAR((略)) ,
CONSTRAINT FK_fault_rec_train_train_id FOREIGN KEY (train_id) REFERENCES train(id),
CONSTRAINT FK_fault_rec_users_crt_user FOREIGN KEY (crt_user) REFERENCES users(user_id),
CONSTRAINT FK_fault_rec_cm_position_pos_ FOREIGN KEY (pos_id) REFERENCES cm_position(id),
CONSTRAINT FK_fault_rec_ft_dict_ft_code FOREIGN KEY (ft_code) REFERENCES ft_dict(code),
primary key(id)
);
CREATE TABLE fault_rlt(
-- 故障流水号
id VARCHAR((略)) not null ,
-- 通报类别
rep_type VARCHAR(2) not null ,
-- 影响类别
rlt_type VARCHAR(2) not null ,
-- 影响运行
run_rlt VARCHAR(2) not null ,
-- 运营影响等级
run_lvl VARCHAR(2) not null ,
-- 检修影响等级
rep_lvl VARCHAR(2) not null ,
-- 晚点时间((略))
time_delay INTEGER not null ,
-- 停车日期
stop_date VARCHAR((略)) not null ,
-- 停车时间
stop_time VARCHAR((略)) not null ,
-- 开车日期
start_date VARCHAR((略)) not null ,
-- 开车时间
start_time VARCHAR((略)) not null ,
-- 应急处理方式
oper_type VARCHAR(2) not null ,
-- 处置结果
result VARCHAR((略)) not null ,
-- 处理人
operator VARCHAR((略)) not null ,
-- 处理开始时间
begin_time VARCHAR((略)) not null ,
-- 处理结束时间
end_time VARCHAR((略)) not null ,
-- 当前车组状态
train_status VARCHAR((略)) not null ,
-- 注释
remark VARCHAR((略)) not null ,
CONSTRAINT FK_fault_rlt_fault_rec_id FOREIGN KEY (id) REFERENCES fault_rec(id),
primary key(id)
);
CREATE TABLE ft_reason(
-- 故障编码
code VARCHAR((略)) not null ,
-- 描述
description VARCHAR((略)) not null ,
-- 版本号
version VARCHAR((略)) not null ,
-- 编撰者
author VARCHAR((略)) not null ,
-- 创建日期
crt_date VARCHAR((略)) not null ,
-- 最后修改日期
last_date VARCHAR((略)) not null ,
-- 注释
remark VARCHAR((略)) not null ,
CONSTRAINT FK_ft_reason_ft_dict_code FOREIGN KEY (code) REFERENCES ft_dict(code),
primary key(code)
);
故障FaultRecBean包括以下属性:
String id;// 故障ID
String trainCate;//车类别
String train_type;// 车型
String sn;// 车组号
String car_no;// 车箱号
String trainNo; //车次
String interval; //(略)间
String occurPlace; //发生地点
String fa(略)m; //线名
String zmZm1; //车站1
String zmZm2; //车站2
String crtUser; //创建者
String crtDate; //创建日期
String crtTime; //创建时间
String updateTime; //更新时间
String remark; //注释
String collectTime; //数据采集时间
String param; //参数值
String toolZip; //预警项目提示信息
String source; //来源
Integer mileage; //故障发生时车组累计走行公里数
String sysCode; //<(略)
String sysName; //
String partCode; //故障部件
String partName; //部件名称
String posCode; //故障位置
String posName; //位置名称
String weather; //天气状况
String descr; //详细描述
String remark; //故障现象
String repType; //通报类别
String rltType; //影响类别
String runRlt; //影响运行
String runLvl; //运营影响等级
String repLvl; //检修影响等级
Integer timeDelay; //晚点时间((略))
String stopDate; //停车日期
String stopTime; //停车时间
String startDate; //开车日期
String startTime; //开车时间
String operType; //应急处理方式
String result; //处置结果
String operator; //处理人
String beginTime; //处理开始时间
String endTime; //处理结束时间
String jname;//
String station;// 服务站名称
String sys_name;// <(略)
String fault_desc;// 故障现象(故障描述)
String fault_code;// 故障代码
String fault_level;// 故障级别
String time;// 故障时间
String type;// 处理类型
String status;// 处理状态
String isSendNote;// 消息(略)状态
String scode;// 配属所编码
String sname;// 配属所名称
String trainStatus;// 车组状态
String jcode;//
String stationCode;// 服务站编码
String sys_code;// <(略)编码
String occrMode;// 故障模式 0:非维护,1:维护
String occrStatus;// 故障状态 0:恢复,1:发生
String ftType;// 故障类型
String refId;// 关联故障记录
String errorType; // 故障类型
String handleStatus;//故障处理状态
String dataType;//数据类型
要求接口程序从数据库里面把当天之前的数据读取出来放到FaultRecBean中,自动写入Hadoop,当天的数据在次日6:(略)后应该能从Hadoop里面访问到,存放要求见上文。
三、 从Redis读取预警记录,并写入Hadoop接口定义
存放结构:
redis预警记录数据以redis hash的类型存储,该类型(略)为Key、Hash Key【即:field】、Hash Value共3个部(略),详细介绍如下:
Key格式:WARN_REC:日期字符串【例如:WARN_REC:(略)】,每天产生的预警记录均存储在该key下;
Hash Key【即:field】格式:车组号:预警编码:车厢号:参数编码【例如:(略):(略):6:CRH(略)】,同一天、同一个车组、同一个预警规则、同一个车厢、同一个参数位产生的预警记录均放置在该field下;
Hash Value格式:以json字符串形式存放预警记录的详细信息,包括当前最新信息以及当天的该field的历史发生恢复信息。详细描述如下:
如下以redis (略)【RedisDesktopManager】的JSON格式描述各个字段,各字段均存放最新的预警记录信息,recInfos字段存放当天该field下发生的历史记录信息【包括:发生,恢复记录】,faultOccurTimes存放当天该field下所有的预警发生恢复时间;
{
"beginTime": "预警记录开始发生时间",
"car_no": "车厢号",
"colectTime": "当前发生记录时间",
"dataType": "故障类型",
"descer": "故障描述",
"diffVal": "当前差值",
"endTime": "预警记录最后发生时间",
"evCode": "预警编码",
"faultOccurTimes": "预警发生时间集合",
"fault_code": "预警编码",
"fault_desc": "故障现象",
"fault_level": "故障等级",
"field": "预警记录field",
"flag": "标志位【预警页面:处理、未处理标识】",
"handleStatus": "故障处理状态",
"id": "故障记录id",
"isSendNote": "是否已(略)短信",
"jcode": "",
"jname": "",
"maxColectTime": "最高温度对应采集数据时间",
"maxDiffVal": "超差最大值",
"maxParamVals": "最高超差时对应的参数code、参数值集合",
"maxParmCode": "最高温度对应的code",
"maxTime": "最高温度对应时间",
"maxVal": "最大参数值",
"occrCount": "发生次数",
"occrMode": "故障模式",
"occrStatus": "故障状态",
"param": "当前参数值",
"paramVals": "当前参数code、value集合",
"parmType": "预警参数类型",
"posId": "当前参数code集合",
"recInfos": "[{\"colectTime\":\"此条记录故障(略)时间\",\"diffVal\":\"差值\",\"fileCode\":\"速度\",\"handleStatus\":\"处理状态\",\"id\":\"故障记录id\",\"isSendNote\":\"是否(略)短信 \",\"occrStatus\":\"发生状态\",\"param\":\"当前预警code的value值\",\"paramVals\":\"参数code、value集合 \",\"posId\":\"参数code集合\",\"refId\":\"关联故障号\",\"time\":\"当前记录时间\",\"train_no\":\"车次\",\"type\":\"应急指挥类型\",\"warnRemark\":\"提示信息 "}]",
"refId": "关联故障号",
"scode": "配属所编码",
"sn": "车组",
"sname": "配属所名称",
"station": "服务站名称",
"stationCode": "服务站编码",
"status": "处理状态",
"sys_code": "",
"sys_name": "",
"time": "当前记录时间",
"tipType": "超温超差类型:值为数字:1-超温、2-超差、3-超温且超差",
"toolTip": "预警项目名称",
"trainStatus": "车组状态",
"train_no": "车次",
"train_type": "车型",
"type": "应急指挥类型",
"warnName": "预警项目名称 ",
"warnRemark": "预警提示信息",
"warnType": "温度预警标识"
}
要求接口程序从数据库里面把当天之前的数据自动写入Hadoop,当天的数据在次日6:(略)后应该能从Hadoop里面访问到,存放要求见上文。
四、 从数据库读GPS数据,并写入Hadoop接口定义
GPS记录存放在以下两个表中:
-- 当前GPS数据
prompt
prompt Creating table TBL_CURRENT_GPS
prompt ==============================
prompt
create table CRHRDT.TBL_CURRENT_GPS
(
is_leading CHAR(1) not null,
train_type CHAR(1) not null,
train_no NUMBER(5) not null,
train_id NUMBER not null,
data_time DATE not null,
gps_valid CHAR(1) not null,
gps_time DATE not null,
gps_speed CHAR(8) not null,
gps_long CHAR(8) not null,
gps_longref CHAR(1) not null,
gps_lat CHAR(8) not null,
gps_latref CHAR(1) not null,
update_time DATE default SYSDATE not null
)
-- 历史GPS数据
prompt
prompt Creating table TBL_GPS_HISTORY
prompt ==============================
prompt
create table CRHRDT.TBL_GPS_HISTORY
(
--是否主控
is_leading CHAR(1) not null,
--车型
train_type CHAR(1) not null,
--车号
train_no NUMBER(5) not null,
--车次
train_id NUMBER not null,
--数据采集时间
data_time DATE not null,
gps_valid CHAR(1) not null,
gps_time DATE not null,
gps_speed CHAR(8) not null,
--gps经度
gps_long CHAR(8) not null,
gps_longref CHAR(1) not null,
--gps维度
gps_lat CHAR(8) not null,
gps_latref CHAR(1) not null,
update_time DATE default SYSDATE not null
)
要求接口程序从数据库里面把当天之前的数据自动写入Hadoop,当天的数据在次日6:(略)后应该能从Hadoop里面访问到,存放要求见上文。
附录2 从Hadoop读取记录并写入Redis的接口定义
一、从Hadoop集群读入参数记录并写入redis的接口定义:
参数SubparamBean包括以下属性:
String sn;//车组号
String param_name;// 参数名称
String param_value;// 参数值
String coach;// 车厢号
String vcoach;// <(略)原车厢号
String status;// 该参数状态
String param_code;//参数编码
String unit; //单位
String part_name; //部件名
String part_code; //部件码
String sys_name; //
String sys_code; //
String subsys_name; //(略)名
String subsys_code; //(略)码
String time; //时间
String type; //类型
读取接口:
FetchSubparamsFromHadoop(String rule)
其中 rule为匹配条件,通过公式定义,公式的定义支持以下运算符:
属于、且、或、等于、大于、小于、不小于、不大于、如果、则、否则
并且支持运算符的自主定义
如:
(sn属于({SN1},{SN2},{SN3}) 且 coach 等于 8 且 param_value 大于(略) )
sn、coach、param_value为SubparamBean中的属性,匹配条件应该支持SubparamBean中的所有属性, 未来如果SubparamBean增加了新的属性,接口应该可以支持根据新的属性编写匹配条件;
读取的结果存入Redis里面,其:
key: SubparamBeanHis+":"+YYYYMMDD+":"+NNNN
Value: {YYYYMMDDHHmmSSMIL, jsonstring}
其中
YYYYMMDD为日期,YYYY为年,MM为月,DD为日
NNNN为车号
YYYYMMDDHHmmSSMIL为参数采集时间(YYYY为年,MM为月,DD为日,HH为(略)进制的小时,mm为(略)钟,SS为秒,MIL为毫秒)
其中YYYYMMDD为日期,NNNN为车号,如果返回的结果(略)布在N个日期上,则写入N个可以里面。
Jsonstring为NNNN这个车在YYYYMMDDHHmmSSMIL这个时间点的参数列表List< SubparamBean >转换为的Json字符串;
二、从Hadoop集群读入故障记录并写入redis的接口定义:
故障FaultRecBean包括以下属性:
String id;// 故障ID
String trainCate;//车类别
String train_type;// 车型
String sn;// 车组号
String car_no;// 车箱号
String trainNo; //车次
String interval; //(略)间
String occurPlace; //发生地点
String fa(略)m; //线名
String zmZm1; //车站1
String zmZm2; //车站2
String crtUser; //创建者
String crtDate; //创建日期
String crtTime; //创建时间
String updateTime; //更新时间
String remark; //注释
String collectTime; //数据采集时间
String param; //参数值
String toolZip; //预警项目提示信息
String source; //来源
Integer mileage; //故障发生时车组累计走行公里数
String sysCode; //<(略)
String sysName; //
String partCode; //故障部件
String partName; //部件名称
String posCode; //故障位置
String posName; //位置名称
String weather; //天气状况
String descr; //详细描述
String remark; //故障现象
String repType; //通报类别
String rltType; //影响类别
String runRlt; //影响运行
String runLvl; //运营影响等级
String repLvl; //检修影响等级
Integer timeDelay; //晚点时间((略))
String stopDate; //停车日期
String stopTime; //停车时间
String startDate; //开车日期
String startTime; //开车时间
String operType; //应急处理方式
String result; //处置结果
String operator; //处理人
String beginTime; //处理开始时间
String endTime; //处理结束时间
String jname;//
String station;// 服务站名称
String sys_name;// <(略)
String fault_desc;// 故障现象(故障描述)
String fault_code;// 故障代码
String fault_level;// 故障级别
String time;// 故障时间
String type;// 处理类型
String status;// 处理状态
String isSendNote;// 消息(略)状态
String scode;// 配属所编码
String sname;// 配属所名称
String trainStatus;// 车组状态
String jcode;//
String stationCode;// 服务站编码
String sys_code;// <(略)编码
String occrMode;// 故障模式 0:非维护,1:维护
String occrStatus;// 故障状态 0:恢复,1:发生
String ftType;// 故障类型
String refId;// 关联故障记录
String errorType; // 故障类型
String handleStatus;//故障处理状态
String dataType;//数据类型
读取接口:
FetchFaultRecFromHadoop(String rule)
其中 rule为匹配条件,通过公式定义,公式的定义支持以下运算符:
属于、且、或、等于、大于、小于、不小于、不大于
并且支持运算符的自主定义
如:
(sn属于({SN1},{SN2},{SN3}) 且 car_no 等于 8 且 beginTime 大于(略) )
sn、car_no、beginTime为FaultRecBean中的属性,匹配条件应该支持FaultRecBean中的所有属性, 未来如果FaultRecBean增加了新的属性,接口应该可以支持根据新的属性编写匹配条件;
读取的结果存入Redis里面,其:
key: FaultRecHis+":"+YYYYMMDD+":"+NNNN
Value: {YYYYMMDDHHmmSSMIL, jsonstring}
其中
YYYYMMDD为日期,YYYY为年,MM为月,DD为日
NNNN为车号
YYYYMMDDHHmmSSMIL为参数采集时间(YYYY为年,MM为月,DD为日,HH为(略)进制的小时,mm为(略)钟,SS为秒,MIL为毫秒)
其中YYYYMMDD为日期,NNNN为车号,如果返回的结果(略)布在N个日期上,则写入N个可以里面。
Jsonstring为NNNN这个车在YYYYMMDDHHmmSSMIL这个时间点符合条件的故障列表List< FaultRecBean>转换得到的Json字符串;
三、从Hadoop集群读入预警记录并写入redis的接口定义:
预警记录WarnBean有以下属性:
String beginTime; //预警记录开始发生时间
String car_no; //车厢号
String colectTime; //当前发生记录时间
String dataType; //故障类型
String descer; //故障描述
String diffVal; //当前差值
String endTime; //预警记录最后发生时间
String evCode; //预警编码
String faultOccurTimes; //预警发生时间集合
String fault_code; //预警编码
String fault_desc; //故障现象
String fault_level; //故障等级
String field; //预警记录field
String flag; //标志位【预警页面:处理、未处理标识】
String handleStatus; //故障处理状态
String id; //故障记录id
String isSendNote; //是否已(略)短信
String jcode; //
String jname; //
String maxColectTime; //最高温度对应采集数据时间
String maxDiffVal; //超差最大值
String maxParamVals; //最高超差时对应的参数code、参数值集合
String maxParmCode; //最高温度对应的code
String maxTime; //最高温度对应时间
String maxVal; //最大参数值
String occrCount; //发生次数
String occrMode; //故障模式
String occrStatus; //故障状态
String param; //当前参数值
String paramVals; //当前参数code、value集合
String parmType; //预警参数类型
String posId; //当前参数code集合
String refId; //关联故障号
String scode; //配属所编码
String sn; //车组号
String sname; //配属所名称
String station; //服务站名称
String stationCode; //服务站编码
String status; //处理状态
String sys_code; //
String sys_name; //
String time; //当前记录时间
String tipType; //超温超差类型:值为数字:1-超温、2-超差、3-超温且超差
String toolTip; //预警项目名称
String trainStatus; //车组状态
String train_no; //车次
String train_type; //车型
String type; //应急指挥类型
String warnName; //预警项目名称
String warnRemark; //预警提示信息
String warnType; //温度预警标识
读取接口:
FetchWarnRecFromHadoop(String rule)
其中 rule为匹配条件,通过公式定义,公式的定义支持以下运算符:
属于、且、或、等于、大于、小于、不小于、不大于
并且支持运算符的自主定义
如:
(sn属于({SN1},{SN2},{SN3}) 且 car_no 等于 8 且 beginTime 大于(略) )
sn、car_no、beginTime为WarnBean中的属性,匹配条件应该支持WarnBean中的所有属性,未来如果WarnBean增加了新的属性,接口应该可以支持根据新的属性编写匹配条件;
读取的结果存入Redis里面,其:
key: WarnRecHis+":"+YYYYMMDD+":"+NNNN
Value: {YYYYMMDDHHmmSSMIL, jsonstring}
其中
YYYYMMDD为日期,YYYY为年,MM为月,DD为日
NNNN为车号
YYYYMMDDHHmmSSMIL为参数采集时间(YYYY为年,MM为月,DD为日,HH为(略)进制的小时,mm为(略)钟,SS为秒,MIL为毫秒)
其中YYYYMMDD为日期,NNNN为车号,如果返回的结果(略)布在N个日期上,则写入N个可以里面。
Jsonstring为NNNN这个车在YYYYMMDDHHmmSSMIL这个时间点符合条件的预警记录列表List< WarnBean>转换得到的Json字符串;
三、从Hadoop集群读入GPS记录并写入redis的接口定义:
GPS记录GpsRecBean有以下属性:
String train_type;//车型
String sn;//车组号
String gps_time;//gps时间
String gps_speed;//速度
String is_leading;//是否主控
String car_no;//车箱号
String data_time;//数据采集时间
String train_no;//车次
String gps_long;//gps经度
String gps_longref;//gps经度参考
String gps_lat;//gps维度
String gps_latref;//gps维度参考
读取接口:
FetchGPSRecFromHadoop(String rule)
其中 rule为匹配条件,通过公式定义,公式的定义支持以下运算符:
属于、且、或、等于、大于、小于、不小于、不大于
并且支持运算符的自主定义
如:
(sn属于({SN1},{SN2},{SN3}) 且 gps_time大于(略) )
sn、gps_time为GpsRecBean中的属性,匹配条件应该支持GpsRecBean中的所有属性,未来如果GpsRecBean增加了新的属性,接口应该可以支持根据新的属性编写匹配条件;
读取的结果存入Redis里面,其:
key: GpsRecHis+":"+YYYYMMDD+":"+NNNN
Value: {YYYYMMDDHHmmSSMIL, jsonstring}
其中
YYYYMMDD为日期,YYYY为年,MM为月,DD为日
NNNN为车号
YYYYMMDDHHmmSSMIL为参数采集时间(YYYY为年,MM为月,DD为日,HH为(略)进制的小时,mm为(略)钟,SS为秒,MIL为毫秒)
其中YYYYMMDD为日期,NNNN为车号,如果返回的结果(略)布在N个日期上,则写入N个可以里面。
Jsonstring为NNNN这个车在YYYYMMDDHHmmSSMIL这个时间点符合条件的GPS记录列表List< GpsRecBean>转换得到的Json字符串;
及招标文件中的(略)页4 sap部(略)的采购内容取消,同时sap相关内容也取消。
1、验收部(略)增加内容:
若数据规格发生改变,卖方有责任按照接口要求修改接口程序,若没有按项目计划实现这些接口要求,则对由此引起的”动车组车(略)项目Ⅱ期”(略)造成不匹配、不兼容的风险、损失等负全部责任。
二、本项目投标截止及开标时间变更为(略)年(略)月(略)日9点(略)(略)。
三、其它事项均不变。
项目联系人:(略)n> 高攀
联系方式: (略)-(略)