CN116610267A - Storage management method and device, electronic equipment and storage medium - Google Patents

Storage management method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN116610267A
CN116610267A CN202310889544.7A CN202310889544A CN116610267A CN 116610267 A CN116610267 A CN 116610267A CN 202310889544 A CN202310889544 A CN 202310889544A CN 116610267 A CN116610267 A CN 116610267A
Authority
CN
China
Prior art keywords
preset
instruction
storage management
type information
information
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
CN202310889544.7A
Other languages
Chinese (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.)
Lenovo Netapp Technology Ltd
Original Assignee
Lenovo Netapp Technology 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 Lenovo Netapp Technology Ltd filed Critical Lenovo Netapp Technology Ltd
Priority to CN202310889544.7A priority Critical patent/CN116610267A/en
Publication of CN116610267A publication Critical patent/CN116610267A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A storage management method and device, an electronic device and a storage medium. The method comprises the following steps: acquiring input information of a user, wherein the input information is a non-formatted text with semantics; carrying out semantic analysis on the input information to obtain an analysis result, wherein the analysis result comprises operation type information and object type information which correspond to each other; selecting a corresponding operation unit based on the operation type information and the object type information and judging whether to call the instruction; responding to the determination to carry out instruction calling, and calling a corresponding preset instruction section in the operation unit according to the object type information to generate an operation instruction; and executing operation instructions in the storage management system to realize storage management operation consistent with the semantics of the input information. The method can improve the convenience of a user for operating the storage management system, provide a flexible operation mode, reduce the operation complexity, improve the efficiency and meet the requirements of various application scenes.

Description

Storage management method and device, electronic equipment and storage medium
Technical Field
The embodiment of the application relates to a storage management method and device for a storage management system, electronic equipment and a storage medium.
Background
With the development of information technology, storage systems have been developed. Storage systems are used to store large amounts of data, such as audio-visual data, text data, and other types of data. The storage system can provide enough storage space for users to meet the requirement of mass data in the information age. The storage system may have its own storage management system to provide data access services to the outside and manage the stored data. The storage management refers to the process of organizing, distributing, backing up, recovering and the like data in a storage system, so that the use requirement and the editing requirement of a user on the data are met.
Disclosure of Invention
At least one embodiment of the present application provides a storage management method for a storage management system, including: acquiring input information of a user, wherein the input information is a non-formatted text with semantics; carrying out semantic analysis on the input information to obtain an analysis result, wherein the analysis result comprises operation type information and object type information which correspond to each other; selecting a corresponding operation unit based on the operation type information and the object type information and judging whether to call an instruction or not; responding to the instruction calling, and calling a corresponding preset instruction segment in the operation unit according to the object type information to generate an operation instruction; executing the operation instruction in the storage management system to realize storage management operation consistent with the semantics of the input information.
For example, in the method provided by an embodiment of the present application, the semantic analysis is performed on the input information to obtain the analysis result, including: and carrying out semantic analysis on the input information by using a language lexical analysis technology, and identifying the type of operation and the type of object contained in the input information, thereby obtaining the operation type information and the object type information.
For example, in the method provided in an embodiment of the present application, the operation type information indicates that the type of the operation belongs to one of the following: the method comprises the steps of creating operation, inquiring operation, deleting operation, first preset operation and second preset operation; the first preset operation at least comprises: performing cluster shutdown on the storage management system, performing node shutdown on the storage management system, and performing operation on permission of the storage management system; the second preset operation includes: operations other than the creating operation, the querying operation, the deleting operation, and the first preset operation.
For example, in the method provided in an embodiment of the present application, the operation unit includes a creation unit, a query unit, a deletion unit, a first preset unit, and a second preset unit; the creating unit comprises at least one preset instruction section for realizing the creating function, the inquiring unit comprises at least one preset instruction section for realizing the inquiring function, the deleting unit comprises at least one preset instruction section for realizing the deleting function, the first preset unit is configured to return prompt information for prohibiting operation, and the second preset unit is configured to return prompt information for failing to support operation.
For example, in the method provided in an embodiment of the present application, the object type information indicates that the type of the object belongs to one of a plurality of preset object types or belongs to an undefined object type, where the preset object type refers to a type allowed in the storage management system, and the undefined object type refers to a type not allowed in the storage management system.
For example, in the method provided in an embodiment of the present application, selecting a corresponding operation unit and determining whether to make the instruction call based on the operation type information and the object type information includes: in response to the operation type information indicating that the type of operation belongs to the creation operation and the object type information indicating that the type of object belongs to one of the plurality of preset object types, selecting the creation unit, and determining to make the instruction call if a creation limit and a number limit are satisfied; responsive to the operation type information indicating that the type of operation belongs to the query operation and the object type information indicating that the type of object belongs to one of the plurality of preset object types, selecting the query unit and determining to make the instruction call; selecting the deletion unit in response to the operation type information indicating that the type of operation belongs to the deletion operation and the object type information indicating that the type of object belongs to one of the plurality of preset object types, and determining to make the instruction call if a deletion limit and the number limit are satisfied; responding to the operation type information to indicate that the type of the operation belongs to the first preset operation, selecting the first preset unit, determining not to carry out the instruction call, and returning prompt information for prohibiting the operation by utilizing the first preset unit; responding to the operation type information to indicate that the type of the operation belongs to the second preset operation, selecting the second preset unit, determining not to call the instruction, and returning prompt information which cannot support the operation by using the second preset unit; and responding to the object type information to indicate that the type of the object belongs to the undefined object type, determining not to make the instruction call, and returning prompt information that the object does not exist.
For example, in the method provided in an embodiment of the present application, in response to determining to make the instruction call, calling a corresponding preset instruction segment in the operation unit according to the object type information to generate the operation instruction, including: in response to determining to make the instruction call, calling a preset instruction segment corresponding to the type of the object indicated by the object type information in the operation unit, and generating the operation instruction by running the preset instruction segment; and the preset instruction section is embedded with an application programming interface corresponding to the type of the object.
For example, in a method provided by an embodiment of the present application, different types of objects correspond to different preset instruction segments, and different preset instruction segments are embedded with different application programming interfaces.
For example, in the method provided in an embodiment of the present application, the object type information further includes parameter content, where the parameter content includes at least one parameter of an object included in the input information, and in response to determining that the instruction call is performed, invoking a corresponding preset instruction segment in the operation unit according to the object type information to generate the operation instruction, the method further includes: and when the preset instruction segment is called, the parameter content is transferred to the preset instruction segment.
For example, in the method provided by an embodiment of the present application, the input information is text information input by the user, or the input information is text information obtained by identifying voice information input by the user.
For example, the method provided by an embodiment of the present application further includes: and setting a semantic recognition rule so that synonyms of different classes can be respectively recognized as corresponding types of operations and/or objects, and establishing corresponding relations between the recognized operations and objects under the condition that the connecting words exist.
At least one embodiment of the present application also provides a storage management apparatus for a storage management system, including: the system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is configured to acquire input information of a user, wherein the input information is a non-formatted text with semantics; the analysis module is configured to perform semantic analysis on the input information to obtain an analysis result, wherein the analysis result comprises operation type information and object type information which correspond to each other; the first processing module is configured to select a corresponding operation unit and judge whether to call an instruction or not based on the operation type information and the object type information; the second processing module is configured to respond to the determination of the instruction calling, and call a corresponding preset instruction section in the operation unit according to the object type information so as to generate an operation instruction; and the third processing module is configured to execute the operation instruction in the storage management system so as to realize storage management operation consistent with the semantics of the input information.
The application also provides electronic equipment, which comprises the storage management device for the storage management system.
At least one embodiment of the present application also provides an electronic device, including: a processor; a memory including one or more computer program modules; wherein the one or more computer program modules are stored in the memory and configured to be executed by the processor, the one or more computer program modules comprising a memory management method for implementing the memory management system provided by any of the embodiments of the present application.
At least one embodiment of the present application also provides a storage medium storing non-transitory computer-readable instructions that when executed by a computer implement any of the embodiments of the present application to provide a storage management method for a storage management system.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following brief description of the drawings of the embodiments will make it apparent that the drawings in the following description relate only to some embodiments of the present application and are not limiting of the present application.
FIG. 1 is a flow chart of a storage management method according to some embodiments of the present application;
fig. 2 is a schematic diagram of a chinese lexical analysis method adopted by a storage management method according to some embodiments of the present application;
FIG. 3 is a schematic diagram illustrating a storage management method for classifying and mapping synonyms according to some embodiments of the present disclosure;
FIG. 4 is a schematic diagram of matching object types according to some embodiments of the present application;
FIG. 5 is a schematic diagram illustrating a classification of operation units according to some embodiments of the present application;
FIG. 6 is a schematic diagram of a preset instruction segment of a creation unit according to some embodiments of the present application;
FIG. 7 is a schematic diagram of a preset instruction segment of a query unit according to some embodiments of the present application;
FIG. 8 is a schematic diagram of a preset instruction segment of a deletion unit according to some embodiments of the present application;
fig. 9 is an exemplary flowchart of step S30 shown in fig. 1;
FIG. 10 is a schematic diagram of a storage management method according to some embodiments of the present application;
FIG. 11 is a schematic block diagram of a storage management device according to some embodiments of the present application;
FIG. 12 is a schematic block diagram of an electronic device provided in some embodiments of the present application;
FIG. 13 is a schematic block diagram of another electronic device provided in some embodiments of the application;
FIG. 14 is a schematic block diagram of another electronic device provided in some embodiments of the application;
fig. 15 is a schematic diagram of a storage medium according to some embodiments of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application more clear, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present application. It will be apparent that the described embodiments are some, but not all, embodiments of the application. All other embodiments, which can be made by a person skilled in the art without creative efforts, based on the described embodiments of the present application fall within the protection scope of the present application.
Unless defined otherwise, technical or scientific terms used herein should be given the ordinary meaning as understood by one of ordinary skill in the art to which this application belongs. The terms "first," "second," and the like, as used herein, do not denote any order, quantity, or importance, but rather are used to distinguish one element from another. Likewise, the terms "a," "an," or "the" and similar terms do not denote a limitation of quantity, but rather denote the presence of at least one. The word "comprising" or "comprises", and the like, means that elements or items preceding the word are included in the element or item listed after the word and equivalents thereof, but does not exclude other elements or items. The terms "connected" or "connected," and the like, are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "upper", "lower", "left", "right", etc. are used merely to indicate relative positional relationships, which may also be changed when the absolute position of the object to be described is changed.
Storage management systems typically implement management through storage management software. Storage management software is a program for implementing storage management functions, typically providing a graphical user interface (Graphical User Interface, GUI) or command line interface (Command Line Interface, CLI) for user operation. However, both GUI and CLI have their limitations. GUIs typically require multiple steps of selections and inputs by a user via a mouse and keyboard, while CLIs require the user to precisely input commands and parameters in a specific format. These modes of operation are not intuitive, flexible and efficient enough, and especially for non-professional users and primary users, the difficulty of operation is high. Therefore, how to provide a simpler, more flexible and more intelligent operation mode is a problem to be solved.
At least one embodiment of the application provides a storage management method and device for a storage management system, electronic equipment and a storage medium. The method can improve the convenience of a user for operating the storage management system, provide a flexible operation mode, reduce the operation complexity, improve the efficiency and meet the requirements of various application scenes.
Hereinafter, embodiments of the present application will be described in detail with reference to the accompanying drawings. It should be noted that the same reference numerals in different drawings will be used to refer to the same elements already described.
At least one embodiment of the present application provides a storage management method for a storage management system. The method comprises the following steps: acquiring input information of a user, wherein the input information is a non-formatted text with semantics; carrying out semantic analysis on the input information to obtain an analysis result, wherein the analysis result comprises operation type information and object type information which correspond to each other; selecting a corresponding operation unit based on the operation type information and the object type information and judging whether to call the instruction; responding to the determination to carry out instruction calling, and calling a corresponding preset instruction section in the operation unit according to the object type information to generate an operation instruction; and executing operation instructions in the storage management system to realize storage management operation consistent with the semantics of the input information.
Fig. 1 is a flow chart of a storage management method according to some embodiments of the present application. As shown in FIG. 1, in some embodiments, the storage management method includes the following operations.
Step S10: acquiring input information of a user, wherein the input information is a non-formatted text with semantics;
step S20: carrying out semantic analysis on the input information to obtain an analysis result, wherein the analysis result comprises operation type information and object type information which correspond to each other;
Step S30: selecting a corresponding operation unit based on the operation type information and the object type information and judging whether to call the instruction;
step S40: responding to the determination to carry out instruction calling, and calling a corresponding preset instruction section in the operation unit according to the object type information to generate an operation instruction;
step S50: and executing operation instructions in the storage management system to realize storage management operation consistent with the semantics of the input information.
For example, the storage management method is used for a storage management system, and by using the storage management method, storage management operations can be performed on data, such as operations of creating, querying, deleting and the like on the data managed by the storage management system. The storage management system is suitable for use in, for example, a Linux system. Of course, the embodiment of the present application is not limited to this, and the applicable system is not limited to the Linux system, but may be any other operating system.
For example, in step S10, input information of the user is first acquired. For example, the input information may be non-formatted text having semantics. Here, the non-formatted text refers to text not having a specific format, and may be any one sentence, several sentences, one paragraph, several paragraphs, or the like having a linguistic meaning. By inputting the input information, the user can express what the operation is desired to be performed. For example, in some examples, the input information may be a user-entered term "create directory Dir1," which means that a directory needs to be created, the name of the directory being Dir1. For example, in other examples, the input information may be "delete directory Dir2" entered by the user, meaning that the directory needs to be deleted, the name of the directory being Dir2. For example, in other examples, the input information may be a "query directory Dir3" entered by the user, meaning that the directory needs to be queried, the name of the directory being Dir3. It should be noted that the above listed input information is merely exemplary, and the specific content and format of the input information are not limited. In this step, the user is a person who wants to perform a certain operation.
For example, the input information is text information input by a user, or the input information is text information obtained by recognizing voice information input by a user. For example, in some examples, a user may enter a piece of text, i.e., input information, through an input device (e.g., a keyboard). For example, in other examples, a user may input a piece of voice through an input device (such as a microphone), and text content corresponding to the voice may be obtained by identifying the voice, where the text content is input information. It should be noted that the above-listed input manners of the input information are merely exemplary, and specific input manners are not limited, and may be determined according to actual requirements. By providing a plurality of input modes, the flexibility can be improved, and the use experience of a user can be improved.
For example, in step S20, by performing semantic analysis on the input information, an analysis result including operation type information and object type information corresponding to each other can be obtained. For example, in some examples, step S20 may further include: semantic analysis is carried out on the input information by using a language lexical analysis technology, and the type of the operation and the type of the object contained in the input information are identified, so that operation type information and object type information are obtained. For example, the linguistic lexical analysis technique may be a chinese lexical analysis technique (Lexical Analysis of Chinese, LAC), which may segment text by punctuation and identify verbs, nouns, conjunctions, etc. contained therein. Of course, the embodiment of the present application is not limited thereto, and the language lexical analysis technique is not limited to LAC, and may be any language (e.g., english, etc.), any type of language lexical analysis technique, which may be determined according to actual requirements, and the embodiment of the present application is not limited thereto.
For example, the operation type information indicates that the type of operation contained in the input information belongs to one of: the method comprises the steps of creating operation, inquiring operation, deleting operation, first preset operation and second preset operation. The creating operation may create various types of files or data in the storage management system, the querying operation may query various types of files or data existing in the storage management system, and the deleting operation may delete various types of files or data existing in the storage management system.
The first preset operation refers to an operation that may bring about a serious risk to the storage management system (for example, an operation that brings about a destructive risk), and these operations may cause the storage management system to fail to function properly, which is an operation that needs to be prohibited. For example, the first preset operation includes at least: cluster shutdown is performed on the storage management system, node shutdown is performed on the storage management system, and License (License) of the storage management system is operated. It should be noted that, the first preset operation is not limited to the above-listed operation, and may include other operations, as long as the operations bring a serious risk to the storage management system, which may be determined according to actual needs, and the embodiment of the present application is not limited thereto.
The second preset operation may include: operations other than the creating operation, the querying operation, the deleting operation, and the first preset operation. That is, for a certain operation, the first preset operation may be divided into the second preset operation as long as the operation is not a create operation, a query operation, a delete operation, or a first preset operation. In the storage management system, the creation operation, the query operation, the deletion operation and the first preset operation are defined specific operations, and the second preset operation covers all undefined operations.
Fig. 2 is a schematic diagram of a chinese lexical analysis method adopted by a storage management method according to some embodiments of the present application. In some examples, as shown in fig. 2, a chinese Lexical Analysis (LAC) module may be invoked to word sentences according to preset synonyms. Firstly, dividing according to punctuation marks, and marking sequence numbers. Verb matching is then performed on each phrase, and the verbs are classified into one of several preset synonym types.
For example, verbs may be pre-classified as synonyms, e.g., into "create", "query", "delete", "other" 4 categories. Specifically, in some examples, as shown in fig. 3, verbs such as "create", "generate", "set", "edit", "make" and the like are labeled as synonyms of "create", whereby the creation unit can be selected correspondingly in the subsequent steps. For another example, verbs such as "query," "retrieve," "consult," "search," "view," and the like are labeled as synonyms for "query"; verbs such as "delete", "remove", "clear", "delete", "eliminate" are labeled as synonyms for "delete"; other verbs than the verbs described above are labeled as synonyms for "other". Thus, it is classified into 4 types in total.
In the example of fig. 2, taking the input information as "create directory Dir1, and create network file system sharing for all addresses at the same time", the sentence is first divided according to the punctuation to obtain multiple phrases, and then synonym matching is performed, so that two sets of information are identified: in a set of information corresponding to each other, the operation type information is "create", and the object type information is "directory Dir1"; in another set of information corresponding to each other, the operation type information is "create", and the object type information is "network file system sharing for all addresses".
For example, the object type information indicates that the type of the object contained in the input information belongs to one of a plurality of preset object types or belongs to an undefined object type. The preset object type refers to a type allowed in the storage management system. For example, in some examples, the preset object types may include: directory, user, group of users, storage pool, tenant, bucket, node, etc. These preset object types are predefined in the storage management system, are allowed types in the storage management system, and are defined specific types. The preset object types are not limited to the above listed types, and may include more or less types, which may be according to actual needs, and the embodiment of the present application is not limited thereto. It should be noted that "user" in the preset object type means that the object type is a type of "user", which is different from the meaning of "user" (user) described above in step S10.
The undefined object type refers to a type not allowed in the storage management system, and may include any type other than a preset object type. That is, for a certain object, it can be regarded as an undefined object type as long as it cannot be divided into preset object types. In the storage management system, the preset object types are defined specific types, and the undefined object types cover all undefined types.
For example, the object type information may further include parameter content including at least one parameter of the object contained in the input information. These parameters may be names, attributes, etc., which may be determined according to actual needs, and embodiments of the present application are not limited in this regard.
Fig. 4 is a schematic diagram of matching object types according to some embodiments of the present application. As shown in fig. 4, in some examples, a chinese Lexical Analysis (LAC) module may be invoked to match nouns to match the types of objects contained in the input information to preset object types. For example, the preset object types include: directory, user, group of users, storage pool, tenant, bucket, node, etc. Here, "user" means that the object type is of the type "user", unlike the meaning of "user" (user) described above in step S10.
For example, by invoking a LAC, the object type and the parameter content, including at least one parameter of the object, may be analyzed. For example, if the related vocabulary of the "catalog" is matched, the related vocabulary is classified into a catalog object, and the parameter content is catalog names and other attributes; if the related vocabulary of the user is matched, classifying the related vocabulary into a user object, wherein the parameter content is a user name and other attributes; if the related vocabulary of the user group is matched, classifying the related vocabulary into a user group object, wherein the parameter content is a user group name and other attributes; if the related vocabulary of the storage pool is matched, classifying the related vocabulary of the storage pool into a storage pool object, wherein the parameter content is a storage pool name and other attributes; if the related vocabulary of the tenant is matched, classifying the related vocabulary of the tenant into the tenant object, wherein the parameter content is the tenant name and other attributes; classifying the related words of the barrel into barrel objects if the related words of the barrel are matched, wherein the parameter content is barrel names and other attributes; if the node related vocabulary is matched, classifying the node related vocabulary into a node object, wherein the parameter content is node names and other attributes; if the object types are not matched, classifying the object types into other objects, and returning prompt information that the objects do not exist.
For example, in some cases, the input information includes a connective, and the connective needs to be converted into a logical operator according to specific semantics. For example, by invoking the LAC, it may be checked whether there is a connective, if there is a connective, it is marked as a logical operator AND, AND if there is no output is null. In the case where a connective is present, since it is necessary to analyze the semantic meaning according to grammar (for example, analyzing the position of verb, noun, and connective), the front and rear phrases containing the connective may be directed to the same operation object, or may be directed to the respective operation objects. When the preceding and following phrases containing the connective are directed to the same operation object, it is necessary to transmit the object preceding the connective as a parameter when analyzing the object following the connective.
For example, the operation type information and the object type information obtained by the analysis are corresponding to each other. For example, the operation type information and the object type information may be in a one-to-one correspondence, may be in a correspondence with one or more, or may be in a correspondence with one or more, which is not limited by the embodiment of the present application.
For example, in some examples, taking the input information as "create directory Dir1" as an example, the LAC may recognize "create" and "directory Dir1", and thus, the operation type information may be "create", which indicates that the type of operation contained in the input information is a create operation, the object type information may be "directory Dir1", which indicates that the type of object contained in the input information is a directory, and the operation type information "create" and the object type information "directory Dir1" are corresponding to each other, that is, it is directory Dir1 that needs to be created.
For example, in other examples, taking the input information as "delete directory Dir2 and query directory Dir3" as an example, LAC may identify "delete", "query", "directory Dir2", "directory Dir3", and thus, the operation type information may be "delete", "query", and the object type information may be "directory Dir2", "directory Dir3". Since the connective word "and" exists, the LAC can analyze the meaning of the sentence based on the chinese grammar (e.g., based on the verb, noun, position of the connective word), and thus can learn that the operation type information "delete" corresponds to the object type information "directory Dir2" and the operation type information "query" corresponds to the object type information "directory Dir3". That is, two sets of information are available: in a set of information corresponding to each other, the operation type information is "delete", and the object type information is "directory Dir2"; in another set of information corresponding to each other, the operation type information is "query", and the object type information is "directory Dir3". Thus, it can be known that the directory Dir2 needs to be deleted and the directory Dir3 needs to be queried.
For example, in other examples, taking the input information as "delete directory Dir4 and directory Dir5" as an example, LAC may recognize "delete", "directory Dir4", "directory Dir5", and thus, the operation type information may be "delete", and the object type information may be "directory Dir4", "directory Dir5". Since the connective word "and" exists, the LAC can analyze the meaning of the sentence based on the chinese grammar (e.g., based on the verb, noun, position of the connective word), and thus can learn that the operation type information "delete" corresponds to the object type information "directory Dir4" and also corresponds to the object type information "directory Dir5". That is, one operation type information corresponds to two object type information. Thus, it can be known that both directory Dir4 and directory Dir5 need to be deleted.
The above examples are illustrative only and not limiting, and embodiments of the present application are not limited in terms of the specific correspondence of operation type information and object type information, as long as the specific operation and the object for which the operation is directed can be known. For example, when there is no connective (e.g., "and", etc.) in the input information, the obtained operation type information and object type information may be defaulted to be corresponding; when the connecting word exists in the input information, the corresponding relation between the operation type information and the object type information can be obtained according to the grammar analysis.
Returning to fig. 1, for example, in step S30, after the operation type information and the object type information are obtained, a corresponding operation unit is selected based on the obtained operation type information and object type information and it is determined whether or not to make an instruction call.
For example, as shown in fig. 5, the operation unit may be divided into: the device comprises a creation unit, a query unit, a deletion unit, a first preset unit and a second preset unit.
The creation unit comprises at least one preset instruction segment for implementing the creation function. For example, an application programming interface (Application Programming Interface, API) that performs a create operation for each object may be written as a preset instruction segment. In some examples, a preset instruction segment for performing a create operation may be written for a directory object and partitioned to the create unit, a preset instruction segment for performing a create operation may be written for a node object and partitioned to the create unit, a preset instruction segment for performing a create operation may be written for a storage pool object and partitioned to the create unit, and so on. Thus, the creation unit may comprise a number of preset instruction segments equal to the number of object types allowed in the storage management system, each object type having a corresponding preset instruction segment for performing the creation operation. In other examples, if certain object types do not allow for a creation operation, the number of the plurality of preset instruction segments may be less than the number of object types allowed in the storage management system.
Fig. 6 is a schematic diagram of a preset instruction segment of a creating unit according to some embodiments of the present application, where the example is a preset instruction segment corresponding to a directory object in the creating unit. As shown in FIG. 6, an object represents an object type, which in this example is a directory; type represents the unit to which the preset instruction segment belongs, in this example belonging to the creation unit; the call method represents a manner of calling the API (or referred to as a fetch manner), which is a manner of calling in the hypertext transfer protocol (Hyper Text Transfer Protocol, HTTP), in this example, a post manner; API represents the interface name and path of the API, in this example/dsm/dir/; the attribute represents an attribute, which may be, for example, various parameters that need to be transferred, in this example parameter1.
The query unit comprises at least one preset instruction segment for implementing the query function. For example, an API that performs a query operation for each object may be written as a preset instruction segment. In some examples, a preset instruction segment for performing a query operation may be written for a directory object and divided into query units, a preset instruction segment for performing a query operation may be written for a node object and divided into query units, a preset instruction segment for performing a query operation may be written for a storage pool object and divided into query units, and so on. Thus, the query unit may comprise a number of preset instruction segments equal to the number of object types allowed in the storage management system, each object type having a corresponding preset instruction segment for implementing the query operation. In other examples, if certain object types do not allow for query operations, the number of the plurality of preset instruction segments may be less than the number of object types allowed in the storage management system.
Fig. 7 is a schematic diagram of a preset instruction segment of a query unit according to some embodiments of the present application, where the preset instruction segment corresponds to a directory object in the query unit. As shown in FIG. 7, an object represents an object type, which in this example is a directory; type represents the unit to which the preset instruction segment belongs, in this example the query unit; the call method represents a manner of calling the API (or referred to as a get manner), which is a calling manner in HTTP in this example; API represents the interface name and path of the API, in this example/dsm/dir/; the attribute represents an attribute, which may be, for example, various parameters that need to be transferred, in this example parameter2.
The deletion unit comprises at least one preset instruction segment for implementing a deletion function. For example, an API for performing a delete operation for each object may be written as a preset instruction segment. In some examples, a preset instruction segment for performing a delete operation may be written for a directory object and partitioned to the delete unit, a preset instruction segment for performing a delete operation may be written for a node object and partitioned to the delete unit, a preset instruction segment for performing a delete operation may be written for a storage pool object and partitioned to the delete unit, and so on. Thus, the deletion unit may comprise a number of preset instruction segments equal to the number of object types allowed in the storage management system, each object type having a corresponding preset instruction segment for performing a deletion operation. In other examples, if some object types do not allow a delete operation, the number of the plurality of preset instruction segments may be less than the number of object types allowed in the storage management system.
Fig. 8 is a schematic diagram of a preset instruction segment of a deletion unit according to some embodiments of the present application, where the example is a preset instruction segment corresponding to a directory object in the deletion unit. As shown in FIG. 8, an object represents an object type, which in this example is a directory; type represents the unit to which the preset instruction segment belongs, in this example belonging to a delete unit; the call method represents a manner of calling the API (or referred to as a fetch manner), which is a post manner in this example, which is a calling manner in HTTP; API represents the interface name and path of the API, in this example/dsm/dir/; the attribute represents an attribute, which may be, for example, various parameters that need to be transferred, in this example parameter3.
By setting the preset instruction segments of each unit in the above manner, each preset instruction segment belongs to a corresponding unit, and each preset instruction segment designates an API name, an acquisition mode, a parameter list (each parameter to be transferred), and the like, thereby obtaining a series of API instructions assigned with types (types). When the corresponding unit is determined, the available instruction range can be obtained, and the corresponding preset instruction segment can be quickly called and operated.
The first preset unit is configured to return prompt information of forbidden operation. For example, when the operation type information indicates that the type of operation included in the input information belongs to a first preset operation, that is, an operation that may bring a serious risk to the storage management system, the first preset unit is selected and a prompt message is returned with the first preset unit, the prompt message prompting, for example, a user (user) that the operation is prohibited. It should be noted that, since the corresponding operation is prohibited in the case of selecting the first preset unit, no preset instruction segment is required to be invoked to generate the operation instruction later, and thus the first preset unit does not include the preset instruction segment.
The second preset unit is configured to return prompt information that the operation cannot be supported. For example, when the operation type information indicates that the type of operation included in the input information belongs to a second preset operation, that is, belongs to an undefined operation, the second preset unit is selected and a prompt message is returned with the second preset unit, the prompt message prompting, for example, that the user (user) cannot support the operation. It should be noted that, since the corresponding operation is not supportable in the case of selecting the second preset unit, no preset instruction segment is required to be invoked to generate the operation instruction later, and therefore, the second preset unit does not include the preset instruction segment.
Fig. 9 is an exemplary flowchart of step S30 shown in fig. 1. In some examples, as shown in fig. 9, step S30 may include the following operations.
Step S31: selecting a creation unit in response to the operation type information indicating that the type of the operation belongs to the creation operation and the object type information indicating that the type of the object belongs to one of a plurality of preset object types, and determining to make an instruction call in the case that the creation limit and the number limit are satisfied;
step S32: responding to the operation type information to indicate that the type of the operation belongs to the query operation and the object type information indicates that the type of the object belongs to one of a plurality of preset object types, selecting a query unit, and determining to perform instruction calling;
step S33: responding to the operation type information to indicate that the type of the operation belongs to a deleting operation and the object type information indicates that the type of the object belongs to one of a plurality of preset object types, selecting a deleting unit, and determining to carry out instruction calling under the condition that the deleting limit and the quantity limit are met;
step S34: responding to the operation type information to indicate that the type of the operation belongs to a first preset operation, selecting a first preset unit, determining not to call an instruction, and returning prompt information for prohibiting the operation by using the first preset unit;
Step S35: responding to the operation type information to indicate that the type of the operation belongs to a second preset operation, selecting a second preset unit, determining that the instruction call is not performed, and returning prompt information which cannot support the operation by using the second preset unit;
step S36: and responding to the object type information to indicate that the type of the object belongs to the undefined object type, determining not to call the instruction, and returning prompt information that the object does not exist.
For example, in step S31, when the operation type information indicates that the type of operation belongs to a creation operation and the object type information indicates that the type of object belongs to one of a plurality of preset object types, that is, when the creation operation is required and the object type is a type allowed by the system, the creation unit is selected. And, it is checked whether the creation limit and the number limit are satisfied. When the creation limit and the number limit are satisfied, then it is determined that an instruction call is made. That is, in this step, when the creation operation is required, if the object type is correct and various restrictions are not violated, it is determined that the instruction call can be subsequently made using the creation unit.
For example, a creation constraint refers to a series of constraints that are specified for a creation operation in order to ensure data security and stability, by which existing specifications are satisfied and logical order is met. The number limitation refers to a series of limitation conditions specified for the number in order to secure and stabilize data, and the number requirement of the system elements is satisfied by the limitation conditions. The details of the creation limit and the number limit will be described later, and are not repeated here.
For example, in step S32, when the operation type information indicates that the type of operation belongs to a query operation and the object type information indicates that the type of object belongs to one of a plurality of preset object types, that is, when the query operation is required and the object type is a type allowed by the system, a query unit is selected and it is determined to make an instruction call. That is, in this step, when a query operation is required, if the object type is correct, it is determined that the instruction call can be performed later using the query unit.
For example, in step S33, when the operation type information indicates that the type of operation belongs to a delete operation and the object type information indicates that the type of object belongs to one of a plurality of preset object types, that is, when the delete operation is required and the object type is a type allowed by the system, the delete unit is selected. And, it is checked whether the deletion limit and the number limit are satisfied. When the deletion limit and the number limit are satisfied, then it is determined that instruction call is made. That is, in this step, when the deletion operation is required, if the object type is correct and various restrictions are not violated, it is determined that the instruction call can be subsequently performed by using the deletion unit.
For example, the deletion restriction refers to a series of restrictions prescribed for the deletion operation in order to secure and stabilize data, by which the skip operation is prevented, so that all deletion operations must be sequentially performed Step By Step (Step By Step). The details of the deletion restriction will be described later, and will not be repeated here. Regarding the number limitation, reference may be made to the description regarding the number limitation in step S32, which is not repeated here.
For example, in step S34, when the operation type information indicates that the type of operation belongs to a first preset operation, that is, when an operation that would pose a serious risk to the storage management system needs to be performed, the first preset unit is selected, and it is determined that no instruction call is performed. Since no subsequent instruction call is made, a prompt for prohibiting the operation is returned by the first preset unit to prompt the user (user) that the operation is prohibited.
For example, in step S35, when the operation type information indicates that the type of operation belongs to the second preset operation, that is, when an unrecognizable operation or an unsupported operation is required, the second preset unit is selected, and it is determined that no instruction call is made. Since no subsequent instruction call is performed, a prompt message that the operation cannot be supported is returned by using the second preset unit to prompt the user (user) that the operation cannot be supported.
For example, in step S36, when the object type information indicates that the type of the object belongs to a non-defined object type, that is, when the object type is a type not allowed by the system, it is determined that no instruction call is made, and a prompt for the absence of the object is returned to prompt the user (user) that the object is absent.
Thus, all operations input by the user (user) can be categorized into the creation unit, the query unit, the deletion unit, the first preset unit, the second preset unit, so as to cover all possible operations input by the user (user). By distinguishing and judging various situations, whether instruction call is performed in the next step can be determined according to the identified operation type information and object type information.
Returning to fig. 1, for example, in step S40, in response to determining to make an instruction call, a corresponding preset instruction segment in the operation unit is called according to the object type information to generate an operation instruction. For example, if it is determined that an instruction call is to be made, since the corresponding operation unit has been selected, a corresponding preset instruction segment in the selected operation unit may be called according to the object type information, so that the preset instruction segment is executed to generate the operation instruction.
For example, in some examples, step S40 may further include: in response to determining to make the instruction call, a preset instruction segment corresponding to the type of the object indicated by the object type information is called in the operation unit, and an operation instruction is generated by running the preset instruction segment. For example, the preset instruction segment is embedded with an Application Programming Interface (API) corresponding to the type of the object. Different types of objects correspond to different preset instruction segments embedded with different Application Programming Interfaces (APIs).
For example, the creation unit comprises at least one (e.g. a plurality of) preset instruction segments for implementing the creation function, each preset instruction segment being directed to a particular object type, and thus having embedded therein an API for implementing the creation for that particular object type. For example, in the creation unit, there is a preset instruction section for a directory object, there is a preset instruction section for a user group object, there is a preset instruction section for a node object, and there is a preset instruction section for other various types of objects defined in the system. In some examples, assuming that it is determined that an instruction call is to be made and that a creation unit is selected and that the type of the object is a node, a preset instruction segment corresponding to the node object is selected in the creation unit, the preset instruction segment being embedded with an API that can create the node, so that by running the preset instruction segment, an operation instruction to create the node can be generated.
For example, the query unit comprises at least one (e.g. a plurality of) preset instruction segments for implementing the query function, each preset instruction segment being directed to a particular object type, and thus having embedded therein an API for implementing the query for that particular object type. For example, in the query unit, there are preset instruction segments for directory objects, preset instruction segments for user group objects, preset instruction segments for node objects, and preset instruction segments for other various types of objects defined in the system. In some examples, assuming that it is determined that an instruction call is to be made and that a query unit is selected and that the type of the object is a user group, a preset instruction segment corresponding to the user group object is selected in the query unit, the preset instruction segment being embedded with an API that can query the user group, so that by running the preset instruction segment, an operation instruction to query the user group can be generated.
For example, the deletion unit comprises at least one (e.g. a plurality of) preset instruction segments for implementing the deletion function, each preset instruction segment being directed to a particular object type, and thus having embedded therein an API for implementing the deletion for that particular object type. For example, in the deletion unit, there is a preset instruction section for a directory object, there is a preset instruction section for a user group object, there is a preset instruction section for a node object, and there is a preset instruction section for other various types of objects defined in the system. In some examples, assuming that it is determined that an instruction call is to be made and that a deletion unit is selected and that the type of the object is a directory, a preset instruction segment corresponding to the directory object is selected in the deletion unit, the preset instruction segment being embedded with an API that can delete the directory, so that by running the preset instruction segment, an operation instruction to delete the directory can be generated.
For a detailed description of the preset instruction segments in the respective units, reference may be made to the descriptions above in connection with fig. 6 to 8, and a detailed description thereof will be omitted.
For example, in some examples, step S40 may further include: when the preset instruction segment is called, the parameter content is transferred to the preset instruction segment. In some examples, assuming that it is determined that an instruction call is to be made and that a creation unit is selected and that the type of object is a directory, when a preset instruction segment corresponding to the directory object in the creation unit is called, the directory name "Dir1" is transferred as a parameter content to the preset instruction segment.
For example, in step S50, since the preset instruction segment has been called to generate an operation instruction, the operation instruction may be executed in the storage management system, thereby realizing a storage management operation consistent with the semantics of the input information. For example, in some examples, the operating instructions that have been generated may be passed through an access server to a module in the storage management system responsible for executing the instructions, which receives and executes the operating instructions. The storage management system may then display the execution results. For example, in some examples, assuming that the input information is "create directory Dir1", the operation instructions are ultimately executed to create a directory named "Dir 1".
For example, in some examples, the specific content of creating a limit, deleting a limit, and quantity limiting is as follows.
Creating restrictions is mainly used to normalize two types of problems: firstly, the existing specification needs to be met, and secondly, the logic sequence needs to be met. The existing specifications are satisfied in order to meet operating system (e.g., linux) and related protocol specification requirements so that the instructions can execute properly. For example, the creation limit specifies the character length, character type, character range, and corresponding format of the objects of the resource group, storage pool, user group, user, directory, snapshot, share, etc. The logical order is met to prevent logic errors in take-off over the air (i.e., to skip execution of certain steps), to specify and adjust the order of instructions.
Specific contents of creating the restrictions are, for example: (1) not allowing loading of the disk; (2) a catalog must already exist before the sharing is created and edited; (3) Creating and editing a snapshot, quota, write-Once-Read-Many (WORM), quality of service (Quality of Service, QOS) of the directory must already have the directory; (4) the user group must already exist before the user is created; (5) The user and user group must already exist before the user and user group quota is created and edited; (6) The directory configured with the remote copy relationship does not allow for creating a snapshot, nor does its parent child directory; (7) The directory configured with the remote copy relationship does not allow WORM to be set; (8) The directory for which WORM functionality has been set does not allow for configuration remote copy; (9) The target directory configuring the remote copy relationship must not be created to be shared. For example, the operations of prohibiting the content in the above item (1), i.e. loading the disk, may also pose a serious risk to the storage management system, so in other examples, the content (i.e. loading the disk) may also be defined as the first preset operation and the first preset unit returns a notification of prohibiting the operation.
The delete limit is mainly used to prevent skip level operations, and all delete actions (delete operations) must be performed sequentially Step By Step (Step By Step). Specific contents of the deletion restriction are, for example: (1) not allowing removal of the data disc; (2) not allowing deletion of resource groups; (3) disallowing deletion of the system storage pool; (4) not allowing deletion of system administrators; (5) not allowing bulk deletion of storage pools; (6) disallowing deletion when the storage pool binds the directory; (7) The user group binding the directory and the user group binding the directory sharing are not allowed to be deleted; (8) Users with directories bound thereto, users with directory shares bound thereto are not allowed to delete; (9) disallowing deletion when there is a file under the directory; (10) disallowing deletion when the directory has a snapshot; (11) the directory is not allowed to be deleted when shared; (12) a directory must already exist before sharing is deleted; (13) Deleting a snapshot of the directory, quota, WORM, QOS, the directory must already exist; (14) The user and user group must already exist before the user and user group quota is deleted; (15) The alert item must already support configuration before the alert prompt for the alert item is closed. For example, the operations of prohibiting the content in the above (1) to (4), that is, removing the data disk, deleting the resource group, deleting the system storage pool, deleting the system administrator, may also bring serious risks to the storage management system, so that in other examples, these contents (that is, removing the data disk, deleting the resource group, deleting the system storage pool, deleting the system administrator) may also be defined as the first preset operation and the prompt information of prohibiting the operation is returned by the first preset unit.
The number limitation is mainly used to meet the number of system elements required by the storage system. Specific contents of the number limitation are, for example: (1) a single directory supports 2048 snapshots at maximum; (2) the entire cluster supports 8192 snapshots at maximum; (3) The maximum number of remote copy pairs supported by a single cluster is 1024; (4) The maximum reserved number of the copy pair snapshots of the single copy pair is 1018, and the minimum reserved number is 2; (5) the maximum number of snapshot policies for a single cluster is 1024.
It should be noted that the specific contents of the creation limit, the deletion limit, and the number limit listed above are only exemplary, and not limiting. In the embodiment of the present application, the specific contents of the creation limit, the deletion limit, and the number limit may be determined according to actual requirements, for example, according to requirements of a storage management system, which is not limited by the embodiment of the present application.
For example, in some examples, the storage management method provided by the embodiment of the present application may further include step S60: and setting a semantic recognition rule so that synonyms of different classes can be respectively recognized as corresponding types of operations and/or objects, and establishing corresponding relations between the recognized operations and objects under the condition that the connecting words exist. For example, LAC software may be configured to set semantic recognition rules, such as synonym classification, so that different classes of synonyms can be identified as corresponding types of operations and/or objects, respectively. Recognition rules of the connective words can be set so as to enable the recognized operation and the object to establish a corresponding relationship in the case that the connective words exist.
Fig. 10 is a schematic diagram of a storage management method according to some embodiments of the present application. In some examples, as shown in FIG. 10, first performing a word segmentation and synonym classification for an operation statement, a series of binding combinations of operations and objects may be obtained. Then, the operations are classified according to the operation units, and words or phrases in the sentences are mapped to functions such as catalogues, storage pools, user groups, users, nodes, tenants, barrels and the like according to a predefined rule base. Words or phrases in the sentence that represent logical relationships are converted into corresponding operators according to a predefined rule base. Since the verbs can be matched to the corresponding operation units after being categorized, the operation units can be directly accessed, and the mapped objects can be transmitted as parameters. In addition, the identified operations and objects are verified based on various types of restriction rules specified in advance. In the case of passing the verification, a complete and valid storage management command (i.e., an operation instruction) conforming to the storage software requirement format and the grammar specification requirement format can be generated. And finally, sending the storage management command to the storage software, receiving and executing the command by the storage software, and displaying the execution result.
In embodiments of the present application, operation type information and object type information may be obtained by using fuzzy logic and natural language processing techniques (e.g., linguistic lexical analysis techniques); by setting each operation unit and the preset instruction section included in each operation unit, standardized operation instructions can be accurately generated; the boundary range of the command is standardized by formulating various limiting rules, so that the executed instructions are ensured to be in the supporting range, and the safety and reliability of the data are ensured. For example, according to various restriction rules formulated, it is possible to know which operations are strictly prohibited, which operations are restricted at the time of creation, and which operations are restricted at the time of deletion.
Therefore, the non-formatted text (such as natural language sentences) input by a user (user) can be converted into the corresponding standard storage management instruction, so that an efficient and intelligent operation mode is realized, and a fuzzy spoken language management mode is supported. This greatly improves the convenience and efficiency of the user to operate the stored software without having to memorize complex commands and parameters. The method enhances the flexibility and intelligence of the user for operating the storage software, can process fuzzy spoken language input under different scenes and requirements, expands the range and applicability of the user for operating the storage software, and can support multiple languages.
It should be noted that, in the embodiment of the present application, the execution order of the steps of the storage management method is not limited, and although the execution process of the steps is described in a specific order above, this does not limit the embodiment of the present application. The steps in the storage management method may be performed in series or in parallel, which may be according to actual requirements. The storage management method may also include more or fewer steps, which may be dependent on actual requirements.
At least one embodiment of the present application also provides a storage management apparatus for a storage management system. The device can improve the convenience of a user for operating the storage management system, provide a flexible operation mode, reduce the operation complexity, improve the efficiency and meet the requirements of various application scenes.
Fig. 11 is a schematic block diagram of a storage management device according to some embodiments of the present application. As shown in fig. 11, in some embodiments, the storage management device 100 includes an acquisition module 110, an analysis module 120, a first processing module 130, a second processing module 140, and a third processing module 150. For example, the storage management device 100 is used in a storage management system, and the storage management device 100 may be a computer, a server, or a part, a component, or a unit in the computer, the server.
For example, the acquisition module 110 is configured to acquire input information of a user. The input information is non-formatted text having semantics. For example, the acquisition module 110 may perform step S10 of the storage management method shown in fig. 1.
For example, the analysis module 120 is configured to perform semantic analysis on the input information to obtain an analysis result. The analysis result includes operation type information and object type information corresponding to each other. For example, the analysis module 120 may perform step S20 of the storage management method shown in fig. 1.
For example, the first processing module 130 is configured to select a corresponding operation unit and determine whether to make an instruction call based on the operation type information and the object type information. For example, the first processing module 130 may perform step S30 of the storage management method shown in fig. 1.
For example, the second processing module 140 is configured to call a corresponding preset instruction segment in the operation unit according to the object type information to generate the operation instruction in response to determining to make the instruction call. For example, the second processing module 140 may perform step S40 of the storage management method shown in fig. 1.
For example, the third processing module 150 is configured to execute operation instructions in the storage management system to implement storage management operations consistent with the semantics of the input information. For example, the third processing module 150 may perform step S50 of the storage management method shown in fig. 1.
For example, the acquisition module 110, the analysis module 120, the first processing module 130, the second processing module 140, the third processing module 150 may be hardware, software, firmware, and any feasible combination thereof. For example, the acquisition module 110, the analysis module 120, the first processing module 130, the second processing module 140, and the third processing module 150 may be dedicated or general-purpose circuits, chips, devices, or the like, or may be a combination of a processor and a memory. With respect to specific implementation forms of the acquisition module 110, the analysis module 120, the first processing module 130, the second processing module 140, and the third processing module 150, embodiments of the present application are not limited thereto.
It should be noted that, in the embodiment of the present application, each unit of the storage management device 100 corresponds to each step of the foregoing storage management method, and the specific function of the storage management device 100 may refer to the related description of the storage management method, which is not repeated herein. The components and structures of the storage management device 100 shown in fig. 11 are exemplary only and not limiting, and the storage management device 100 may also include other components and structures as desired.
The application also provides electronic equipment, which comprises the storage management device for the storage management system. The electronic equipment can improve the convenience of a user for operating the storage management system, provide a flexible operation mode, reduce the operation complexity, improve the efficiency and meet the requirements of various application scenes.
Fig. 12 is a schematic block diagram of an electronic device according to some embodiments of the present application. As shown in fig. 12, the electronic device 200 includes a storage management apparatus 210, and the storage management apparatus 210 may be the storage management apparatus 100 shown in fig. 11. For example, the electronic device 200 may be a server of a storage management system or any other device or system capable of implementing storage management, which is not limited by embodiments of the present application. The description of the electronic device 200 is referred to above for the description of the storage management device 100, and is not repeated here.
At least one embodiment of the application also provides an electronic device comprising a processor and a memory, one or more computer program modules stored in the memory and configured to be executed by the processor, the one or more computer program modules comprising a memory management method for implementing any of the embodiments of the application provided for a memory management system. The electronic equipment can improve the convenience of a user for operating the storage management system, provide a flexible operation mode, reduce the operation complexity, improve the efficiency and meet the requirements of various application scenes.
Fig. 13 is a schematic block diagram of another electronic device provided in some embodiments of the application. As shown in fig. 13, the electronic device 300 includes a processor 310 and a memory 320. Memory 320 is used to store non-transitory computer-readable instructions (e.g., one or more computer program modules). The processor 310 is configured to execute non-transitory computer readable instructions that when executed by the processor 310 may perform one or more of the steps of the storage management method for a storage management system described above. The memory 320 and the processor 310 may be interconnected by a bus system and/or other forms of connection mechanisms (not shown).
For example, the processor 310 may be a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), a Digital Signal Processor (DSP), or other form of processing unit having data processing and/or program execution capabilities, such as a Field Programmable Gate Array (FPGA), or the like; for example, the Central Processing Unit (CPU) may be an X86 or ARM architecture, or the like. The processor 310 may be a general-purpose processor or a special-purpose processor that may control other components in the electronic device 300 to perform the desired functions.
For example, memory 320 may comprise any combination of one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and/or non-volatile memory. Volatile memory can include, for example, random Access Memory (RAM) and/or cache memory (cache) and the like. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, erasable programmable read-only memory (EPROM), portable compact disc read-only memory (CD-ROM), USB memory, flash memory, and the like. One or more computer program modules may be stored on the computer readable storage medium and executed by the processor 310 to implement various functions of the electronic device 300. Various applications and various data, as well as various data used and/or generated by the applications, etc., may also be stored in the computer readable storage medium.
It should be noted that, in the embodiment of the present application, the specific functions and technical effects of the electronic device 300 may refer to the description of the storage management method for the storage management system, which is not repeated herein.
Fig. 14 is a schematic block diagram of another electronic device provided in some embodiments of the application. The electronic device 400 is suitable, for example, for implementing the storage management method for a storage management system provided by the embodiment of the present application. Electronic device 400 may be a computer, server, or other electronic device having computing capabilities. It should be noted that the electronic device 400 shown in fig. 14 is only an example, and does not impose any limitation on the functions and the scope of use of the embodiments of the present application.
As shown in fig. 14, the electronic device 400 may include a processing means (e.g., a central processing unit, a graphics processor, etc.) 410, which may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 420 or a program loaded from a storage means 480 into a Random Access Memory (RAM) 430. In the RAM 430, various programs and data required for the operation of the electronic device 400 are also stored. The processing device 410, ROM 420, and RAM 430 are connected to each other by a bus 440. An input/output (I/O) interface 450 is also connected to bus 440.
In general, the following devices may be connected to the I/O interface 450: input devices 460 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, and the like; an output device 470 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, etc.; storage 480 including, for example, magnetic tape, hard disk, etc.; and communication device 490. The communication means 490 may allow the electronic device 400 to communicate wirelessly or by wire with other electronic devices to exchange data. While fig. 14 illustrates an electronic device 400 having various means, it is to be understood that not all illustrated means are required to be implemented or provided, and that electronic device 400 may alternatively be implemented or provided with more or fewer means.
For example, the storage management method shown in fig. 1 may be implemented as a computer software program according to an embodiment of the present application. For example, embodiments of the present application include a computer program product comprising a computer program embodied on a non-transitory computer readable medium, the computer program comprising program code for performing the storage management method described above. In such an embodiment, the computer program may be downloaded and installed from a network via communications device 490, or from storage 480, or from ROM 420. The functions defined in the storage management method provided by the embodiment of the present application can be performed when the computer program is executed by the processing apparatus 410.
At least one embodiment of the present application also provides a storage medium storing non-transitory computer readable instructions that, when executed by a computer, implement a storage management method provided by any of the embodiments of the present application. By utilizing the storage medium, the convenience of a user in operating the storage management system can be improved, a flexible operation mode is provided, the operation complexity is reduced, the efficiency is improved, and the requirements of various application scenes can be met.
Fig. 15 is a schematic diagram of a storage medium according to some embodiments of the present application. As shown in fig. 15, the storage medium 500 stores non-transitory computer readable instructions 510. For example, non-transitory computer readable instructions 510, when executed by a computer, may perform one or more steps in a storage management method for a storage management system according to the above.
For example, the storage medium 500 may be applied to the electronic device 300 described above. For example, the storage medium 500 may be the memory 320 in the electronic device 300 shown in fig. 13. For example, the relevant description of the storage medium 500 may refer to the corresponding description of the memory 320 in the electronic device 300 shown in fig. 13, and will not be repeated here.
The following points need to be described:
(1) The drawings of the embodiments of the present application relate only to the structures to which the embodiments of the present application relate, and other structures may refer to the general designs.
(2) The embodiments of the application and the features of the embodiments can be combined with each other to give new embodiments without conflict.
The above description is only specific embodiments of the present application, but the scope of the present application should not be limited thereto, and the scope of the present application should be determined by the claims.

Claims (15)

1. A storage management method for a storage management system, comprising:
acquiring input information of a user, wherein the input information is a non-formatted text with semantics;
carrying out semantic analysis on the input information to obtain an analysis result, wherein the analysis result comprises operation type information and object type information which correspond to each other;
selecting a corresponding operation unit based on the operation type information and the object type information and judging whether to call an instruction or not;
responding to the instruction calling, and calling a corresponding preset instruction segment in the operation unit according to the object type information to generate an operation instruction;
executing the operation instruction in the storage management system to realize storage management operation consistent with the semantics of the input information.
2. The method of claim 1, wherein performing the semantic analysis on the input information to obtain the analysis result comprises:
and carrying out semantic analysis on the input information by using a language lexical analysis technology, and identifying the type of operation and the type of object contained in the input information, thereby obtaining the operation type information and the object type information.
3. The method of claim 2, wherein the operation type information indicates that the type of operation belongs to one of: the method comprises the steps of creating operation, inquiring operation, deleting operation, first preset operation and second preset operation;
the first preset operation at least comprises: performing cluster shutdown on the storage management system, performing node shutdown on the storage management system, and performing operation on permission of the storage management system;
the second preset operation includes: operations other than the creating operation, the querying operation, the deleting operation, and the first preset operation.
4. The method of claim 3, wherein the operation unit comprises a creation unit, a query unit, a deletion unit, a first preset unit, a second preset unit;
the creating unit comprises at least one preset instruction section for realizing the creating function, the inquiring unit comprises at least one preset instruction section for realizing the inquiring function, the deleting unit comprises at least one preset instruction section for realizing the deleting function, the first preset unit is configured to return prompt information for prohibiting operation, and the second preset unit is configured to return prompt information for failing to support operation.
5. The method of claim 4, wherein the object type information indicates that the type of the object belongs to one of a plurality of preset object types or belongs to an undefined object type,
the preset object type refers to a type allowed in the storage management system,
the undefined object type refers to a type that is not allowed in the storage management system.
6. The method of claim 5, wherein selecting a corresponding operation unit and determining whether to make the instruction call based on the operation type information and the object type information, comprises:
in response to the operation type information indicating that the type of operation belongs to the creation operation and the object type information indicating that the type of object belongs to one of the plurality of preset object types, selecting the creation unit, and determining to make the instruction call if a creation limit and a number limit are satisfied;
responsive to the operation type information indicating that the type of operation belongs to the query operation and the object type information indicating that the type of object belongs to one of the plurality of preset object types, selecting the query unit and determining to make the instruction call;
Selecting the deletion unit in response to the operation type information indicating that the type of operation belongs to the deletion operation and the object type information indicating that the type of object belongs to one of the plurality of preset object types, and determining to make the instruction call if a deletion limit and the number limit are satisfied;
responding to the operation type information to indicate that the type of the operation belongs to the first preset operation, selecting the first preset unit, determining not to carry out the instruction call, and returning prompt information for prohibiting the operation by utilizing the first preset unit;
responding to the operation type information to indicate that the type of the operation belongs to the second preset operation, selecting the second preset unit, determining not to call the instruction, and returning prompt information which cannot support the operation by using the second preset unit;
and responding to the object type information to indicate that the type of the object belongs to the undefined object type, determining not to make the instruction call, and returning prompt information that the object does not exist.
7. The method of claim 5, wherein invoking the corresponding preset instruction segment in the operation unit according to the object type information to generate the operation instruction in response to determining to make the instruction invocation comprises:
In response to determining to make the instruction call, calling a preset instruction segment corresponding to the type of the object indicated by the object type information in the operation unit, and generating the operation instruction by running the preset instruction segment;
and the preset instruction section is embedded with an application programming interface corresponding to the type of the object.
8. The method of claim 7, wherein different types of objects correspond to different preset instruction segments, the different preset instruction segments having different application programming interfaces embedded therein.
9. The method of claim 7, wherein the object type information further includes parameter content including at least one parameter of an object contained in the input information,
and responding to the instruction calling, calling a corresponding preset instruction segment in the operation unit according to the object type information to generate the operation instruction, and further comprising:
and when the preset instruction segment is called, the parameter content is transferred to the preset instruction segment.
10. The method according to any one of claims 1 to 9, wherein the input information is text information input by the user, or the input information is text information obtained by recognizing voice information input by the user.
11. The method of any of claims 1-9, further comprising:
and setting a semantic recognition rule so that synonyms of different classes can be respectively recognized as corresponding types of operations and/or objects, and establishing corresponding relations between the recognized operations and objects under the condition that the connecting words exist.
12. A storage management device for a storage management system, comprising:
the system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is configured to acquire input information of a user, wherein the input information is a non-formatted text with semantics;
the analysis module is configured to perform semantic analysis on the input information to obtain an analysis result, wherein the analysis result comprises operation type information and object type information which correspond to each other;
the first processing module is configured to select a corresponding operation unit and judge whether to call an instruction or not based on the operation type information and the object type information;
the second processing module is configured to respond to the determination of the instruction calling, and call a corresponding preset instruction section in the operation unit according to the object type information so as to generate an operation instruction;
and the third processing module is configured to execute the operation instruction in the storage management system so as to realize storage management operation consistent with the semantics of the input information.
13. An electronic device comprising the storage management apparatus for a storage management system according to claim 12.
14. An electronic device, comprising:
a processor;
a memory including one or more computer program modules;
wherein the one or more computer program modules are stored in the memory and configured to be executed by the processor, the one or more computer program modules comprising a memory management method for implementing the memory management system of any of claims 1-11.
15. A storage medium storing non-transitory computer readable instructions which when executed by a computer implement the storage management method for a storage management system of any one of claims 1-11.
CN202310889544.7A 2023-07-20 2023-07-20 Storage management method and device, electronic equipment and storage medium Pending CN116610267A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310889544.7A CN116610267A (en) 2023-07-20 2023-07-20 Storage management method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310889544.7A CN116610267A (en) 2023-07-20 2023-07-20 Storage management method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN116610267A true CN116610267A (en) 2023-08-18

Family

ID=87678704

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310889544.7A Pending CN116610267A (en) 2023-07-20 2023-07-20 Storage management method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN116610267A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107832286A (en) * 2017-09-11 2018-03-23 远光软件股份有限公司 Intelligent interactive method, equipment and storage medium
CN111968640A (en) * 2020-08-17 2020-11-20 北京小米松果电子有限公司 Voice control method and device, electronic equipment and storage medium
CN112151022A (en) * 2020-09-25 2020-12-29 北京百度网讯科技有限公司 Speech recognition optimization method, device, equipment and storage medium
CN113990313A (en) * 2021-10-21 2022-01-28 平安科技(深圳)有限公司 Voice control method, device, equipment and storage medium
CN114187388A (en) * 2021-12-10 2022-03-15 铅笔头(深圳)科技有限公司 Animation production method, device, equipment and storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107832286A (en) * 2017-09-11 2018-03-23 远光软件股份有限公司 Intelligent interactive method, equipment and storage medium
CN111968640A (en) * 2020-08-17 2020-11-20 北京小米松果电子有限公司 Voice control method and device, electronic equipment and storage medium
US20220051668A1 (en) * 2020-08-17 2022-02-17 Beijing Xiaomi Pinecone Electronics Co., Ltd. Speech control method, terminal device, and storage medium
CN112151022A (en) * 2020-09-25 2020-12-29 北京百度网讯科技有限公司 Speech recognition optimization method, device, equipment and storage medium
CN113990313A (en) * 2021-10-21 2022-01-28 平安科技(深圳)有限公司 Voice control method, device, equipment and storage medium
CN114187388A (en) * 2021-12-10 2022-03-15 铅笔头(深圳)科技有限公司 Animation production method, device, equipment and storage medium

Similar Documents

Publication Publication Date Title
US10776082B2 (en) Programming environment augment with automated dialog system assistance
RU2422890C2 (en) Resource creation using ontology
US10216510B2 (en) Silent upgrade of software with dependencies
US8352913B2 (en) Generating and resolving component names in an integrated development environment
US11157444B2 (en) Generating index entries in source files
MXPA06002683A (en) Method and system for creating, storing, managing and consuming culture specific data.
US10394756B2 (en) System and method for customizing archive of a device driver generator tool for a user
WO2021022703A1 (en) Software project reconstruction method and device, and computer device and storage medium
US9898467B1 (en) System for data normalization
CN114003269A (en) Component processing method and device, electronic equipment and storage medium
WO2023151397A1 (en) Application program deployment method and apparatus, device, and medium
US10769375B2 (en) Domain-specific lexical analysis
CN116610267A (en) Storage management method and device, electronic equipment and storage medium
CN113805861B (en) Code generation method based on machine learning, code editing system and storage medium
CN115629763A (en) Target code generation method and NPU instruction display method and device
CN114490578A (en) Data model management method, device and equipment
CN113901025A (en) Database management method, device, equipment and storage medium
KR20060043595A (en) Structured task naming
KR20220035610A (en) System and method for providing integrated machine learning platform based on pipeline
WO2021174756A1 (en) Application system deployment method and apparatus, and computer device and storage medium
US20230315980A1 (en) Content association in file editing
CN110083362A (en) Document handling method, system, readable storage medium storing program for executing and equipment
CN109976765B (en) Application group deployment method, device, equipment and storage medium
US11977878B2 (en) System and method for managing software services in building customized software
WO2024082983A1 (en) Code recommendation method and apparatus, and related device

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20230818