CN113468127A - 数据缓存方法、装置、介质及电子设备 - Google Patents

数据缓存方法、装置、介质及电子设备 Download PDF

Info

Publication number
CN113468127A
CN113468127A CN202010234908.4A CN202010234908A CN113468127A CN 113468127 A CN113468127 A CN 113468127A CN 202010234908 A CN202010234908 A CN 202010234908A CN 113468127 A CN113468127 A CN 113468127A
Authority
CN
China
Prior art keywords
cache
caching
task
data
user
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
Application number
CN202010234908.4A
Other languages
English (en)
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.)
Nuctech Technology Jiangsu Co ltd
Nuctech Co Ltd
Original Assignee
Nuctech Technology Jiangsu Co ltd
Nuctech 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 Nuctech Technology Jiangsu Co ltd, Nuctech Co Ltd filed Critical Nuctech Technology Jiangsu Co ltd
Priority to CN202010234908.4A priority Critical patent/CN113468127A/zh
Publication of CN113468127A publication Critical patent/CN113468127A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种数据缓存方法,包括:响应于用户在图形化界面的操作,接收用户缓存数据请求;基于所述用户缓存数据请求生成缓存任务;根据所述缓存任务对待缓存数据进行缓存;以及发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,这样有助于用户感知缓存系统的存在,从而提升了整个缓存系统对于用户的易用性,而且以此方式进行缓存数据可以在很大程度上会降低对缓存系统的安全性带来不良的影响。本发明还提供了一种数据缓存装置、介质以及电子设备。

Description

数据缓存方法、装置、介质及电子设备
技术领域
本发明涉及数据处理的技术领域,具体而言,涉及一种数据缓存方法、装置、介质及电子设备。
背景技术
随着大数据时代的来临以及人工智能技术的不断发展,越来越多的工程师致力于大数据和人工智能方面的研究,而无论是大数据领域还是人工智能领域都是以大量的数据为基础的,数据通常是以数据文件的方式最终持久化于磁盘当中。
实际上这样的存储方式本身就相当于提供了数据文件的缓存机制,而根据缓存动作发生的方式又可以分为纯手动和全自动两种,纯手动方式是指文件缓存动作完全由用户完成,即用户在存储数据文件时直接选择存储于不同的磁盘;而全自动方式是指用户默认将数据文件存储于磁盘,然后由专用的缓存系统将数据文件缓存至缓存服务器供用户使用。
但是发明人在实现本发明的发明构思时发现相关技术中至少存在以下技术问题:在上述的文件存储系统中,若以全手动的方式进行数据文件的缓存,会存在需要向用户直接提供磁盘的存储位置等内部信息,用户通过这些信息直接进行数据文件的存储,这会在很大程度上会对系统的安全性带来不良的影响。而全自动的缓存方式,缓存系统通常以十分黑盒的方式在后台运行,用户完全无法感知缓存系统的存在,即由于采用纯后台方式运行缓存系统,用户无法感知和操作缓存过程,整个缓存系统对于用户的易用性会有所降低。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明实施例的目的在于提供一种数据缓存方法、装置、介质及电子设备,进而至少可以在一定程度上解决了相关技术中的缺陷,并因此实现用户可以感知缓存系统的存在,提升了整个缓存系统对于用户的易用性。
本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。
根据本发明实施例的第一方面,提供了一种数据缓存方法,包括:响应于用户在图形化界面的操作,接收用户缓存数据请求;基于所述用户缓存数据请求生成缓存任务;根据所述缓存任务对待缓存数据进行缓存;以及发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据。
在本发明的一些实施例中,在基于所述用户缓存数据请求生成所述缓存任务之前,该方法还包括:对所述用户缓存数据请求进行用户验证和/或权限验证;在用户验证和/或权限验证通过时,通过预设规则对所述用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求。
在本发明的一些实施例中,根据所述缓存任务对所述待缓存数据进行缓存包括:通过文件缓存模块根据所述缓存任务中的目的地址将所述待缓存数据缓存到一个缓存服务器或多个缓存服务器。
在本发明的一些实施例中,该方法还包括:将一个或多个所述文件缓存模块的信息记录在zookeeper集群中的节点上,其中,所述文件缓存模块的信息包括所述文件缓存模块的运行信息和/或所述文件缓存模块中的缓存任务信息;监听所述zookeeper集群中每个节点上的文件缓存模块的信息,根据监听结果确定所述文件缓存模块的状态;根据所述文件缓存模块的状态确定是否增加新的文件缓存模块。
在本发明的一些实施例中,该方法还包括:响应于用户操作,通过接口调用所述文件缓存模块的增删服务;根据所述文件缓存模块的增删服务对所述缓存任务进行增加或者删除。
在本发明的一些实施例中,该方法还包括:通过所述文件缓存模块中的hook机制通知所述缓存任务的状态和/或所述缓存任务的缓存进度。
在本发明的一些实施例中,该方法还包括:通过一个或多个端口获取所述缓存服务器的监控指标和/或缓存系统的监控指标,所述缓存服务器的监控指标包括以下任意一项或多项:所述缓存系统的运行时间、CPU核数、CPU利用率、内存使用率、所述缓存系统的平均负载、磁盘读写量、磁盘每秒读写次数、所述缓存服务器的网络流量,所述缓存系统的监控指标包括以下任意一项或多项:所述文件缓存模块的服务状态、数据库的服务状态、网络文件系统的服务状态。
在本发明的一些实施例中,该方法还包括:通过一个端口获取所述缓存任务的监控指标,所述缓存任务的监控指标包括以下任意一项或多项:所述缓存任务的数目、所述缓存任务的文件数目、所述缓存任务的数据总量、所述缓存任务的使用比率、所述缓存任务的元信息、私有或共享缓存的任务比率、所述缓存任务地域分布。
在本发明的一些实施例中,该方法还包括:对所述缓存服务器的监控指标和/或缓存系统的监控指标进行处理,得到所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表;响应于用户针对所述缓存服务器的监控指标和/或缓存系统的监控指标的操作,发送所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,以使得在所述图形化界面上展示所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表。
在本发明的一些实施例中,该方法还包括:对所述缓存任务的监控指标处理,得到所述缓存任务的监控指标的图表;响应于用户针对所述缓存任务的监控指标的操作,发送所述缓存任务的监控指标,以使得在所述图形化界面上展示所述缓存任务的监控指标。
在本发明的一些实施例中,该方法还包括:根据所述缓存任务中的使用范围将所述缓存任务划分为私有缓存任务或共享缓存任务;根据所述私有缓存任务或所述共享缓存任务确定使用所述私有缓存任务或所述共享缓存任务对应的待缓存数据的用户范围。
根据本发明实施例的第二方面,提供了一种数据缓存装置,包括:缓存前台交互模块,响应于用户在图形化界面的操作,接收用户缓存数据请求;缓存系统管理模块,基于所述用户缓存数据请求生成缓存任务;文件缓存模块,用于根据所述缓存任务对待缓存数据进行缓存;以及第一发送模块,用于发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据。
在本发明的一些实施例中,该装置还包括:验证模块,用于对所述用户缓存数据请求进行用户验证和/或权限验证;第一处理模块,在用户验证和/或权限验证通过时,通过预设规则对所述用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求。
在本发明的一些实施例中,上述文件缓存模块还用于:通过文件缓存模块根据所述缓存任务中的目的地址将所述待缓存数据缓存到一个缓存服务器或多个缓存服务器。
在本发明的一些实施例中,该装置还包括:记录模块,用于将一个或多个所述文件缓存模块的信息记录在zookeeper集群中的节点上,其中,所述文件缓存模块的信息包括所述文件缓存模块的运行信息和/或所述文件缓存模块中的缓存任务信息;监听模块,用于监听所述zookeeper集群中每个节点上的文件缓存模块的信息,根据监听结果确定所述文件缓存模块的状态;第一确定模块,用于根据所述文件缓存模块的状态确定是否增加新的文件缓存模块。
在本发明的一些实施例中,该装置还包括:调用模块,用于响应于用户操作,通过接口调用所述文件缓存模块的增删服务;增删模块,用于根据所述文件缓存模块的增删服务对所述缓存任务进行增加或者删除。
在本发明的一些实施例中,该装置还包括:通知模块,用于通过所述文件缓存模块中的hook机制通知所述缓存任务的状态和/或所述缓存任务的缓存进度。
在本发明的一些实施例中,该装置还包括:第一获取模块,用于通过一个或多个端口获取所述缓存服务器的监控指标和/或缓存系统的监控指标,所述缓存服务器的监控指标包括以下任意一项或多项:所述缓存系统的运行时间、CPU核数、CPU利用率、内存使用率、所述缓存系统的平均负载、磁盘读写量、磁盘每秒读写次数、所述缓存服务器的网络流量,所述缓存系统的监控指标包括以下任意一项或多项:所述文件缓存模块的服务状态、数据库的服务状态、网络文件系统的服务状态。
在本发明的一些实施例中,该装置还包括:第二获取模块,用于通过一个端口获取所述缓存任务的监控指标,所述缓存任务的监控指标包括以下任意一项或多项:所述缓存任务的数目、所述缓存任务的文件数目、所述缓存任务的数据总量、所述缓存任务的使用比率、所述缓存任务的元信息、私有或共享缓存的任务比率、所述缓存任务地域分布。
在本发明的一些实施例中,该装置还包括:第二处理模块,用于对所述缓存服务器的监控指标和/或缓存系统的监控指标进行处理,得到所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表;第二发送模块,用于响应于用户针对所述缓存服务器的监控指标和/或缓存系统的监控指标的操作,发送所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,以使得在所述图形化界面上展示所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表。
在本发明的一些实施例中,该装置还包括:第三处理模块,用于对所述缓存任务的监控指标处理,得到所述缓存任务的监控指标的图表;第三发送模块,用于响应于用户针对所述缓存任务的监控指标的操作,发送所述缓存任务的监控指标,以使得在所述图形化界面上展示所述缓存任务的监控指标。
在本发明的一些实施例中,该装置还包括:划分模块,用于根据所述缓存任务中的使用范围将所述缓存任务划分为私有缓存任务或共享缓存任务;第二确定模块,用于根据所述私有缓存任务或所述共享缓存任务确定使用所述私有缓存任务或所述共享缓存任务对应的待缓存数据的用户范围。
根据本发明实施例的第三方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中第一方面所述的数据缓存方法。
根据本发明实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中第一方面所述的数据缓存方法。
本发明实施例提供的技术方案可以包括以下有益效果:
在本发明的一些实施例所提供的技术方案中,响应于用户在图形化界面的操作,接收用户缓存数据请求,基于用户缓存数据请求生成缓存任务,根据缓存任务对待缓存数据进行缓存,然后发送缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,以使得用户在图形化界面上展示缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,这样有助于用户感知缓存系统的存在,从而提升了整个缓存系统对于用户的易用性,而且以此方式进行缓存数据可以在很大程度上会降低对缓存系统的安全性带来不良的影响。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本发明实施例的数据缓存方法或数据缓存装置的示例性系统架构的示意图;
图2示意性示出了根据本发明的实施例的数据缓存方法的流程图;
图3示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图;
图4示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图;
图5示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图;
图6示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图;
图7示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图;
图8示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图;
图9示意性示出了根据本发明的实施例的通过文件缓存模块将待缓存数据缓存到多个缓存服务器的示意图;
图10示意性示出了根据本发明的实施例的在Zookeeper集群中节点上记录文件缓存模块信息的示意图;
图11示意性示出了根据本发明的实施例的通过多个端口获取监控指标的示意图;
图12示意性示出了根据本发明的实施例的通过一个端口获取监控指标的示意图;
图13示意性示出了根据本发明的实施例的数据缓存装置的方框图;
图14示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图15示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图16示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图17示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图18示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图19示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图20示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图21示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图22示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图;
图23示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1示出了可以应用本发明实施例的数据缓存方法或数据缓存装置的示例性系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一种或多种,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器。例如用户利用终端设备103(也可以是终端设备101或102)向服务器105上传了用户缓存数据请求,服务器105可以基于所述用户缓存数据请求生成缓存任务,根据所述缓存任务对待缓存数据进行缓存;以及发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,这样有助于用户感知缓存系统的存在,从而提升了整个缓存系统对于用户的易用性,而且以此方式进行缓存数据可以在很大程度上会降低对缓存系统的安全性带来不良的影响。
在一些实施例中,本发明实施例所提供的数据缓存方法一般由服务器105执行,相应地,数据缓存装置一般设置于服务器105中。在另一些实施例中,某些终端可以具有与服务器相似的功能从而执行本方法。因此,本发明实施例所提供的数据缓存方法不限定在服务器端执行。
图2示意性示出了根据本发明的实施例的数据缓存方法的流程图。
如图2所示,数据缓存方法可以包括步骤S210~步骤S240。
在步骤S210中,响应于用户在图形化界面的操作,接收用户缓存数据请求。
在步骤S220中,基于所述用户缓存数据请求生成缓存任务。
在步骤S230中,根据所述缓存任务对待缓存数据进行缓存。
在步骤S240中,发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据。
该方法可以响应于用户在图形化界面的操作,接收用户缓存数据请求,基于用户缓存数据请求生成缓存任务,根据缓存任务对待缓存数据进行缓存,然后发送缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,以使得用户在图形化界面上展示缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,这样有助于用户感知缓存系统的存在,从而提升了整个缓存系统对于用户的易用性,而且以此方式进行缓存数据可以在很大程度上会降低对缓存系统的安全性带来不良的影响。
在本发明的一个实施例中,上述图形化界面可以是由缓存系统提供的可操作界面。例如,用户能够通过图形化界面直接与整个缓存系统进行交互,改图形化界面相比于相关技术中的命令行界面能够大大降低用户使用的难度,改善系统的易用性。
在本发明的一个实施例中,当上述缓存系统对接收的用户缓存数据请求处理之后,可以发送缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,使得在上述图形化界面上展示缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,这样有助于用户感知缓存系统的存在,从而提升了整个缓存系统对于用户的易用性。
在本发明的一个实施例中,上述用户缓存数据请求中包含用户想要缓存的数据的文件标识。例如,用户缓存数据请求中的文件标识可以是低速磁盘中的数据的文件标识。
在本发明的一个实施例中,基于上述用户缓存数据请求生成缓存任务可以包括基于上述文件标识生成该用户缓存数据请求的缓存任务。在本实例中,根据缓存任务对待缓存数据进行缓存,例如,执行该缓存任务时可以根据该缓存任务中的文件标识确定出用户要缓存的待缓存数据,然后对待缓存数据进行缓存。
在本发明的一个实施例中,缓存数据的过程中,可以实时发送上述缓存任务、上述缓存任务的状态、上述缓存任务的缓存进度、和/或上述待缓存数据,这样可以使得在图形化界面上展示该缓存任务、该缓存任务的状态、该缓存任务的缓存进度、和/或该待缓存数据,在这种情况下,用户可以在终端的图形化界面上观看到整个缓存数据的过程,这样有助于用户感知缓存系统的存在,从而提升了整个缓存系统对于用户的易用性。
图3示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图。
在步骤S220之前,上述方法还包括步骤S310和步骤S320,具体如图3所示。
在步骤S310中,对所述用户缓存数据请求进行用户验证和/或权限验证。
在步骤S320中,在用户验证和/或权限验证通过时,通过预设规则对所述用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求。
该方法可以对用户缓存数据请求进行用户验证和/或权限验证,这样可以加强对待缓存数据的安全性。在用户验证和/或权限验证通过时,通过预设规则对用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求,进一步提升处理用户缓存数据请求的效率。
在本发明的一个实施例中,上述用户缓存数据请求中还可以包含用户登录上述缓存系统的登录信息和权限信息,例如,登录信息可以是登录上述缓存系统的用户名和密码。权限信息可以指创建缓存任务数目、该单个缓存任务的缓存数据量以及所有缓存任务的数据总量上限。
在本发明的一个实施例中,对用户缓存数据请求进行用户验证。例如,上述缓存系统还可以提供用户注册功能,用户可以通过图形化界面来提供相应的注册信息完成用户的注册过程。这样在接收到用户缓存数据请求时可以进行用户名、密码的校验。
在本发明的一个实施例中,对用户缓存数据请求进行权限验证。例如,在接收到用户缓存数据请求时可以进行权限信息的校验。具体地,对创建缓存任务数目、该单个缓存任务的缓存数据量以及所有缓存任务的数据总量上限进行校验。
在本发明的一个实施例中,上述缓存系统还提供了用户权限管理功能,可以动态的调整用户创建缓存任务的相关权限,如该用户可以创建缓存任务数目、该用户所创建的单个缓存任务的缓存数据量以及该用户所创建的所有缓存任务的数据总量上限等。
在本发明的一个实施例中,上述预设规则可以是根据缓存数据的源地址和缓存数据的目的地址。其中,缓存数据的源地址可以指上述待缓存数据存储的地址,缓存数据的目的地址可以指上述待缓存数据被缓存到的地址。
在本发明的一个实施例中,通过预设规则对所述用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求。例如,首先将上述用户缓存数据请求进行整合,即组织为文件缓存模块所定义的请求格式,然后还可以添加hook信息等,并将该请求发送至上述文件缓存模块,在缓存任务创建成功后继续关注缓存任务的整个生命周期,如缓存完成、缓存失败等,然后返回缓存任务的相应状态,同时关注任务进行过程中包含的文件数量、文件大小等,并与该缓存任务所属用户的实际权限进行比对,以保证在用户的权限内进行文件的缓存操作。
在本发明的一个实施例中,上述文件缓存模块用户将源文件由数据源缓存至缓存服务器。该文件缓存模块支持多种部署方式,即主机方式和容器方式部署。主机方式部署时缓存模块以守护进程方式运行,可以设置开机自启动、故障退出后自动重启等;容器方式部署是指可以将文件缓存模块以守护进程的方式部署于容器当中,有部署简单、与云平台天然适配等特点。同时文件缓存模块的部署位置也有多种选择,如部署在数据源服务器、目标服务器或第三方服务器,缓存服务都能够正常提供文件缓存能力。
在本发明的一个实施例中,上述文件缓存模块支持单节点模式和集群模式方式运行,在单节点模式下,单缓存模块即可完成多数据源至多缓存服务器之间的缓存功能,具体如图9所示。
在本发明的一个实施例中,根据上述缓存任务对所述待缓存数据进行缓存包括:通过上述文件缓存模块根据该缓存任务中的目的地址将待缓存数据缓存到一个缓存服务器或多个缓存服务器。参考图9,上述待缓存数据可以是数据源1、数据源2、或数据源3中的待缓存数据,缓存任务中的目的地址可以是缓存服务器1、缓存服务器2、或缓存服务器3。例如,根据该缓存任务中的目的地址可以将数据源1、数据源2、或数据源3中的待缓存数据缓存至缓存服务器1、缓存服务器2、或缓存服务器3,从而实现可以将多个数据源中的待缓存数据缓存到多个缓存服务器。
在本发明的一个实施例中,缓存服务器可以为一台或多台配备高性能NVMe磁盘的存储服务器,较传统NAS存储服务器其总存储容量通常相对较小,但却有着更好的文件读写性能。缓存服务器采用Ceph管理单台服务器中的多块磁盘,可以根据业务需求灵活的创建多个rbd,而rbd在文件存储方面支持文件的条带化存储,使单个文件分散的存储在不同的物理磁盘当中,这样便能够提供更好的读写性能;同时每个rbd都能够动态的调整容量大小,以适应业务需求变化时的容量调整需求。缓存服务器的数据访问支持多种方式,如常见的nfs、cifs等,通用的数据访问协议保证了用户对数据的访问方式能够向前兼容,即用户无需进行任何访问方式的调整即可像原本访问NAS一样访问缓存服务器当中的数据,这无疑大大提高了易用性。
图4示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图。
如图4所示,上述方法还包括步骤S410~步骤S430。
在步骤S410中,将一个或多个所述文件缓存模块的信息记录在zookeeper集群中的节点上,其中,所述文件缓存模块的信息包括所述文件缓存模块的运行信息和/或所述文件缓存模块中的缓存任务信息。
在步骤S420中,监听所述zookeeper集群中每个节点上的文件缓存模块的信息,根据监听结果确定所述文件缓存模块的状态。
在步骤S430中,根据所述文件缓存模块的状态确定是否增加新的文件缓存模块。
该方法可以根据文件缓存模块的状态确定是否增加新的文件缓存模块,这样可以动态的扩展缓存模块数量,达到动态扩容的能力。
在本发明的一个实施例中,在集群模式下,支持将多个缓存模块实例部署于多台服务器当中,多个文件缓存模块通过zookeeper集群进行服务发现,通过统一的服务模块对外提供服务,在此模式下同时还支持动态的扩展缓存模块数量,达到动态扩容的能力,具体如图10所示。
参考图10,文件缓存模块1、文件缓存模块2、和文件缓存模块3的部署方式为集群式。例如,将文件缓存模块1的信息、文件缓存模块2的信息、和文件缓存模块3的信息分别注册(即记录)到zookeeper中的节点A、B、C中,其中,文件缓存模块的信息包括文件缓存模块的运行信息和/或文件缓存模块中的缓存任务信息。在本实例中,通过服务器模块1可以监听zookeeper集群中每个节点上的文件缓存模块的信息,并根据监听结果确定文件缓存模块的状态,然后根据文件缓存模块的状态确定是否增加新的文件缓存模块。其中,文件缓存模块的状态可以指该文件缓存模块是否处于正常工作状态,或者也可以指该文件缓存文件是否可以再接收缓存任务等等。
在本发明的一个实施例中,在集群模式下,可以解决单台服务器网络带宽有限的问题,从整体上扩大缓存服务的缓存能力;另一方面则可以通过多个实例完成一定的容灾性,如某一实例异常退出,则其他正常实例可以接管该实例当中未完成的缓存任务。文件缓存模块支持多种文件传输方式的搭配,如ftp、本地文件系统,可根据数据源服务器、目标服务器以及缓存模块的部署位置灵活的选择文件传输方式。文件缓存模块对外提供多种服务接口,包括grpc接口以及http接口,外部模块可以通过任意一种接口调用缓存模块提供的增删查功能,缓存模块同时提供hook机制能够异步的通知缓存任务的进度。
图5示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图。
如图5所示,上述方法还包括步骤S510和步骤S520。
在步骤S510中,响应于用户操作,通过接口调用所述文件缓存模块的增删服务。
在步骤S520中,根据所述文件缓存模块的增删服务对所述缓存任务进行增加或者删除。
该方法可以响应于用户操作,通过接口调用文件缓存模块的增删服务,根据文件缓存模块的增删服务对缓存任务进行增加或者删除,有助于用户对误操作生成的缓存任务进行删除,以及有助于用户手动来增加缓存任务,进一步提高用户体验。
在本发明的一个实施例中,该方法还包括:通过所述文件缓存模块中的hook机制通知所述缓存任务的状态和/或所述缓存任务的缓存进度。其中,Hook是Windows中提供的一种用以替换DOS下“中断”的系统机制,中文译为“挂钩”或“钩子”。在对特定的系统事件进行hook后,一旦发生已hook事件,对该事件进行hook的程序就会收到系统的通知,这时程序就能在第一时间对该事件做出响应。或者hook还可以是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。在本实例中,通过hook机制可以向用户通知缓存任务的状态和/或所述缓存任务的缓存进度,便于用户实时获悉缓存任务的状态和/或缓存任务的缓存进度,使得用户在视觉上可以感觉到缓存任务的执行。
在本发明的一个实施例中,通过一个或多个端口获取所述缓存服务器的监控指标和/或缓存系统的监控指标,所述缓存服务器的监控指标包括以下任意一项或多项:所述缓存系统的运行时间、CPU核数、CPU利用率、内存使用率、所述缓存系统的平均负载、磁盘读写量、磁盘每秒读写次数、所述缓存服务器的网络流量,所述缓存系统的监控指标包括以下任意一项或多项:所述文件缓存模块的服务状态、数据库的服务状态、网络文件系统的服务状态。在本实例中,在整个文件缓存系统中会部署一台或多台缓存服务器作为待缓存数据缓存的物理存储服务器,同时如文件缓存模块也可以选择缓存服务器作为部署服务器。
参考图11,采用Prometheus作为监控组件,在对应的缓存服务器部署相应的Exporter。例如,缓存系统中每台服务器(服务器1、服务器2、服务器3)都将部署NodeExporter(例如,Node Exporter1、Node Exporter2、Node Exporter3)收集本服务器的相关硬件监控指标,同时整个缓存系统可以统一部署Service Exporter1获取所有系统基础模块的状态监控指标。例如,获取缓存服务器的监控指标和/或缓存系统的监控指标,所述缓存服务器的监控指标包括以下任意一项或多项:所述缓存系统的运行时间、CPU核数、CPU利用率、内存使用率、所述缓存系统的平均负载、磁盘读写量、磁盘每秒读写次数、所述缓存服务器的网络流量,所述缓存系统的监控指标包括以下任意一项或多项:所述文件缓存模块的服务状态、数据库的服务状态、网络文件系统的服务状态。所有Exporter获取监控指标后上报至Prometheus Server1,使得缓存系统管理员可以从Prometheus Server1获取相关服务器的硬件监控指标,便于实时获悉整个缓存系统的状态。在本实施例中,NodeExporter1、Node Exporter2、Node Exporter3、Service Exporter1可以是端口,用于获取缓存服务器的监控指标和/或缓存系统的监控指标。
在本发明的一个实施例中,通过一个端口获取所述缓存任务的监控指标,所述缓存任务的监控指标包括以下任意一项或多项:所述缓存任务的数目、所述缓存任务的文件数目、所述缓存任务的数据总量、所述缓存任务的使用比率、所述缓存任务的元信息、私有或共享缓存的任务比率、所述缓存任务地域分布。
参考图12,采用Prometheus作为监控组件,整个缓存系统中仅需要统一部署单个Task Exporter1,缓存系统管理模块1提供http接口供其他模块获取缓存任务信息,TaskExporter1定时调用相应接口从缓存系统管理模块2获取其关心的缓存任务监控指标,主要包括缓存任务的数目、所述缓存任务的文件数目、所述缓存任务的数据总量、所述缓存任务的使用比率、所述缓存任务的元信息、私有或共享缓存的任务比率、所述缓存任务地域分布。Task Exporter1获取监控指标后上报至Prometheus Server2,使得缓存系统管理员可以从Prometheus Server2获取缓存任务的监控指标,便于实时获悉缓存任务的状态。在本实施例中,Task Exporter1可以是端口,用于获取缓存任务监控指标。
图6示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图。
如图6所示,上述方法包括步骤S610和步骤S620。
在步骤S610中,对所述缓存服务器的监控指标和/或缓存系统的监控指标进行处理,得到所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表。
在步骤S620中,响应于用户针对所述缓存服务器的监控指标和/或缓存系统的监控指标的操作,发送所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,以使得在所述图形化界面上展示所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表。
该方法可以响应于用户针对所述缓存服务器的监控指标和/或缓存系统的监控指标的操作,发送所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,以使得在所述图形化界面上展示所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,进而使得用户可以形象化的观看整个缓存系统的工作流程。
图7示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图。
如图7所示,上述方法还包括步骤S710和步骤S720。
在步骤S710中,对所述缓存任务的监控指标处理,得到所述缓存任务的监控指标的图表。
在步骤S720中,响应于用户针对所述缓存任务的监控指标的操作,发送所述缓存任务的监控指标,以使得在所述图形化界面上展示所述缓存任务的监控指标。
该方法可以响应于用户针对所述缓存任务的监控指标的操作,发送所述缓存任务的监控指标,以使得在所述图形化界面上展示所述缓存任务的监控指标,进而使得用户可以形象化的观看整个缓存过程的工作流程。
在本发明的一个实施例中,用户可以在图形化界面上查看其创建的所有缓存任务条目、缓存任务所对应的元信息,以及缓存任务当前的对应状态,同时图形化界面显示部分提供了缓存数据的预览能力,用户可以在图形化界面上点击预览按钮触发预览页面,预览页面提供了类似桌面操作系统图形化界面,用户可以与本地操作系统相同的方式浏览打开对应的数据文件,预览功能能够让用户在使用数据前能够对缓存系统中的缓存文件有一个直观全面的了解,从而更好使用这些缓存文件。
图8示意性示出了根据本发明的另一个实施例的数据缓存方法的流程图。
如图8所示,上述方法还包括步骤S810和步骤S820。
在步骤S810中,根据所述缓存任务中的使用范围将所述缓存任务划分为私有缓存任务或共享缓存任务。
在步骤S820中,根据所述私有缓存任务或所述共享缓存任务确定使用所述私有缓存任务或所述共享缓存任务对应的待缓存数据的用户范围。
该方法可以根据私有缓存任务或共享缓存任务确定使用私有缓存任务或共享缓存任务对应的待缓存数据的用户范围,这样可以有小弟避免多用户重复缓存同一份数据的问题,减少了带宽和时间上的消耗。
在本发明的一个实施例中,人机交互部分主要提供了用户对于缓存任务的基本操作如增删查等。另外由于用户的缓存数据有时有共享的需求,缓存系统根据缓存任务使用范围的不同将缓存任务分为私有缓存任务和共享缓存任务,私有缓存任务只能够供创建该缓存任务的用户使用,而共享缓存任务则可以指定其他共享用户同时使用该缓存任务对应的缓存数据,这样有效地避免了多用户重复缓存同一份数据的问题,减少了带宽和时间上的消耗。为了能够满足缓存任务使用范围的变化交互部分提供了将私有任务转换为共享任务的能力,同时也提供了调整共享任务共享人员和查看共享人员对该任务使用情况的能力。
图13示意性示出了根据本发明的实施例的数据缓存装置的方框图。
如图13所示,数据缓存装置900包括缓存前台交互模块901、缓存系统管理模块902、文件缓存模块903和第一发送模块904。
具体地,缓存前台交互模块901,响应于用户在图形化界面的操作,接收用户缓存数据请求。
缓存系统管理模块902,基于所述用户缓存数据请求生成缓存任务。
文件缓存模块903,用于根据所述缓存任务对待缓存数据进行缓存。
第一发送模块904,用于发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据。
该数据缓存装置900可以响应于用户在图形化界面的操作,接收用户缓存数据请求,基于用户缓存数据请求生成缓存任务,根据缓存任务对待缓存数据进行缓存,然后发送缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,以使得用户在图形化界面上展示缓存任务、缓存任务的状态、缓存任务的缓存进度、和/或待缓存数据,这样有助于用户感知缓存系统的存在,从而提升了整个缓存系统对于用户的易用性,而且以此方式进行缓存数据可以在很大程度上会降低对缓存系统的安全性带来不良的影响。
根据本发明的实施例,该数据缓存装置900可以用于实现图2实施例描述的数据缓存方法。
在本发明的一些实施例中,上述文件缓存模块903还用于:通过文件缓存模块根据所述缓存任务中的目的地址将所述待缓存数据缓存到一个缓存服务器或多个缓存服务器。
图14示意性示出了根据本发明的另一个实施例的构建知识图谱装置的方框图。
如图14所示,上述数据缓存装置900还包括验证模块905和第一处理模块906。
具体地,验证模块905,用于对所述用户缓存数据请求进行用户验证和/或权限验证。
第一处理模块906,在用户验证和/或权限验证通过时,通过预设规则对所述用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求。
该数据缓存装置900可以对用户缓存数据请求进行用户验证和/或权限验证,这样可以加强对待缓存数据的安全性。在用户验证和/或权限验证通过时,通过预设规则对用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求,进一步提升处理用户缓存数据请求的效率。
根据本发明的实施例,该数据缓存装置900可以用于实现图3实施例描述的数据缓存方法。
图15示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图15所示,上述数据缓存装置900还包括记录模块907、监听模块908和第一确定模块909。
具体地,记录模块907,用于将一个或多个所述文件缓存模块的信息记录在zookeeper集群中的节点上,其中,所述文件缓存模块的信息包括所述文件缓存模块的运行信息和/或所述文件缓存模块中的缓存任务信息。
监听模块908,用于监听所述zookeeper集群中每个节点上的文件缓存模块的信息,根据监听结果确定所述文件缓存模块的状态。
第一确定模块909,用于根据所述文件缓存模块的状态确定是否增加新的文件缓存模块。
该数据缓存装置900可以根据文件缓存模块的状态确定是否增加新的文件缓存模块,这样可以动态的扩展缓存模块数量,达到动态扩容的能力。
根据本发明的实施例,该数据缓存装置900可以用于实现图4实施例描述的数据缓存方法。
图16示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图16所示,上述数据缓存装置900还包括调用模块910和增删模块911。
具体地,调用模块910,用于响应于用户操作,通过接口调用所述文件缓存模块的增删服务。
增删模块911,用于根据所述文件缓存模块的增删服务对所述缓存任务进行增加或者删除。
该数据缓存装置900可以响应于用户操作,通过接口调用文件缓存模块的增删服务,根据文件缓存模块的增删服务对缓存任务进行增加或者删除,有助于用户对误操作生成的缓存任务进行删除,以及有助于用户手动来增加缓存任务,进一步提高用户体验。
根据本发明的实施例,该数据缓存装置900可以用于实现图5实施例描述的数据缓存方法。
图17示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图17所示,上述数据缓存装置900还包括通知模块912。
具体地,通知模块912,用于通过所述文件缓存模块中的hook机制通知所述缓存任务的状态和/或所述缓存任务的缓存进度。
该数据缓存装置900可以通过hook机制可以向用户通知缓存任务的状态和/或所述缓存任务的缓存进度,便于用户实时获悉缓存任务的状态和/或缓存任务的缓存进度,使得用户在视觉上可以感觉到缓存任务的执行。
图18示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图18所示,上述数据缓存装置900还包括第一获取模块913。
具体地,第一获取模块913,用于通过一个或多个端口获取所述缓存服务器的监控指标和/或缓存系统的监控指标,所述缓存服务器的监控指标包括以下任意一项或多项:所述缓存系统的运行时间、CPU核数、CPU利用率、内存使用率、所述缓存系统的平均负载、磁盘读写量、磁盘每秒读写次数、所述缓存服务器的网络流量,所述缓存系统的监控指标包括以下任意一项或多项:所述文件缓存模块的服务状态、数据库的服务状态、网络文件系统的服务状态。
图19示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图19所示,上述数据缓存装置900还包括第二获取模块914。
具体地,第二获取模块914,用于通过一个端口获取所述缓存任务的监控指标,所述缓存任务的监控指标包括以下任意一项或多项:所述缓存任务的数目、所述缓存任务的文件数目、所述缓存任务的数据总量、所述缓存任务的使用比率、所述缓存任务的元信息、私有或共享缓存的任务比率、所述缓存任务地域分布。
图20示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图20所示,上述数据缓存装置900还包括第二处理模块915和第二发送模块916。
具体地,第二处理模块915,用于对所述缓存服务器的监控指标和/或缓存系统的监控指标进行处理,得到所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表。
第二发送模块916,用于响应于用户针对所述缓存服务器的监控指标和/或缓存系统的监控指标的操作,发送所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,以使得在所述图形化界面上展示所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表。
该数据缓存装置900可以响应于用户针对所述缓存服务器的监控指标和/或缓存系统的监控指标的操作,发送所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,以使得在所述图形化界面上展示所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,进而使得用户可以形象化的观看整个缓存系统的工作流程。
根据本发明的实施例,该数据缓存装置900可以用于实现图6实施例描述的数据缓存方法。
图21示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图21所示,上述数据缓存装置900还包括第三处理模块917和第三发送模块918。
具体地,第三处理模块917,用于对所述缓存任务的监控指标处理,得到所述缓存任务的监控指标的图表。
第三发送模块918,用于响应于用户针对所述缓存任务的监控指标的操作,发送所述缓存任务的监控指标,以使得在所述图形化界面上展示所述缓存任务的监控指标。
该数据缓存装置900可以响应于用户针对所述缓存任务的监控指标的操作,发送所述缓存任务的监控指标,以使得在所述图形化界面上展示所述缓存任务的监控指标,进而使得用户可以形象化的观看整个缓存过程的工作流程。
根据本发明的实施例,该数据缓存装置900可以用于实现图7实施例描述的数据缓存方法。
图22示意性示出了根据本发明的另一个实施例的数据缓存装置的方框图。
如图22所示,上述数据缓存装置900还包括划分模块919和第二确定模块920。
具体地,划分模块919,用于根据所述缓存任务中的使用范围将所述缓存任务划分为私有缓存任务或共享缓存任务。
第二确定模块920,用于根据所述私有缓存任务或所述共享缓存任务确定使用所述私有缓存任务或所述共享缓存任务对应的待缓存数据的用户范围。
该数据缓存装置900可以根据私有缓存任务或共享缓存任务确定使用私有缓存任务或共享缓存任务对应的待缓存数据的用户范围,这样可以有小弟避免多用户重复缓存同一份数据的问题,减少了带宽和时间上的消耗。
根据本发明的实施例,该数据缓存装置900可以用于实现图8实施例描述的数据缓存方法。
由于本发明的示例实施例的数据缓存装置的各个模块可以用于实现上述2~图8描述的数据缓存方法的示例实施例的步骤,因此对于本发明装置实施例中未披露的细节,请参照本发明上述的数据缓存方法的实施例。
可以理解的是,缓存前台交互模块901、缓存系统管理模块902、文件缓存模块903、第一发送模块904、验证模块905、第一处理模块906、记录模块907、监听模块908、第一确定模块909、调用模块910、增删模块911、通知模块912、第一获取模块913、第二获取模块914、第二处理模块915、第二发送模块916、第三处理模块917、第三发送模块918、划分模块919、以及第二确定模块920可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本发明的实施例,缓存前台交互模块901、缓存系统管理模块902、文件缓存模块903、第一发送模块904、验证模块905、第一处理模块906、记录模块907、监听模块908、第一确定模块909、调用模块910、增删模块911、通知模块912、第一获取模块913、第二获取模块914、第二处理模块915、第二发送模块916、第三处理模块917、第三发送模块918、划分模块919、以及第二确定模块920中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以以对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式的适当组合来实现。或者,缓存前台交互模块901、缓存系统管理模块902、文件缓存模块903、第一发送模块904、验证模块905、第一处理模块906、记录模块907、监听模块908、第一确定模块909、调用模块910、增删模块911、通知模块912、第一获取模块913、第二获取模块914、第二处理模块915、第二发送模块916、第三处理模块917、第三发送模块918、划分模块919、以及第二确定模块920中的至少一个可以至少被部分地实现为计算机程序模块,当该程序被计算机运行时,可以执行相应模块的功能。
下面参考图23,其示出了适于用来实现本发明实施例的电子设备的计算机系统1000的结构示意图。图23示出的电子设备的计算机系统1000仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图23所示,计算机系统1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有系统操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的数据缓存方法。
例如,所述的电子设备可以实现如图2中所示的:在步骤S210中,响应于用户在图形化界面的操作,接收用户缓存数据请求。在步骤S220中,基于所述用户缓存数据请求生成缓存任务。在步骤S230中,根据所述缓存任务对待缓存数据进行缓存。在步骤S240中,发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本发明实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (14)

1.一种数据缓存方法,其特征在于,包括:
响应于用户在图形化界面的操作,接收用户缓存数据请求;
基于所述用户缓存数据请求生成缓存任务;
根据所述缓存任务对待缓存数据进行缓存;以及
发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据。
2.根据权利要求1所述的方法,其特征在于,在基于所述用户缓存数据请求生成所述缓存任务之前,该方法还包括:
对所述用户缓存数据请求进行用户验证和/或权限验证;
在用户验证和/或权限验证通过时,通过预设规则对所述用户缓存数据请求进行处理,获取满足预设格式的用户缓存数据请求。
3.根据权利要求1所述的方法,其特征在于,根据所述缓存任务对所述待缓存数据进行缓存包括:
通过文件缓存模块根据所述缓存任务中的目的地址将所述待缓存数据缓存到一个缓存服务器或多个缓存服务器。
4.根据权利要求3所述的方法,其特征在于,该方法还包括:
将一个或多个所述文件缓存模块的信息记录在zookeeper集群中的节点上,其中,所述文件缓存模块的信息包括所述文件缓存模块的运行信息和/或所述文件缓存模块中的缓存任务信息;
监听所述zookeeper集群中每个节点上的文件缓存模块的信息,根据监听结果确定所述文件缓存模块的状态;
根据所述文件缓存模块的状态确定是否增加新的文件缓存模块。
5.根据权利要求3所述的方法,其特征在于,该方法还包括:
响应于用户操作,通过接口调用所述文件缓存模块的增删服务;
根据所述文件缓存模块的增删服务对所述缓存任务进行增加或者删除。
6.根据权利要求3所述的方法,其特征在于,该方法还包括:
通过所述文件缓存模块中的hook机制通知所述缓存任务的状态和/或所述缓存任务的缓存进度。
7.根据权利要求3所述的方法,其特征在于,该方法还包括:
通过一个或多个端口获取所述缓存服务器的监控指标和/或缓存系统的监控指标,所述缓存服务器的监控指标包括以下任意一项或多项:所述缓存系统的运行时间、CPU核数、CPU利用率、内存使用率、所述缓存系统的平均负载、磁盘读写量、磁盘每秒读写次数、所述缓存服务器的网络流量,所述缓存系统的监控指标包括以下任意一项或多项:所述文件缓存模块的服务状态、数据库的服务状态、网络文件系统的服务状态。
8.根据权利要求1所述的方法,其特征在于,该方法还包括:
通过一个端口获取所述缓存任务的监控指标,所述缓存任务的监控指标包括以下任意一项或多项:所述缓存任务的数目、所述缓存任务的文件数目、所述缓存任务的数据总量、所述缓存任务的使用比率、所述缓存任务的元信息、私有或共享缓存的任务比率、所述缓存任务地域分布。
9.根据权利要求7所述的方法,其特征在于,该方法还包括:
对所述缓存服务器的监控指标和/或缓存系统的监控指标进行处理,得到所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表;
响应于用户针对所述缓存服务器的监控指标和/或缓存系统的监控指标的操作,发送所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表,以使得在所述图形化界面上展示所述缓存服务器的监控指标的图表和/或缓存系统的监控指标的图表。
10.根据权利要求8所述的方法,其特征在于,该方法还包括:
对所述缓存任务的监控指标处理,得到所述缓存任务的监控指标的图表;
响应于用户针对所述缓存任务的监控指标的操作,发送所述缓存任务的监控指标,以使得在所述图形化界面上展示所述缓存任务的监控指标。
11.根据权利要求1~10任意一项所述的方法,其特征在于,该方法还包括:
根据所述缓存任务中的使用范围将所述缓存任务划分为私有缓存任务或共享缓存任务;
根据所述私有缓存任务或所述共享缓存任务确定使用所述私有缓存任务或所述共享缓存任务对应的待缓存数据的用户范围。
12.一种数据缓存装置,其特征在于,包括:
缓存前台交互模块,响应于用户在图形化界面的操作,接收用户缓存数据请求;
缓存系统管理模块,基于所述用户缓存数据请求生成缓存任务;
文件缓存模块,用于根据所述缓存任务对待缓存数据进行缓存;以及
第一发送模块,用于发送所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据,以使得在所述图形化界面上展示所述缓存任务、所述缓存任务的状态、所述缓存任务的缓存进度、和/或所述待缓存数据。
13.一种电子设备,包括:
一个或多个处理器;以及
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现根据权利要求1~11中任意一项所述的方法。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现根据权利要求1~11中任意一项所述的方法。
CN202010234908.4A 2020-03-30 2020-03-30 数据缓存方法、装置、介质及电子设备 Pending CN113468127A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010234908.4A CN113468127A (zh) 2020-03-30 2020-03-30 数据缓存方法、装置、介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010234908.4A CN113468127A (zh) 2020-03-30 2020-03-30 数据缓存方法、装置、介质及电子设备

Publications (1)

Publication Number Publication Date
CN113468127A true CN113468127A (zh) 2021-10-01

Family

ID=77864752

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010234908.4A Pending CN113468127A (zh) 2020-03-30 2020-03-30 数据缓存方法、装置、介质及电子设备

Country Status (1)

Country Link
CN (1) CN113468127A (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101710341A (zh) * 2009-12-22 2010-05-19 北京航空航天大学 一种透明、通用的文件缓存系统
CN101739298A (zh) * 2008-11-27 2010-06-16 国际商业机器公司 共享缓存管理方法和系统
CN101764824A (zh) * 2010-01-28 2010-06-30 深圳市同洲电子股份有限公司 一种分布式缓存控制方法、装置及系统
CN102244685A (zh) * 2011-08-11 2011-11-16 中国科学院软件研究所 一种支持负载均衡的分布式缓存动态伸缩方法及系统
CN104219327A (zh) * 2014-09-27 2014-12-17 上海瀚之友信息技术服务有限公司 一种分布式缓存系统
CN104618455A (zh) * 2015-01-12 2015-05-13 北京中交兴路车联网科技有限公司 一种通用缓存系统及其方法
CN109032794A (zh) * 2018-07-12 2018-12-18 广州市闲愉凡生信息科技有限公司 一种电子商务系统的Cache对象缓存方法
CN109491873A (zh) * 2018-11-05 2019-03-19 网易无尾熊(杭州)科技有限公司 缓存监控方法、介质、装置和计算设备
CN109831521A (zh) * 2019-03-11 2019-05-31 深圳市珍爱捷云信息技术有限公司 缓存实例管理方法、装置、计算机设备和存储介质
CN109992566A (zh) * 2019-04-12 2019-07-09 苏州浪潮智能科技有限公司 一种文件访问方法、装置、设备及可读存储介质
CN110140119A (zh) * 2016-10-27 2019-08-16 Mz知识产权控股有限责任公司 用于管理缓存服务器群集的系统和方法
CN110837648A (zh) * 2019-10-23 2020-02-25 云深互联(北京)科技有限公司 文档的处理方法、装置及设备

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739298A (zh) * 2008-11-27 2010-06-16 国际商业机器公司 共享缓存管理方法和系统
CN101710341A (zh) * 2009-12-22 2010-05-19 北京航空航天大学 一种透明、通用的文件缓存系统
CN101764824A (zh) * 2010-01-28 2010-06-30 深圳市同洲电子股份有限公司 一种分布式缓存控制方法、装置及系统
CN102244685A (zh) * 2011-08-11 2011-11-16 中国科学院软件研究所 一种支持负载均衡的分布式缓存动态伸缩方法及系统
CN104219327A (zh) * 2014-09-27 2014-12-17 上海瀚之友信息技术服务有限公司 一种分布式缓存系统
CN104618455A (zh) * 2015-01-12 2015-05-13 北京中交兴路车联网科技有限公司 一种通用缓存系统及其方法
CN110140119A (zh) * 2016-10-27 2019-08-16 Mz知识产权控股有限责任公司 用于管理缓存服务器群集的系统和方法
CN109032794A (zh) * 2018-07-12 2018-12-18 广州市闲愉凡生信息科技有限公司 一种电子商务系统的Cache对象缓存方法
CN109491873A (zh) * 2018-11-05 2019-03-19 网易无尾熊(杭州)科技有限公司 缓存监控方法、介质、装置和计算设备
CN109831521A (zh) * 2019-03-11 2019-05-31 深圳市珍爱捷云信息技术有限公司 缓存实例管理方法、装置、计算机设备和存储介质
CN109992566A (zh) * 2019-04-12 2019-07-09 苏州浪潮智能科技有限公司 一种文件访问方法、装置、设备及可读存储介质
CN110837648A (zh) * 2019-10-23 2020-02-25 云深互联(北京)科技有限公司 文档的处理方法、装置及设备

Similar Documents

Publication Publication Date Title
US11132356B2 (en) Optimizing data entries in a log
US10048996B1 (en) Predicting infrastructure failures in a data center for hosted service mitigation actions
US10534658B2 (en) Real-time monitoring alert chaining, root cause analysis, and optimization
US9043445B2 (en) Linking instances within a cloud computing environment
US20190095284A1 (en) Enhanced application write performance
CN113094136A (zh) 页面显示控制方法、装置、存储介质及电子设备
CN108268211B (zh) 一种数据处理方法及装置
CN110099084A (zh) 一种保证存储服务可用性的方法、系统及计算机可读介质
WO2023093127A1 (zh) 一种监控集群的方法、装置及电子设备
CN113517985A (zh) 文件数据处理方法、装置、电子设备及计算机可读介质
US11556332B2 (en) Application updating in a computing environment using a function deployment component
CN117667879A (zh) 数据访问方法、装置、存储介质及电子设备
CN110928940B (zh) 基于kafka集群的数据写入方法、装置、电子设备、存储介质
CN109445966B (zh) 事件处理方法、装置、介质和计算设备
CN114374657B (zh) 一种数据处理方法和装置
CN113282431B (zh) 异常数据处理方法及装置、存储介质及电子设备
CN113468127A (zh) 数据缓存方法、装置、介质及电子设备
CN115190125A (zh) 一种缓存集群的监控方法和装置
CN111008202A (zh) 分布式事务处理方法和框架
CN113761433B (zh) 业务处理方法和装置
CN114827157A (zh) 集群任务处理方法、装置、系统、电子设备及可读介质
US11675683B2 (en) Method, electronic device, and computer program product for monitoring storage system
US11354272B2 (en) Method and system for reporting free disk storage in file systems
CN113282455A (zh) 一种监控处理方法和装置
CN110851192B (zh) 一种响应降级开关配置的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination