资源预览内容
第1页 / 共15页
第2页 / 共15页
第3页 / 共15页
第4页 / 共15页
第5页 / 共15页
第6页 / 共15页
第7页 / 共15页
第8页 / 共15页
第9页 / 共15页
第10页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
海量视频数据存储、检索、提取目录1.海量视频存储背景: .32.海量视频存储 DFS: .32.1DFS 工作机理 .32.2DFS 技术特点 .43.开源 Hadoop 分布式存储系统 .63.1Hadoop 简介 .63.2HDFS 的实现 .73.3Mapreduce 的实现 .84.分布式系统 Hadoop 平台的密文存储检索方案 .94.1 方案简介 .94.2 系统架构 .104.3 实现细节 .111.海量视频存储背景:安防技术的进步之快是有目共睹的,图像高清化,传输网络化、存储云化,应用智能平台化等,行业专用视频监控网络和快速发展的家庭安全防范服务领域将很快成为下一个市场重点,随着市场重心的转移,为适应新的市场特点和需求,技术和方案也在悄然的发生变化。随着安防视频监控系统技术的进步和规模的增长对存储的要求也在发生深刻的变化,对存储系统的容量、扩展性、性价比、性能、管理性、稳定性等都提出了新的要求,传统的存储方式已经不能满足要求。为满足安防视频监控的新要求,解决城市级海量视频数据存储、检索难题,以视频、图片文件存储和管理为核心的面向大规模数据密集型应用的、可伸缩的分布式文件系统 DFS(Distributed File System)被提出。2.海量视频存储 DFS:2.1DFS 工作机理DFS 它通过分布式集群架构将网络中普通 PC、通用服务器及各种存储设备集合起来协同工作,并通过专用数据接口,向用户提供海量数据存储、管理和访问服务。部署方式上支持全网分散部署,或在数据中心集中部署。存储介质支持普通硬盘及通用存储设备。在普通 PC 或通用服务器集群上部署的 DFS 可以达到 NAS/SAN 的冗余及可靠性,同时又能提供 NAS/SAN 无法达到的高吞吐量及强大的水平扩展能力。DFS 通过元数据和存储数据分离,控制流和数据流分离,通过负载均衡和数据并发访问策略,在普通硬件条件下获得高效的传输速率以及PB 级的存储容量, DFS 针对音视频文件进行特别优化,支持分布式集群架构下的音视频文件帧级别的查询及定位。为安防视频监控实现智能分析、智能检索奠定基础。2.2DFS 技术特点2.2.1 多服务器同时对外服务DFS 性能优异,支持高并发、带宽饱和利用。云存储系统将控制流和数据流分离,数据访问时多个存储服务器同时对外提供服务,实现高并发访问。自动均衡负载,将不同客户端的访问负载均衡到不同的存储服务器上。系统性能随节点规模的增加呈线性增长。系统的规模越大,云存储系统的优势越明显, 没有性能瓶颈。有利于超大规模城市级监控网络的形成。2.2.2 多数据块副本实现冗余高度可靠,采用多个数据块副本的方式实现冗余可靠,数据在不同的存储节点上具有多个块副本,任意节点发生故障,系统将自动复制数据块副本到新的存储节点上,数据不丢失,实现数据完整可靠;并支持通过编解码算法的方式实现高度可靠,任意同时损坏多个存储节点,数据可通过算法解码自动恢复。该特性可适用于对数据安全级别极高的场合,同时相对于副本冗余的可靠性实现方式大大提高了磁盘空间利用率,不到 40%的磁盘冗余即可实现任意同时损坏三个存储节点而不丢失数据。元数据管理节点采用多机同步热备份的高可用方式容错,其中任一台服务器故障,可无缝自动切换到另一台服务器,服务不间断。整个系统无单点故障,硬件故障自动屏蔽。2.2.3 动态增减存储节点动态加入新的存储节点,只需简单操作,即可实现系统容量从 TB 级向PB 级平滑扩展; 也可以摘下任意节点,系统自动缩小规模而不丢失数据,并自动将摘下的节点上的数据备份到其他节点上,保证整个系统数据的冗余数不变。并同步提升读写及网络性能。2.2.4 降低建设和运营成本降低建设和运营成本,作为整个平台的基础层,文件系统和数据仓库以廉价的高存储 PC 或者单板机代替以往的小型机,联合提供极高的运算能力和极低的存储成本!采用分布式计算和存储,结合优化的硬件,通过集群化运维管理系统,实现计算,存储,网络等资源的动态分配及部署,大大提高资源使用率。3.开源 Hadoop 分布式存储系统3.1Hadoop 简介由 Apache 基金会支持开发的 Hadoop 是一个开源的分布式基础结构,充分利用集群的威力高速运算和存储。Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称 HDFS。HDFS 有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughput)来访问数据,适合那些有着超大数据集(large data set)的项目。Hadoop 是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在 Hadoop 上开发和运行处理海量数据的应用程序。它主要有以下几个优点:高可靠性。Hadoop 按位存储和处理数据的能力值得人们信赖。高扩展性。Hadoop 是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。高效性。Hadoop 能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。高容错性。Hadoop 能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。3.2HDFS 的实现HDFS 是一个 master/slave 的结构,就通常的部署来说,在master 上只运行一个 Namenode,而在每一个 slave 上运行一个Datanode。HDFS 支持传统的层次文件组织结构,同现有的一些文件系统在操作上很类似,比如你可以创建和删除一个文件,把一个文件从一个目录移到另一个目录,重命名等等操作。Namenode 管理着整个分布式文件系统,对文件系统的操作(如建立、删除文件和文件夹)都是通过 Namenode 来控制。 下面是 HDFS 的结构:从上面的图中可以看出,Namenode,Datanode,Client 之间的通信都是建立在 TCP/IP 的基础之上的。当 Client 要执行一个写入的操作的时候,命令不是马上就发送到 Namenode,Client 首先在本机上临时文件夹中缓存这些数据,当临时文件夹中的数据块达到了设定的 Block 的值(默认是 64M)时, Client 便会通知 Namenode,Namenode 便响应 Client 的 RPC 请求,将文件名插入文件系统层次中并且在 Datanode中找到一块存放该数据的 block,同时将该 Datanode 及对应的数据块信息告诉 Client,Client 便这些本地临时文件夹中的数据块写入指定的数据节点。HDFS 采取了副本策略,其目的是为了提高系统的可靠性,可用性。HDFS 的副本放置策略是三个副本,一个放在本节点上,一个放在同一机架中的另一个节点上,还有一个副本放在另一个不同的机架中的一个节点上。3.3Mapreduce 的实现 (忽略这部分)MapReduce 是 Google 的一项重要技术,它是一个编程模型,用以进行大数据量的计算。对于大数据量的计算,通常采用的处理手法就是并行计算。至少现阶段而言,对许多开发人员来说,并行计算还是一个比较遥远的东西。MapReduce 就是一种简化并行计算的编程模型,它让那些没有多少并行计算经验的开发人员也可以开发并行应用。4.分布式系统 Hadoop 平台的密文存储检索方案4.1 方案简介系统采用 HDFS(Hadoop Distributed File System)进行视频存储,视频分布式存储时采用分段策略,视频文件按 IP 地址(即视频源)和日期存储在文件,即每个摄像头的视频数据按天存储在 HDFS 中,每 64M 数据在 HDFS 中存成一个 block。针对每个视频文件会存储其对应的索引文件,索引文件包括两列,第一列是时间戳,第二列是对应时间的视频帧在视频文件中的偏移量,采取分天存储的方案的好处是后期视频数据量过大,需要删除 N(可控)天前的数据,因按天存储直接删除最早期的视频及其索引文件即可完成任务,其中索引文件中的时间间隔是分钟,即每分钟取一次索引,支持分钟级的视频检索。索引文件的存储初步确定有 Mysql 和 Hive 联合完成,Hive 的元数据存储在 Mysql 中,Hive 中分区的概念很好的应用在我们的按天存储,每路摄像头每天的索引文件单独存储,合并检索,Hive 建立在Hadoop 的基础上,将检索任务转换成 MapReduce 作业,检索速度比较快,后期会对 Mysql 和 Hive 的检索速度测试,选取检索速度比较快的。4.2 系统架构(注:前期将 WebServer 和 NameNode 放在同一个机器上)如图所示,整个系统由一个WebServer 和一个 Hadoop 集群组成。WebServer 负责处理用户请求,包括视频的存和取。 NVR上来的数据流通过
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号