快速分布式文件系统文件元数据的生成方法及装置的制造方法_2

文档序号:8412494阅读:来源:国知局
步骤S13、利用Oracle数据库中的外部表特性将变更日志文件创建为外部表对 象,从而生成FastDFS的文件元数据。
[0040] 其中,由于FastDFS的变更日志文件保存在各存储节点,尽管存储节点会有多个, 但相同Group (组)下每个存储节点中的变更日志内容是完全相同的,因此在步骤SI 1中对 于一个组只需要从任意一个存储节点中获取该变更日志文件;当然若同时涉及多个组,也 只需要分别从每个组中选择一个存储节点,从中获取变更日志文件。
[0041] 其中,步骤Sll选择采用Iinux(本领域技术人员熟知的一种开源和自由的类Unix 操作系统)下的rsync (remote sync,一种数据镜象备份工具命令,其使用方法为本领域技 术人员熟知)命令实现存储节点存储的变更日志文件自动至Oracle (甲骨文)数据库的同 步;另外,为了实现定时自动同步,还通过crontab (常见于Unix和类Unix的操作系统之 中,用于设置周期性被执行的指令)命令触发同步操作按照设置的时间间隔执行。
[0042] 具体的,步骤Sll -种实现方式是:在FastDFS中同一组下任意存储节点,使用 rsync命令创建用于将变更日志文件同步至Oracle数据库的同步命令,并将同步命令直接 设置在crontab命令中以执行,并在crontab命令中设置执行时间间隔,例如执行时间间隔 为8分钟、10分钟或15分钟。
[0043] 具体的,步骤Sll另一种实现方式是:在快速分布式文件系统中同一组下任意存 储节点,使用rsync命令创建用于将变更日志文件同步至Oracle数据库的同步命令,将创 建的同步命令保存至脚本文件中,将脚本文件在crontab命令中执行,并在crontab命令中 设置执行时间间隔,例如执行时间间隔为8分钟、10分钟或15分钟。
[0044] 下面再举一例对步骤Sll进行说明。
[0045] 1、使用rsync命令,将变更日志文件推送到Oracle服务器,其代码如下:
[0046] #/usr/bin/rsync-vzrtopg-progress/data/fastdfs/data/sync/binlog. *
[0047] junsansi@192. 168. I. 32::fastdfs_binlog-password-file=/etc/rsync. jss
[0048] 2、创建自动任务,使同步脚本能够自动执行,执行crontab-e命令,将上述执行的 命令保存在crontab中,设置每10分钟同步一次,其代码如下:
[0049] #crontab-e
[0050] 氺/10氺氺氺氺/usr/bin/rsync_vzrtopg__progress/data/fastdfs/data/sync/ binlog. *
[0051] junsansi@192. 168. I. 32::fastdfs_binlog-password-file=/etc/rsync. jss
[0052] 或者,也可以将rsync命令保存在脚本文件中,而后在crontab中执行脚本文件。
[0053] 其中,步骤S13创建的外部表的过程主要包括:创建指向同步至的变更日志文件 所在目录的目录对象,并为用户授予对目录对象的读写权限;根据创建的目录对象加载变 更日志文件,并根据Oracle数据库中的外部表特性的创建规则将变更日志文件创建为外 部表对象。以上是典型的创建Oracle外部表的过程,其为本领域技术人员所熟知,尤其是 外部表特性的创建规则和具体语法等。下面结合本发明的具体内容介绍该部分内容。
[0054] Oracle的外部表有两个部分,一部分是表定义,这部分与常规的表对象几乎完全 相同,例如:
[0055]
【主权项】
1. 一种快速分布式文件系统文件元数据的生成方法,其特征在于:包括: 在快速分布式文件系统中同一组下任意存储节点配置用于文件同步的rsync命令; 执行所述rsync命令,将所述存储节点存储的变更日志文件同步至Oracle数据库; 利用所述Oracle数据库中的外部表特性将所述变更日志文件创建为外部表对象,生 成所述快速分布式文件系统文件元数据。
2. 如权利要求1所述的快速分布式文件系统文件元数据的生成方法,其特征在于:所 述在快速分布式文件系统中同一组下任意存储节点配置用于文件同步的rsync命令包括: 在快速分布式文件系统中同一组下任意存储节点,使用rsync命令创建用于将变更日 志文件同步至Oracle数据库的同步命令,并将所述同步命令直接设置在crontab命令中以 执行,并在所述crontab命令中设置执行时间间隔。
3. 如权利要求1所述的快速分布式文件系统文件元数据的生成方法,其特征在于:所 述在快速分布式文件系统中同一组下任意存储节点配置用于文件同步的rsync命令包括: 在快速分布式文件系统中同一组下任意存储节点,使用rsync命令创建用于将变更日 志文件同步至Oracle数据库的同步命令,将所述创建的同步命令保存至脚本文件中,将所 述脚本文件在crontab命令中执行,并在所述crontab命令中设置执行时间间隔。
4. 如权利要求1所述的快速分布式文件系统文件元数据的生成方法,其特征在于:所 述利用Oracle数据库中的外部表特性将所述变更日志文件创建为外部表对象包括: 创建指向同步至的变更日志文件所在目录的目录对象,并为用户授予对目录对象的读 写权限; 根据所述创建的目录对象加载变更日志文件,并根据Oracle数据库中的外部表特性 的创建规则将所述变更日志文件创建为外部表对象。
5. 如权利要求1-4中任一项所述的快速分布式文件系统文件元数据的生成方法,其特 征在于:所述生成所述快速分布式文件系统文件元数据之后,还包括:接收并响应基于结 构化查询语句SQL的外部表查询请求,所述外部表查询请求用于请求查询外部表中文件列 表和/或文件的创建时间。
6. -种快速分布式文件系统文件元数据的生成装置,其特征在于:包括: 配置模块,用于在快速分布式文件系统中同一组下任意存储节点配置用于文件同步的rsync命令; 同步模块,用于执行所述rsync命令,将所述存储节点存储的变更日志文件同步至Oracle数据库; 外部表创建模块,用于利用所述Oracle数据库中的外部表特性将所述变更日志文件 创建为外部表对象,生成所述快速分布式文件系统的文件元数据。
7. 如权利要求6所述的快速分布式文件系统文件元数据的生成装置,其特征在于:所 述配置模块,具体用于在快速分布式文件系统中同一组下任意存储节点,使用rsync命令 创建用于将变更日志文件同步至Oracle数据库的同步命令,并将所述同步命令直接设置 在crontab命令中以执行,并在所述crontab命令中设置执行时间间隔。
8. 如权利要求6所述的快速分布式文件系统文件元数据的生成装置,其特征在于:所 述配置模块,具体用于在快速分布式文件系统中同一组下任意存储节点,使用rsync命令 创建用于将变更日志文件同步至Oracle数据库的同步命令,将所述创建的同步命令保存 至脚本文件中,将所述脚本文件在crontab命令中执行,并在所述crontab命令中设置执行 时间间隔。
9. 如权利要求6所述的快速分布式文件系统文件元数据的生成装置,其特征在于:所 述外部表创建模块包括: 创建目录和授权单元,用于创建指向同步至的变更日志文件所在目录的目录对象,并 为用户授予对目录对象的读写权限; 处理单元,用于根据所述创建的目录对象加载变更日志文件,并根据Oracle数据库中 的外部表特性的创建规则将所述变更日志文件创建为外部表对象。
10. 如权利要求6-9中任一项所述的快速分布式文件系统文件元数据的生成装置,其 特征在于:还包括: 接收和响应模块,用于接收并响应基于结构化查询语句SQL的外部表查询请求,所述 外部表查询请求用于请求查询外部表中文件列表和/或文件的创建时间。
【专利摘要】本发明公开了一种快速分布式文件系统文件元数据的生成方法及装置,包括:在快速分布式文件系统中同一组下任意存储节点配置用于文件同步的rsync命令;执行所述rsync命令,将所述存储节点存储的变更日志文件同步至Oracle数据库;利用所述Oracle数据库中的外部表特性将所述变更日志文件创建为外部表对象,生成所述快速分布式文件系统文件元数据,采用本发明,可以准确的生成FastDFS(快速分布式文件系统)的文件元数据,并且通过Oracle的外部表特性,实现对FastDFS分布式存储系统元数据的分析,其具有部署简单,操作方便,适用场景广泛,对业务层完全透明等特性。
【IPC分类】G06F17-30
【公开号】CN104731827
【申请号】CN201310721737
【发明人】李丙洋
【申请人】重庆新媒农信科技有限公司
【公开日】2015年6月24日
【申请日】2013年12月24日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1