大华(dahua)DSS PRO智慧安防阵列崩溃后的恢复方法

IT疑难杂症诊疗室 10w+人浏览 757人参与

大华DSS PRO 是一款面向中小型项目的综合安防管理平台,广泛应用于文教卫、楼宇、停车场、零售、金融、司法、移动执法等领域。它采用客户端-服务器架构,支持BS、CS和手机端访问,能够集中管理大华各类硬件设备,并提供视频预览、录像回放、报警管理、电子地图、人脸识别、出入口管理等上层业务功能该平台具备灵活、可扩展、高可靠的特点,支持设备初始化、角色权限管理、事件报警联动、中央存储、视频墙、地图等高级功能,并可通过ONVIF协议集成第三方设备……

从以上描述可以看出来DSS应该是一个软件平台,可以用于管理大型存储服器,这次遇到的问题就是大华DSS PRO平台下某一组阵列崩溃导致数据丢失,我们来看看遇到这类问题如何解决。

故障存储:

西数WD121EJRX 12TB*2/管理系统:大华DSS PRO/文件系统:大华嵌入式CQFS

故障现象:

客户描述一台大华视频存储服务器,逻辑上分出多组阵列,其中一组阵列由于硬盘离线导致阵列崩溃,在出现问题后把两块盘从存储柜中取出。由于此存储服务器维护人员新老交接,所以无法提供阵列的详细情况,仅有一张比较模糊的阵列崩溃前的磁盘使用情况照片(图1)。在故障盘移出后,又接入三块磁盘重新组建阵列并融入DSS PRO管理平台。需要恢复此阵列上的所有视频数据!

图1:阵列正常前的情况

故障分析:

由于是存储服务器中的一组阵列,两块盘的话如果开启阵列可能的方式仅有RAID1和RAID0,但是也不排除可能是三盘的RAID5,比如一块盘早期离线取出,毕竟后期上线的是三块新盘。所以根据阵列对磁盘数量的最低要求可选的三种RAID方式就是0,1,5,而从那种截图可以得出结论,不太可能是RAID1(RAID1双盘镜像仅有一块磁盘的容量),那么就只剩下两盘RAID0或者三盘RAID5两种可能了。

故障处理:

本例中在开始分析数据前需要先解决阵列重组的问题,因为底层数据全部是建立在阵列基础之上。所以分两步走:1、分析阵列   2、分析数据。

1、分析阵列

RAID0和RAID5最大的区别就在于校验P块,RAID0只做分块没有安全冗余所以也就没有校验块了,鉴于此开始分析,分析发现大华DSS还是使用了其独创的大华视频块结构,由于特征明显所以很快就确定了原始阵列应该是三盘RAID5,由于RAID5的安全冗余其最大缺盘数为1,而不见踪影的那块盘肯定是最先“离线”的,然后阵列一直处于“降级”运行的模式下,一般而言这种模式下存储服务器肯定会有各种提示(如闪灯或者在阵列界面提示添加新盘),对这些提示的无视才最终导致阵列崩溃!

对于RAID5来说重组成功的三大条件就是物理盘顺序、块大小、条带的走向(图2),通过对两块盘中大华视频块的分析解决了RAID5重组所有问题(图3)。

图2:三盘RAID5的原理

图3:RAID5阵列参数

  1. 数据分析

在解决完阵列重组的问题后,就需要进行底层数据分析了,由于大华DSS PRO智慧平台属于较新的管理软件,各种资料仅停留在使用层面,其底层原理网上没有任何信息,也没有恢复软件支持,所以接下来就进入最艰难的分析环节,各位看官准备好一起探索吧:-)

还是从那张模糊的截图上说起吧,截图上已知信息:

  1. 两个逻辑盘
  2. 第1个逻辑盘使用空间更大,第2个使用的很少

逻辑上的现象需要物理层作支撑,我们“由表及里”的分析,既然使用的是嵌入式安防文件系统,那么和之前大华的单盘DHFS肯定会有一些相似的地方。作为逻辑盘至少需要有一个入口,就和NTFS的DBR一样,前期需要先定位这个“DBR”,由于分区表完整所以很快定位到第一个 “DBR”(图4)。

图4:CQFS文件系统的入口

有了逻辑盘的“入口”就可以得到相应的参数如:块大小、块数量、逻辑盘长度等,有了这些就能确定逻辑盘的结束LBA值,通过定位果然在此逻辑盘之后又发现一个逻辑盘。也就是说22TB的物理盘上划分了两个逻辑盘,这个和截图中的信息是高度吻合的,也进一步证明了我们判断的准确性。对于此文件系统,就根据其自身的标签命名为“CQFS”。

之前分析RAID阵列时就发现视频块仍然和单盘系统DHFS保持一致,这说明CQFS对DHFS还是有所继承的,基于此我们决定从视频块入手。通过不断的对比基本上能确定CQFS存在目录区、数据区两大分区,同时也是通过块来进行逻辑盘管理的,只不过块大小比DHFS要大的多,而且相对来讲其数据块存储时是很灵活的差异主要体现如下:

  1. DHFS使用小块存储数据,每个小块仅存储一个摄像机的数据;
  2. CQFS使用大块存储,每个大块中存储多个摄像头的数据。

考虑到“智慧监控”终端数量多、数据传输量大等特点,这样的设计是很合理的。而由于大块中存储数据的差异,数据的分离和重组就比较重要,否则恢复的数据就会出现通道紊乱的情况(表现就是播放A通道数据时突然切换到B通道)。

图5:CQFS的超大数据块

接下来就需要把分析基础转化成程序代码,去恢复海量数据,经过几天的辛苦调试“大华DSS PRO智能监控恢复程序DEMO”落地,测试后效果非常好。由于阵列重组后一直使用的是RTT的磁盘虚拟逻辑盘功能,发现IO速度过慢。而考虑到第二个逻辑盘仅使用2TB的情况(后续全为00),所以计划直接镜像两个逻辑盘,然后再去扫描。两个盘的镜像大约消耗了三天时间,剩下的就是保存数据了。

图6:RTT的虚拟磁盘最大的缺点就是“慢”

    考虑到数据量较大,且客户提供的备盘为单盘,所以对程序进行了一些优化,基本上采用极简设计“发现块->重组块->保存视频”,把主要精力集中的保存上来,尽可能提升IO的速度(图9),为了方便查看,在保存时文件名中加了日期信息(图11)。

图7:极简模式下逻辑盘P1扫描加保存

图8:极简模式下逻辑盘P2扫描加保存

图9:单盘模式下的IO速度

经过五天时间,所有的数据成功提取,文件的播放没有任何问题画面和声音都正常,客户远程确认后非常满意,至此恢复工作完成(图10)。

图10:部分恢复的数据

图11:恢复后正常播放的文件

这就是大华DSS PRO智慧安防阵列崩溃后的恢复方法,大家在遇到此类问题时,可以和CHS数据实验室联系!

内容概要:本文介绍了一个基于冠豪猪优化算法(CPO)的无人机三维路径规划项目,利用Python实现了在复杂三维环境中为无人机规划安全、高效、低能耗飞行路径的完整解决方案。项目涵盖空间环境建模、无人机动力学约束、路径编码、多目标代价函数设计以及CPO算法的核心实现。通过体素网格建模、动态障碍物处理、路径平滑技术和多约束融合机制,系统能够在高维、密集障碍环境下快速搜索出满足飞行可行性、安全性与能效最优的路径,并支持在线规划以适应动态环境变化。文中还提供了关键模块的代码示例,包括环境建模、路径评估和CPO优化流程。; 适合人群:具备一定Python编程基础和优化算法基础知识,从事无人机、智能机器人、路径规划或智能优化算法研究的相关科研人员与工程技术人员,尤其适合研究生及有一定工作经验的研发工程师。; 使用场景及目标:①应用于复杂三维环境下的无人机自主导航与避障;②研究智能优化算法(如CPO)在路径规划中的实际部署与性能优化;③实现多目标(路径最短、能耗最低、安全性最高)耦合条件下的工程化路径求解;④构建可扩展的智能无人系统决策框架。; 阅读建议:建议结合文中模型架构与代码示例进行实践运行,点关注目标函数设计、CPO算法改进策略与约束处理机制,宜在仿真环境中测试不同场景以深入理解算法行为与系统鲁棒性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值