CN104978336A - 基于Hadoop分布式计算平台的非结构化数据存储*** - Google Patents
基于Hadoop分布式计算平台的非结构化数据存储*** Download PDFInfo
- Publication number
- CN104978336A CN104978336A CN201410137127.8A CN201410137127A CN104978336A CN 104978336 A CN104978336 A CN 104978336A CN 201410137127 A CN201410137127 A CN 201410137127A CN 104978336 A CN104978336 A CN 104978336A
- Authority
- CN
- China
- Prior art keywords
- file
- data
- unstructured data
- data storage
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及信息技术处理领域,具体涉及一种基于Hadoop分布式计算平台的非结构化数据存储***;包括以下步骤:S1:客户端通过调用HDFS类DistributedFileSystem对象调用create()函数在文件***的命名空间中创建了一个新文件,该新文件还没有相应的数据块;S2:namenode执行检查确保当前创建的文件还不存在并且客户端有创建该文件的权限,检查通过则创建新文件记录,若检查不通过则文件创建失败并抛出异常;S3:客户端在给创建的新文件写入非结构化数据时,非结构化数据被分成一个个的数据包,并写入内部队列,HDFS的DataStreamer处理数据队列,根据datanode的队列列表要求namenode分配适合的新块来存储数据备份;大大的降低了存储数据所需要昂贵存储设备价格,并且在数据存储过程中,HDFS拥有很好的数据容灾机制。
Description
技术领域
本发明涉及信息技术处理领域,具体涉及一种基于Hadoop分布式计算平台的非结构化数据存储***。
背景技术
在非结构化数据存储中我们主要考虑的是大数据的存储,虽然现行的商业平台也能满足非结构化数据的存储,但问题主要出在***可扩展性和建设费用上。对于庞大的非结构化数据存储产生的I/O瓶颈问题和昂贵的服务器价格不得不使我们另谋出路
发明内容
本发明的目的为了解决上述问题,提供了一种基于Hadoop分布式计算平台的非结构化数据存储***,其可以选择普通的PC机器作为数据节点,这大大的降低了存储数据所需要昂贵存储设备价格,并且在数据存储过程中,HDFS拥有很好的数据容灾机制。
为实现上述目的,本发明提供一种基于Hadoop分布式计算平台的非结构化数据存储***,包括以下步骤:
S1:客户端通过调用HDFS类DistributedFileSystem对象调用create()函数在文件***的命名空间中创建了一个新文件,该新文件还没有相应的数据块;
S2:namenode执行检查确保当前创建的文件还不存在并且客户端有创建该文件的权限,检查通过则创建新文件记录,若检查不通过则文件创建失败并抛出异常;
S3:客户端在给创建的新文件写入非结构化数据时,非结构化数据被分成一个个的数据包,并写入内部队列,HDFS的DataStreamer处理数据队列,根据datanode的队列列表要求namenode分配适合的新块来存储数据备份。
进一步的,所述步骤S3中的创建文件都存储为一系列的块,在同一文件中除最后一块以外其它所有块的大小都一样。
进一步的,所述文件的块都通过复制来保证容错,所述文件的块的大小和复制因子均可以配置,MapReduce程序可指定文件复制的次数,复制因子可以在文件创建时指定,也可以在文件创建后指定。
进一步的,名字节点根据块复制状态做出所有决定,它会周期的收到来自集群内数据结点的心跳和块报告。
进一步的,namenode在运行客户端的节点上放第一个复本,第二个复本放在与第一个不同且随机另外选择的机架中的节点上,第三个复本放在与第二个复本相同的机架,且随机选择另外一个节点,其他复本放在集群中随机选择的节点上。
进一步的,非结构化数据第一次引入***时计算校验和,并在数据通过一个不可靠的通道进行传输时再次计算校验和,这样就能发现数据是否损坏,若计算所得的新校验和原来的校验和不匹配,则认为该非结构化数据已损坏。
进一步的,客户端从datanode读取数据时也会验证校验和,将他们与datanode中存储的校验和进行比较,每个datanode都持久保存有一个用于验证校验和日志,所以它知道每个数据块最后校验时间,客户端成功校验数据后,会告诉这个datanode,这个datanode由此更新日志。
进一步的,客户端读取数据块时,如果检测到错误,就向namenode报告已损坏的数据块及其正在尝试读取操作的这个datanode;namenode将这个已损坏的数据块标记为已损坏,同时将已损坏的副本备份到其他块后,从其他复本进行读取数据。
进一步的,HDFS的命名空间存储在名字节点上,名字结点使用叫做“编辑日志”的事务日志来持久化记录文件***元数据的每次变化
本发明具有以下有益效果:Hadoop的分布式文件***HDFS出现恰好解决了商业平台中的I/O瓶颈和服务器价格昂贵问题。Hadoop的优势体现在以下几个方面:
1)Hadoop依赖于低端服务器甚至是普通计算机,相对于商业平台的高昂成本,它的成本要低得多,几乎可以说任何人都可以使用它,哪怕是信息化成本预算较少的小微企业;
2)HDFS与Map/Reduce紧密集成是Hadoop分布式计算的存储基石。它有自己明确的设计目标那就是支持大的数据文件大至T级,并且这些文件以顺序读取为主,以文件存/读的高吞吐量为目标。在使用HDFS分布式文件***存储非结构化文件后,将提高我们***的存储文件速度;
3)HDFS的数据恢复能力也保证了***的安全可靠性,可靠性体现在它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。
4)同时支持存储节点的热插拔和可以在普通PC机上存储非结构化文件,这不但提高了***的扩展灵活性,还大大降低了企业在硬件方面的投入。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明步骤流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,本发明提供本发明提供一种基于Hadoop分布式计算平台的非结构化数据存储***,包括以下步骤:
S1:客户端通过调用HDFS类DistributedFileSystem对象调用create()函数在文件***的命名空间中创建了一个新文件,该新文件还没有相应的数据块;
S2:namenode执行检查确保当前创建的文件还不存在并且客户端有创建该文件的权限,检查通过则创建新文件记录,若检查不通过则文件创建失败并抛出异常;
S3:客户端在给创建的新文件写入非结构化数据时,非结构化数据被分成一个个的数据包,并写入内部队列,HDFS的DataStreamer处理数据队列,根据datanode的队列列表要求namenode分配适合的新块来存储数据备份。
进一步的,所述步骤S3中的创建文件都存储为一系列的块,在同一文件中除最后一块以外其它所有块的大小都一样。
进一步的,所述文件的块都通过复制来保证容错,所述文件的块的大小和复制因子均可以配置,MapReduce程序可指定文件复制的次数,复制因子可以在文件创建时指定,也可以在文件创建后指定。
进一步的,名字节点根据块复制状态做出所有决定,它会周期的收到来自集群内数据结点的心跳和块报告。
进一步的,namenode在运行客户端的节点上放第一个复本,第二个复本放在与第一个不同且随机另外选择的机架中的节点上,第三个复本放在与第二个复本相同的机架,且随机选择另外一个节点,其他复本放在集群中随机选择的节点上。
进一步的,非结构化数据第一次引入***时计算校验和,并在数据通过一个不可靠的通道进行传输时再次计算校验和,这样就能发现数据是否损坏,若计算所得的新校验和原来的校验和不匹配,则认为该非结构化数据已损坏。
进一步的,客户端从datanode读取数据时也会验证校验和,将他们与datanode中存储的校验和进行比较,每个datanode都持久保存有一个用于验证校验和日志,所以它知道每个数据块最后校验时间,客户端成功校验数据后,会告诉这个datanode,这个datanode由此更新日志。
进一步的,客户端读取数据块时,如果检测到错误,就向namenode报告已损坏的数据块及其正在尝试读取操作的这个datanode;namenode将这个已损坏的数据块标记为已损坏,同时将已损坏的副本备份到其他块后,从其他复本进行读取数据。
进一步的,HDFS的命名空间存储在名字节点上,名字结点使用叫做“编辑日志”的事务日志来持久化记录文件***元数据的每次变化
本发明具有以下有益效果:Hadoop的分布式文件***HDFS出现恰好解决了商业平台中的I/O瓶颈和服务器价格昂贵问题。Hadoop的优势体现在以下几个方面:
5)Hadoop依赖于低端服务器甚至是普通计算机,相对于商业平台的高昂成本,它的成本要低得多,几乎可以说任何人都可以使用它,哪怕是信息化成本预算较少的小微企业;
6)HDFS与Map/Reduce紧密集成是Hadoop分布式计算的存储基石。它有自己明确的设计目标那就是支持大的数据文件大至T级,并且这些文件以顺序读取为主,以文件存/读的高吞吐量为目标。在使用HDFS分布式文件***存储非结构化文件后,将提高我们***的存储文件速度;
7)HDFS的数据恢复能力也保证了***的安全可靠性,可靠性体现在它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。
8)同时支持存储节点的热插拔和可以在普通PC机上存储非结构化文件,这不但提高了***的扩展灵活性,还大大降低了企业在硬件方面的投入。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:包括以下步骤:
S1:客户端通过调用HDFS类DistributedFileSystem对象调用create()函数在文件***的命名空间中创建了一个新文件,该新文件还没有相应的数据块;
S2:namenode执行检查确保当前创建的文件还不存在并且客户端有创建该文件的权限,检查通过则创建新文件记录,若检查不通过则文件创建失败并抛出异常;
S3:客户端在给创建的新文件写入非结构化数据时,非结构化数据被分成一个个的数据包,并写入内部队列,HDFS的DataStreamer处理数据队列,根据datanode的队列列表要求namenode分配适合的新块来存储数据备份。
2.根据权利要求1所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:所述步骤S3中的创建文件都存储为一系列的块,在同一文件中除最后一块以外其它所有块的大小都一样。
3.根据权利要求2所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:所述文件的块都通过复制来保证容错,所述文件的块的大小和复制因子均可以配置,MapReduce程序可指定文件复制的次数,复制因子可以在文件创建时指定,也可以在文件创建后指定。
4.根据权利要求3所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:名字节点根据块复制状态做出所有决定,它会周期的收到来自集群内数据结点的心跳和块报告。
5.根据权利要求1所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:namenode在运行客户端的节点上放第一个复本,第二个复本放在与第一个不同且随机另外选择的机架中的节点上,第三个复本放在与第二个复本相同的机架,且随机选择另外一个节点,其他复本放在集群中随机选择的节点上。
6.根据权利要求1所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:非结构化数据第一次引入***时计算校验和,并在数据通过一个不可靠的通道进行传输时再次计算校验和,这样就能发现数据是否损坏,若计算所得的新校验和原来的校验和不匹配,则认为该非结构化数据已损坏。
7.根据权利要求6所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:客户端从datanode读取数据时也会验证校验和,将他们与datanode中存储的校验和进行比较,每个datanode都持久保存有一个用于验证校验和日志,所以它知道每个数据块最后校验时间,客户端成功校验数据后,会告诉这个datanode,这个datanode由此更新日志。
8.根据权利要求7所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:客户端读取数据块时,如果检测到错误,就向namenode报告已损坏的数据块及其正在尝试读取操作的这个datanode;namenode将这个已损坏的数据块标记为已损坏,同时将已损坏的副本备份到其他块后,从其他复本进行读取数据。
9.根据权利要求1所述的基于Hadoop分布式计算平台的非结构化数据存储***,其特征在于:HDFS的命名空间存储在名字节点上,名字结点使用叫做“编辑日志”的事务日志来持久化记录文件***元数据的每次变化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410137127.8A CN104978336A (zh) | 2014-04-08 | 2014-04-08 | 基于Hadoop分布式计算平台的非结构化数据存储*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410137127.8A CN104978336A (zh) | 2014-04-08 | 2014-04-08 | 基于Hadoop分布式计算平台的非结构化数据存储*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104978336A true CN104978336A (zh) | 2015-10-14 |
Family
ID=54274851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410137127.8A Pending CN104978336A (zh) | 2014-04-08 | 2014-04-08 | 基于Hadoop分布式计算平台的非结构化数据存储*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104978336A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106682227A (zh) * | 2017-01-06 | 2017-05-17 | 郑州云海信息技术有限公司 | 基于分布式文件***的日志数据存储***及读写方法 |
CN107169099A (zh) * | 2017-05-16 | 2017-09-15 | 成都四象联创科技有限公司 | 基于hadoop的数据处理方法 |
CN107402841A (zh) * | 2016-03-30 | 2017-11-28 | 阿里巴巴集团控股有限公司 | 大规模分布式文件***数据修复方法及设备 |
CN107784047A (zh) * | 2016-11-14 | 2018-03-09 | 平安科技(深圳)有限公司 | 存储过程的实现方法及装置 |
CN107807792A (zh) * | 2017-10-27 | 2018-03-16 | 郑州云海信息技术有限公司 | 一种基于副本存储***的数据处理方法及相关装置 |
CN108573007A (zh) * | 2017-06-08 | 2018-09-25 | 北京金山云网络技术有限公司 | 检测数据一致性的方法、装置、电子设备及存储介质 |
CN111176885A (zh) * | 2019-12-31 | 2020-05-19 | 浪潮电子信息产业股份有限公司 | 一种分布式存储***的数据校验方法及相关装置 |
CN111274210A (zh) * | 2020-02-10 | 2020-06-12 | 北京松果电子有限公司 | 元数据处理方法、装置及电子设备 |
CN115454958A (zh) * | 2022-09-15 | 2022-12-09 | 北京百度网讯科技有限公司 | 基于人工智能的数据处理方法、装置、设备、***及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103116643A (zh) * | 2013-02-25 | 2013-05-22 | 江苏物联网研究发展中心 | 基于Hadoop的智慧医疗数据管理方法 |
US20130254246A1 (en) * | 2012-03-21 | 2013-09-26 | Todd Lipcon | Data processing performance enhancement in a distributed file system |
US20130325813A1 (en) * | 2012-05-30 | 2013-12-05 | Spectra Logic Corporation | System and method for archive in a distributed file system |
CN103530387A (zh) * | 2013-10-22 | 2014-01-22 | 浪潮电子信息产业股份有限公司 | 一种hdfs针对小文件的改进方法 |
CN103617290A (zh) * | 2013-12-13 | 2014-03-05 | 江苏名通信息科技有限公司 | 中文机器阅读*** |
-
2014
- 2014-04-08 CN CN201410137127.8A patent/CN104978336A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130254246A1 (en) * | 2012-03-21 | 2013-09-26 | Todd Lipcon | Data processing performance enhancement in a distributed file system |
US20130325813A1 (en) * | 2012-05-30 | 2013-12-05 | Spectra Logic Corporation | System and method for archive in a distributed file system |
CN103116643A (zh) * | 2013-02-25 | 2013-05-22 | 江苏物联网研究发展中心 | 基于Hadoop的智慧医疗数据管理方法 |
CN103530387A (zh) * | 2013-10-22 | 2014-01-22 | 浪潮电子信息产业股份有限公司 | 一种hdfs针对小文件的改进方法 |
CN103617290A (zh) * | 2013-12-13 | 2014-03-05 | 江苏名通信息科技有限公司 | 中文机器阅读*** |
Non-Patent Citations (2)
Title |
---|
周轶男等: "Hadoop文件***性能分析", 《电子技术》 * |
朱颂: "分布式文件***HDFS的分析", 《福建电脑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107402841A (zh) * | 2016-03-30 | 2017-11-28 | 阿里巴巴集团控股有限公司 | 大规模分布式文件***数据修复方法及设备 |
CN107402841B (zh) * | 2016-03-30 | 2021-01-29 | 阿里巴巴集团控股有限公司 | 大规模分布式文件***数据修复方法及设备 |
CN107784047A (zh) * | 2016-11-14 | 2018-03-09 | 平安科技(深圳)有限公司 | 存储过程的实现方法及装置 |
CN107784047B (zh) * | 2016-11-14 | 2020-09-11 | 平安科技(深圳)有限公司 | 存储过程的实现方法及装置 |
CN106682227A (zh) * | 2017-01-06 | 2017-05-17 | 郑州云海信息技术有限公司 | 基于分布式文件***的日志数据存储***及读写方法 |
CN107169099A (zh) * | 2017-05-16 | 2017-09-15 | 成都四象联创科技有限公司 | 基于hadoop的数据处理方法 |
CN108573007A (zh) * | 2017-06-08 | 2018-09-25 | 北京金山云网络技术有限公司 | 检测数据一致性的方法、装置、电子设备及存储介质 |
CN107807792A (zh) * | 2017-10-27 | 2018-03-16 | 郑州云海信息技术有限公司 | 一种基于副本存储***的数据处理方法及相关装置 |
CN111176885A (zh) * | 2019-12-31 | 2020-05-19 | 浪潮电子信息产业股份有限公司 | 一种分布式存储***的数据校验方法及相关装置 |
CN111274210A (zh) * | 2020-02-10 | 2020-06-12 | 北京松果电子有限公司 | 元数据处理方法、装置及电子设备 |
CN111274210B (zh) * | 2020-02-10 | 2023-05-30 | 北京小米松果电子有限公司 | 元数据处理方法、装置及电子设备 |
CN115454958A (zh) * | 2022-09-15 | 2022-12-09 | 北京百度网讯科技有限公司 | 基于人工智能的数据处理方法、装置、设备、***及介质 |
CN115454958B (zh) * | 2022-09-15 | 2024-03-05 | 北京百度网讯科技有限公司 | 基于人工智能的数据处理方法、装置、设备、***及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104978336A (zh) | 基于Hadoop分布式计算平台的非结构化数据存储*** | |
US10437671B2 (en) | Synchronizing replicated stored data | |
CN107391758B (zh) | 数据库切换方法、装置及设备 | |
US8521974B2 (en) | Migration of data in a distributed environment | |
US20190196919A1 (en) | Maintaining files in a retained file system | |
CN103294752B (zh) | 日志传送物理复制环境中备用数据库的在线验证方法和*** | |
US10467424B2 (en) | File system content based security | |
CN110574061A (zh) | 区块链局部分类账 | |
CN110188103A (zh) | 数据对账方法、装置、设备和存储介质 | |
CN102323930B (zh) | 对数据库***中的数据变更进行镜像 | |
US10657004B1 (en) | Single-tenant recovery with a multi-tenant archive | |
US10866827B2 (en) | Virtual machine linking | |
US11481284B2 (en) | Systems and methods for generating self-notarized backups | |
US11914867B2 (en) | Coordinated snapshots among storage systems implementing a promotion/demotion model | |
US8762662B1 (en) | Method and apparatus for application migration validation | |
US10031904B2 (en) | Database management system based on a spreadsheet concept deployed in an object grid | |
CN105608150A (zh) | 一种业务数据的处理方法及*** | |
CN109542860B (zh) | 基于hdfs的业务数据管理方法、终端设备 | |
US10127270B1 (en) | Transaction processing using a key-value store | |
CN105095310B (zh) | 数据处理方法、第一服务器、第二服务器和数据处理*** | |
US11436193B2 (en) | System and method for managing data using an enumerator | |
US11341159B2 (en) | In-stream data load in a replication environment | |
US9471409B2 (en) | Processing of PDSE extended sharing violations among sysplexes with a shared DASD | |
US20210081430A1 (en) | System and method for managing a role-based blockchain network | |
US11645333B1 (en) | Garbage collection integrated with physical file verification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151014 |
|
RJ01 | Rejection of invention patent application after publication |