CN110809056A - 一种文件存储用户使用量统计的方法 - Google Patents

一种文件存储用户使用量统计的方法 Download PDF

Info

Publication number
CN110809056A
CN110809056A CN201911100508.8A CN201911100508A CN110809056A CN 110809056 A CN110809056 A CN 110809056A CN 201911100508 A CN201911100508 A CN 201911100508A CN 110809056 A CN110809056 A CN 110809056A
Authority
CN
China
Prior art keywords
disk data
file
data
user
file system
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.)
Granted
Application number
CN201911100508.8A
Other languages
English (en)
Other versions
CN110809056B (zh
Inventor
靳登科
于昊
董信超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN201911100508.8A priority Critical patent/CN110809056B/zh
Publication of CN110809056A publication Critical patent/CN110809056A/zh
Application granted granted Critical
Publication of CN110809056B publication Critical patent/CN110809056B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种文件存储用户使用量统计的方法,涉及信息技术领域;云环境下,利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df‑h命令,获取磁盘数据,在无共享主机模式下,通过定时任务登陆部署manila的节点执行df‑h命令,获取磁盘数据,通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量。

Description

一种文件存储用户使用量统计的方法
技术领域
本发明公开一种文件存储用户使用量统计的方法,涉及信息技术领域。
背景技术
文件存储在企业文件共享,大数据分析,流媒体处理等场景下均有广泛应用。公有云文件存储服务可以基于manila组件进行扩展开发。因为openstack的manila组件可以提供共享存储服务,支持nfs和cifs等多种协议,manila创建的文件系统可以挂载到虚机使用,多个虚机可以通过网络共享文件系统中的文件。manila提供了丰富的api用来管理文件系统,但没有提供查询文件系统使用量的接口,在公有云环境下,用户需要在公有云管理界面了解文件系统的使用量,公有云服务提供商也需要依据用户使用量计算费用,有些厂商需要在用户虚机上安装agent实现使用量统计,提高了用户使用门槛,不利于产品的推广和应用。
本发明公开一种文件存储用户使用量统计的方法,基于openstack的manila组件实现,无需安装agent实现统计文件系统使用量,降低用户使用门槛,也可作为公有云服务提供商计费的依据。
发明内容
本发明针对现有技术的问题,提供一种文件存储用户使用量统计的方法,本发明提出的具体方案是:
一种文件存储用户使用量统计的方法,云环境下,利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量。
所述的方法中获取磁盘数据,将磁盘数据进行相应分割后转化为数组,将数组映射为数据库实体类后保存在数据库中。
所述的方法中在数据库中,数据库表中包含磁盘数据分割时的相应字段,利用数据库表查询磁盘数据。
所述的方法中将磁盘数据先转化为字符串类型,再进行分割,分割后字段分别是filesystem,size,used,avail,use%,mounted on。
所述的方法中在数据库中,数据库表中包含磁盘数据分割时的size字段,used字段,mounted on字段,利用数据库表查询磁盘数据。
所述的方法中数据库保存当前磁盘数据之前,先删除设定阈值时间之前保存的磁盘数据。
所述的方法中共享主机模式下利用异步定时任务依次在共享主机上执行df-h命令,获取磁盘数据,定时任务的执行间隔大于所述的阈值时间。
一种文件存储用户使用量统计的工具,包括获取模块、关联模块及匹配模块,
云环境下,获取模块利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
获取模块在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
关联模块通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,匹配模块在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量。
本发明的有益之处是:
本发明公开一种文件存储用户使用量统计的方法,在云环境下,利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量;通过本发明的方法,无需在manila节点,共享主机或者租户虚机安装agent,仅通过定时任务在manila节点或共享主机远程执行shell命令,利用manila节点和共享主机的端口并已知拥有root权限的用户名和密码即可实现,并且对用户完全透明,降低用户使用门槛,用户使用量信息可以作为manila api查询结果的补充,也可作为公有云服务提供商计费的依据。
附图说明
图1是本发明方法流程示意图。
具体实施方式
本发明提供一种文件存储用户使用量统计的方法,云环境下,利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量。
同时提供与上述方法相应的一种文件存储用户使用量统计的工具,包括获取模块、关联模块及匹配模块,
云环境下,获取模块利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
获取模块在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
关联模块通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,匹配模块在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量。
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
利用本发明方法对文件存储用户使用量进行统计,具体过程为:
云环境下,利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
可通过引入jsch-0.1.55.jar实现springboot应用远程执行shell命令,命令的返回值为InputStream类型,通过commons-io-2.5.jar中的IOUtils.toString方法将获取的磁盘数据转化为字符串类型,各行的结果由“\n”分割,每行数据由一个或多个空格分割,字段分别是filesystem,size,used,avail,use%,mounted on,通过split(“\\s+”)将每行数据转化为数组。将数组映射为数据库实体类后保存在数据库中,数据库表的字段为id,totalSize,usedSize,mountedOn,createdTime,其中id为自增主键,类型为bigint(20),可以满足系统长期有运行的要求,totalSize对应shell命令结果的size字段,usedSize对应used,mountedOn对应mounted on,createdTime为当前时间,利用数据库表查询磁盘数据,
文件系统挂载点与执行“df–h”命令mounted on字段是一一对应的,可以通过这一点建立文件系统与用户使用量的联系,为了节省数据库查询开销,在获取的磁盘数据中查询所有文件使用量数据,再再遍历文件系统列表的文件进行匹配,获得用户文件使用量,节省了数据库查询开销。
在上述过程中,共享主机模式下需要依次登陆共享主机执行命令,耗时可能较长,使用异步定时任务,防止定时任务阻塞,影响数据采集,同时在数据库保存当前磁盘数据之前,先删除设定阈值时间之前保存的磁盘数据,比如10分钟之前保存的磁盘数据,有利于数据更新,并且异步定时任务的定时任务的执行间隔大于阈值时间,例如大于10分钟,更有利于防止定时任务阻塞。
同样利用本发明工具进行对文件存储用户使用量进行统计,具体过程为:
云环境下,获取模块利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
获取模块在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
可通过引入jsch-0.1.55.jar实现springboot应用远程执行shell命令,命令的返回值为InputStream类型,通过commons-io-2.5.jar中的IOUtils.toString方法将获取的磁盘数据转化为字符串类型,各行的结果由“\n”分割,每行数据由一个或多个空格分割,字段分别是filesystem,size,used,avail,use%,mounted on,通过split(“\\s+”)将每行数据转化为数组。将数组映射为数据库实体类后保存在数据库中,数据库表的字段为id,totalSize,usedSize,mountedOn,createdTime,其中id为自增主键,类型为bigint(20),可以满足系统长期有运行的要求,totalSize对应shell命令结果的size字段,usedSize对应used,mountedOn对应mounted on,createdTime为当前时间,利用数据库表查询磁盘数据,
文件系统挂载点与执行“df–h”命令mounted on字段是一一对应的,关联模块可以通过这一点建立文件系统与用户使用量的联系,为了节省数据库查询开销,匹配模块在获取的磁盘数据中查询所有文件使用量数据,再再遍历文件系统列表的文件进行匹配,获得用户文件使用量,节省了数据库查询开销。
在上述过程中,共享主机模式下需要依次登陆共享主机执行命令,耗时可能较长,获取模块可以使用异步定时任务,防止定时任务阻塞,影响数据采集,同时在数据库保存当前磁盘数据之前,先删除设定阈值时间之前保存的磁盘数据,比如10分钟之前保存的磁盘数据,有利于数据更新,并且异步定时任务的定时任务的执行间隔大于阈值时间,例如大于10分钟,更有利于防止定时任务阻塞。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

Claims (8)

1.一种文件存储用户使用量统计的方法,其特征是云环境下,利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量。
2.根据权利要求1所述的方法,其特征是获取磁盘数据,将磁盘数据进行相应分割后转化为数组,将数组映射为数据库实体类后保存在数据库中。
3.根据权利要求2所述的方法,其特征是在数据库中,数据库表中包含磁盘数据分割时的相应字段,利用数据库表查询磁盘数据。
4.根据权利要求2或3所述的方法,其特征是将磁盘数据先转化为字符串类型,再进行分割,分割后字段分别是filesystem,size,used,avail,use%,mounted on。
5.根据权利要求4所述的方法,其特征是在数据库中,数据库表中包含磁盘数据分割时的size字段,used字段,mounted on字段,利用数据库表查询磁盘数据。
6.根据权利要求1或5所述的方法,其特征是数据库保存当前磁盘数据之前,先删除设定阈值时间之前保存的磁盘数据。
7.根据权利要求6所述的方法,其特征是共享主机模式下利用异步定时任务依次在共享主机上执行df-h命令,获取磁盘数据,定时任务的执行间隔大于所述的阈值时间。
8.一种文件存储用户使用量统计的工具,其特征是包括获取模块、关联模块及匹配模块,
云环境下,获取模块利用openstack的manila组件,在共享主机模式下通过定时任务依次在共享主机上执行df-h命令,获取磁盘数据,
获取模块在无共享主机模式下,通过定时任务登陆部署manila的节点执行df-h命令,获取磁盘数据,
关联模块通过文件系统挂载点与df–h命令的对应关系,建立文件系统与用户文件使用量的联系,匹配模块在获取的磁盘数据中查询所有文件使用量数据,再与文件系统列表中的文件进行匹配,获得用户文件使用量。
CN201911100508.8A 2019-11-12 2019-11-12 一种文件存储用户使用量统计的方法 Active CN110809056B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911100508.8A CN110809056B (zh) 2019-11-12 2019-11-12 一种文件存储用户使用量统计的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911100508.8A CN110809056B (zh) 2019-11-12 2019-11-12 一种文件存储用户使用量统计的方法

Publications (2)

Publication Number Publication Date
CN110809056A true CN110809056A (zh) 2020-02-18
CN110809056B CN110809056B (zh) 2022-03-22

Family

ID=69502214

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911100508.8A Active CN110809056B (zh) 2019-11-12 2019-11-12 一种文件存储用户使用量统计的方法

Country Status (1)

Country Link
CN (1) CN110809056B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7188120B1 (en) * 2003-05-09 2007-03-06 Sun Microsystems, Inc. System statistics virtualization for operating systems partitions
CN105426522A (zh) * 2015-12-07 2016-03-23 浪潮(北京)电子信息产业有限公司 一种文件系统性能统计方法与系统
CN108197010A (zh) * 2017-12-29 2018-06-22 郑州云海信息技术有限公司 分布式文件系统的容量统计方法、系统、装置及存储介质
CN108829376A (zh) * 2018-04-11 2018-11-16 国家电网公司 一种基于综合诊断平台的调度主站系统的运行监测系统
US10142195B1 (en) * 2015-09-30 2018-11-27 EMC IP Holding Company LLC Partitioned performance tracking core resource consumption independently
CN108924186A (zh) * 2018-06-04 2018-11-30 郑州云海信息技术有限公司 一种云管平台中文件存储的创建方法和系统
CN109831358A (zh) * 2019-01-31 2019-05-31 北京达佳互联信息技术有限公司 一种客户端流量统计方法、装置、服务器及可读存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7188120B1 (en) * 2003-05-09 2007-03-06 Sun Microsystems, Inc. System statistics virtualization for operating systems partitions
US10142195B1 (en) * 2015-09-30 2018-11-27 EMC IP Holding Company LLC Partitioned performance tracking core resource consumption independently
CN105426522A (zh) * 2015-12-07 2016-03-23 浪潮(北京)电子信息产业有限公司 一种文件系统性能统计方法与系统
CN108197010A (zh) * 2017-12-29 2018-06-22 郑州云海信息技术有限公司 分布式文件系统的容量统计方法、系统、装置及存储介质
CN108829376A (zh) * 2018-04-11 2018-11-16 国家电网公司 一种基于综合诊断平台的调度主站系统的运行监测系统
CN108924186A (zh) * 2018-06-04 2018-11-30 郑州云海信息技术有限公司 一种云管平台中文件存储的创建方法和系统
CN109831358A (zh) * 2019-01-31 2019-05-31 北京达佳互联信息技术有限公司 一种客户端流量统计方法、装置、服务器及可读存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DAE WOONG WOO: "《A Simple Direction Finding Compensation Method of Surface-Mounted Patch Antennas》", 《IEEE》 *
ZHONG_JIANYU: "《mount磁盘挂载》", 《CSDN》 *
王景德: "大型计算机"数据存储文件系统"统计程序的开发与应用", 《石油仪器》 *

Also Published As

Publication number Publication date
CN110809056B (zh) 2022-03-22

Similar Documents

Publication Publication Date Title
CN101853287B (zh) 数据压缩快速检索文件系统及其方法
CN103559217B (zh) 一种面向异构数据库的海量组播数据入库实现方法
US6751627B2 (en) Method and apparatus to facilitate accessing data in network management protocol tables
CN103235820B (zh) 一种集群系统中数据存储方法与装置
CN102929936B (zh) 日志记录方法、日志查询方法及系统
CN105138592A (zh) 一种基于分布式架构的日志数据存储和检索方法
AU2017243870B2 (en) "Methods and systems for database optimisation"
CN104778188A (zh) 一种分布式设备日志采集方法
CN103488704A (zh) 一种数据存储方法及装置
CN109063077B (zh) 一种基于弹性搜索的数据访问方法及装置
CN102779138B (zh) 实时数据的硬盘存取方法
CN104050276A (zh) 一种分布式数据库的缓存处理方法及系统
JP2020057416A (ja) 分散データベースにおけるデータブロックを処理する方法およびデバイス
CN106375362A (zh) 分布式服务器的缓存同步方法及系统
CN113900810A (zh) 分布式图处理方法、系统及存储介质
WO2017000592A1 (zh) 数据处理方法、装置及系统
CN113886485A (zh) 数据处理方法、装置、电子设备、系统和存储介质
CN110795431B (zh) 环境监测数据处理方法、装置、设备及存储介质
US20210042302A1 (en) Cost-based optimization for document-oriented database queries
CN111046106A (zh) 缓存数据同步方法、装置、设备及介质
CN111125050A (zh) 一种openstack环境下基于CephFS提供NFS协议的文件存储方法
CN110809056B (zh) 一种文件存储用户使用量统计的方法
CN113641742A (zh) 一种数据抽取方法、装置、设备和存储介质
US10855563B2 (en) Supplementing log messages with metadata
CN104410668A (zh) 一种适用于公有云的虚拟机远程桌面管理方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Applicant after: Inspur cloud Information Technology Co.,Ltd.

Address before: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Applicant before: Tidal Cloud Information Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant