Resource information processing method, apparatus, device, medium, and program product
By acquiring the hardware and logical configuration information of storage resources, determining path update, fault handling, and path load balancing strategies, the complexity of heterogeneous storage resource management is solved, achieving unified management and efficient operation and maintenance.
Patent Information
- Application Number
- CN202411286040.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-13
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2044-09-13
AI Technical Summary
The lack of a unified management method for heterogeneous storage resources in existing technologies leads to performance differences among different storage resources, resulting in overall system performance bottlenecks, cumbersome operation and maintenance work, complex fault diagnosis, and low efficiency.
By acquiring the hardware and logical configuration information of storage resources, determining path update, fault handling, and path load balancing strategies, and comprehensively processing block resource information, unified management of storage resources of different architectures and types can be achieved.
It enables unified management of storage resources with different architectures and types, reduces management complexity, lowers the complexity of troubleshooting heterogeneous storage devices, and improves the overall operation and maintenance efficiency of storage resources.
Smart Images

Figure CN119415013B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the fields of software development and financial technology, and specifically to a resource information processing method, apparatus, equipment, medium, and program product. Background Technology
[0002] The operation and maintenance of data center storage resources involves various technologies and strategies, and these methods and practices are crucial for ensuring system reliability, performance, and efficiency. Related technologies for storage resource operation and maintenance mainly include using monitoring tools to monitor the performance indicators of various storage devices and making optimization adjustments; or regularly backing up data by developing detailed recovery plans or conducting tests.
[0003] The inventors discovered that the operation and maintenance of storage resources in related technologies have the following defects: there is a lack of a unified management method for the comprehensive operation and maintenance of heterogeneous storage resources, and the performance differences of different storage resources lead to the performance bottleneck of the overall system; different architectures of storage devices require different management tools and strategies, making the operation and maintenance work more cumbersome; the fault diagnosis and troubleshooting work in heterogeneous storage devices is more complicated, resulting in low overall operation and maintenance efficiency. Summary of the Invention
[0004] In view of the above problems, this disclosure provides a resource information processing method, apparatus, equipment, medium and program product.
[0005] According to a first aspect of this disclosure, a resource information processing method is provided, comprising: acquiring resource information of storage resources, wherein the resource information includes configuration information and usage information, the configuration information includes hardware configuration information and logical configuration information, the storage resources include multiple types of block type resources, and the usage information includes path usage information; determining a path processing strategy based on the hardware configuration information, the logical configuration information, and the path usage information, wherein the path processing strategy includes at least one of a path update strategy, a fault handling strategy, and a path load strategy; and processing the block resource information using the path update strategy, the fault handling strategy, and the path load strategy to obtain a path processing result.
[0006] According to embodiments of this disclosure, the aforementioned hardware configuration information includes hardware device information, the aforementioned logical configuration information includes path information, and both the aforementioned hardware device information and the aforementioned path information are multiple; determining a path processing strategy based on the aforementioned block type resource hardware configuration information, the aforementioned logical configuration information, and the aforementioned path usage information includes: determining multiple initial path processing strategies corresponding to the multiple aforementioned hardware device information and the multiple aforementioned path information; and updating the multiple aforementioned initial path processing strategies based on a preset update strategy and the aforementioned path usage information to obtain the aforementioned path processing strategy, such that the aforementioned path processing strategy matches the multiple aforementioned hardware device information.
[0007] According to embodiments of this disclosure, the resource information is processed using the aforementioned path update strategy, fault handling strategy, and path load strategy to obtain a path processing result, including: determining multiple storage path information in the block resource information; and when at least one of the multiple storage path information is detected as abnormal information, processing the storage path information based on the aforementioned fault handling strategy, path update strategy, and path load strategy to obtain the aforementioned path processing result.
[0008] According to embodiments of this disclosure, the aforementioned usage information further includes resource usage information, the aforementioned storage resources further include file type resources, and the aforementioned method further includes: processing the aforementioned hardware configuration information, the aforementioned logical configuration information, and the aforementioned resource usage information within a historical time period to obtain resource usage results; using preset prediction rules and the aforementioned resource usage results to predict resource usage information within a future time period to obtain prediction results; determining a resource allocation strategy based on the aforementioned prediction results; and processing the aforementioned resource information using the aforementioned resource allocation strategy to obtain resource allocation results.
[0009] According to embodiments of this disclosure, resource usage information for a future time period is predicted using preset prediction rules and the aforementioned resource usage results to obtain prediction results, including: extracting feature sequence information and load peaks from the aforementioned resource usage results; and inputting the aforementioned feature sequence information and the aforementioned load peaks into a time series model to output the aforementioned prediction results.
[0010] According to embodiments of this disclosure, the aforementioned hardware configuration information further includes hardware management information and resource pool information, and the aforementioned logical configuration information further includes port information and security policies; the aforementioned method further includes: determining the mapping relationship between the aforementioned resource information and the target device based on the aforementioned hardware device information, the aforementioned hardware management information, the aforementioned resource pool information, the aforementioned port information and security policies; and generating resource architecture information based on the aforementioned mapping relationship, so that the user can process the aforementioned resource information accordingly according to configuration requirements.
[0011] According to embodiments of this disclosure, the method further includes: using a detection tool to detect the storage resource to obtain type information of the storage resource; and determining the configuration information and usage information based on the type information.
[0012] According to embodiments of this disclosure, the method further includes: processing the resource information and the processing results using a graphics generation tool to generate chart information.
[0013] A second aspect of this disclosure provides a resource information processing apparatus, comprising: a resource information acquisition module for acquiring resource information of storage resources, wherein the resource information includes configuration information and usage information, the configuration information includes hardware configuration information and logical configuration information, the storage resources include multiple types of block type resources, and the usage information includes path usage information; a path processing strategy determination module for determining a path processing strategy based on the hardware configuration information, the logical configuration information, and the path usage information, wherein the path processing strategy includes at least one of a path update strategy, a fault handling strategy, and a path load strategy; and a resource information processing module for processing the block resource information using the path update strategy, the fault handling strategy, and the path load strategy to obtain a path processing result.
[0014] A third aspect of this disclosure provides an electronic device comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the method described above.
[0015] A fourth aspect of this disclosure also provides a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed by a processor, implement the steps of the above-described method.
[0016] The fifth aspect of this disclosure also provides a computer program product, including a computer program or instructions that, when executed by a processor, implement the steps of the above-described method.
[0017] According to the resource information processing method, apparatus, equipment, medium, and program products provided in this disclosure, by using hardware configuration information, logical configuration information, and path usage information based on block type storage resources, path update strategies, fault handling strategies, and path load strategies can be determined to process different types of block resource information, thereby obtaining path processing results. Since the path processing results are the integrated results obtained by comprehensively using different strategies for block resource information of different architectures, unified management of storage resources of different architectures and types is realized, reducing management complexity, reducing the complexity of troubleshooting heterogeneous storage devices, and further improving the overall operation and maintenance efficiency of storage resources. Attached Figure Description
[0018] The foregoing contents, as well as other objects, features, and advantages of this disclosure, will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:
[0019] Figure 1 The illustration shows an application scenario diagram of a resource information processing method, apparatus, device, medium, and program product according to embodiments of the present disclosure;
[0020] Figure 2 A flowchart illustrating a resource information processing method according to an embodiment of the present disclosure is shown schematically.
[0021] Figure 3 The flowchart illustrates a method for implementing path failover, load balancing, and monitoring functions in SAN storage using a dynamic multipath strategy according to embodiments of the present disclosure.
[0022] Figure 4 A flowchart illustrating another resource information processing method according to an embodiment of the present disclosure is shown schematically;
[0023] Figure 5 A schematic diagram illustrating the system architecture of a resource information processing method according to an embodiment of the present disclosure is shown.
[0024] Figure 6 This schematic diagram illustrates a structural block diagram of a resource information processing apparatus according to an embodiment of the present disclosure;
[0025] Figure 7 A block diagram schematically illustrates an electronic device suitable for implementing a resource information processing method according to an embodiment of the present disclosure. Detailed Implementation
[0026] The embodiments of the present disclosure will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the disclosure. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concepts of the present disclosure.
[0027] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0028] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.
[0029] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).
[0030] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0031] In the technical solution disclosed herein, the user information (including but not limited to user personal information, user image information, user device information, such as location information) and data (including but not limited to data used for analysis, stored data, and displayed data) involved are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, storage, use, processing, transmission, provision, disclosure, and application of related data all comply with relevant laws, regulations, and standards, necessary confidentiality measures have been taken, and they do not violate public order and good morals. Corresponding operation entry points are provided for users to choose to authorize or refuse.
[0032] In scenarios involving automated decision-making using personal information, the methods, devices, and systems provided in this disclosure all offer users corresponding entry points for choosing to agree to or reject the automated decision-making results. If the user chooses to reject, the process proceeds to the expert decision-making stage. Here, "automated decision-making" refers to the activity of automatically analyzing and evaluating an individual's behavioral habits, interests, or economic, health, and credit status through computer programs, and then making a decision. Here, "expert decision-making" refers to the activity of making decisions by personnel who specialize in a particular field, possess specialized experience, knowledge, and skills, and have reached a certain level of professional expertise.
[0033] In conceiving this disclosure, the inventors discovered that in related technologies, the operation and maintenance management of storage device resources lacks a unified management method for the comprehensive operation and maintenance of heterogeneous storage resources. The performance differences of different storage resources lead to the performance bottleneck of the overall system; storage devices with different architectures require different management tools and strategies, making operation and maintenance work cumbersome; fault diagnosis and troubleshooting in heterogeneous storage devices are more complex, resulting in low overall operation and maintenance efficiency.
[0034] In view of this, this disclosure uses hardware configuration information, logical configuration information, and path usage information of block type storage resources to determine path update strategies, fault handling strategies, and path load strategies to process different types of block resource information, thereby obtaining path processing results. Since the path processing results are the integrated results obtained by comprehensively using different strategies for block resource information of different architectures, unified management of storage resources of different architectures and types is realized, reducing management complexity, reducing the complexity of troubleshooting heterogeneous storage devices, and further improving the overall operation and maintenance efficiency of storage resources.
[0035] Embodiments of this disclosure provide a resource information processing method, apparatus, device, medium, and program product. The method includes: acquiring resource information of storage resources, wherein the resource information includes configuration information and usage information, the configuration information includes hardware configuration information and logical configuration information, the storage resources include block type resources, and the usage information includes path usage information; determining a path processing strategy based on the hardware configuration information, logical configuration information, and path usage information, wherein the path processing strategy includes at least one of a path update strategy, a fault handling strategy, and a path load strategy; and processing the block resource information using the path update strategy, the fault handling strategy, and the path load strategy to obtain a path processing result.
[0036] Figure 1 The illustration shows an application scenario diagram of the resource information processing method, apparatus, device, medium, and program product according to embodiments of the present disclosure.
[0037] like Figure 1 As shown, application scenario 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 serves as a medium for providing a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.
[0038] Users can use the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 via the network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social media platform software, etc. (for example only).
[0039] The first terminal device 101, the second terminal device 102, and the third terminal device 103 can be various electronic devices with displays and support web browsing, including but not limited to smartphones, tablets, laptops, and desktop computers.
[0040] Server 105 can be a server that provides various services, such as a backend management server that supports websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103 (this is just an example). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.
[0041] It should be noted that the resource information processing method provided in this embodiment can generally be executed by server 105. Correspondingly, the resource information processing device provided in this embodiment can generally be located in server 105. The resource information processing method provided in this embodiment can also be executed by a server or server cluster that is different from server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and / or server 105. Correspondingly, the resource information processing device provided in this embodiment can also be located in a server or server cluster that is different from server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and / or server 105.
[0042] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0043] Figure 2 A flowchart illustrating a resource information processing method according to an embodiment of the present disclosure is shown schematically.
[0044] like Figure 2 As shown, the resource information processing method of this embodiment includes operations S210 to S230.
[0045] In operation S210, resource information of storage resources is obtained. The resource information includes configuration information and usage information. The configuration information includes hardware configuration information and logical configuration information. The storage resources include multiple types of block type resources. The usage information includes path usage information.
[0046] According to embodiments of this disclosure, storage resources can include storage resources of different architectures, vendors, and types, including but not limited to Direct-Attached Storage (DAS), Network Attached Storage (NAS), Storage Area Network (SAN), and cloud storage. Hardware configuration information may include hardware device information, hardware management information, and resource pool information, while logical configuration information may include path information, port information, and security policies. Block-type resources may include Storage Area Network (SAN), and file-type resources may include Network Attached Storage (NAS). It is understood that the resource information processing methods in this disclosure can be implemented using compiled languages (such as Python).
[0047] In operation S220, a path processing strategy is determined based on hardware configuration information, logical configuration information, and path usage information. The path processing strategy includes at least one of a path update strategy, a fault handling strategy, and a path load strategy.
[0048] According to embodiments of this disclosure, a path can represent the path by which a server accesses a storage device within a block-type resource; path usage information can represent the information of used / occupied paths among multiple access paths, as well as the information of remaining available paths. A fault handling strategy can represent, in a multi-path strategy, the path switching mechanism in the event of a path failure; a path load strategy can represent the strategy of rationally distributing data / information flows to different paths using a load balancing algorithm; and a path update strategy can represent the strategy of updating the initial path information based on the path load strategy and the fault handling strategy.
[0049] In operation S230, the block resource information is processed using path update strategy, fault handling strategy and path load strategy to obtain path processing results.
[0050] According to embodiments of this disclosure, the path processing result can be the result of monitoring, processing, and updating block resource information based on path update strategies, fault handling strategies, and path load strategies, and may include path switching results, path load results, and path update results. Block resource information may include hardware configuration information, logical configuration information, and path information for block type resources.
[0051] According to embodiments of this disclosure, by using hardware configuration information, logical configuration information, and path usage information based on block type storage resources, path update strategies, fault handling strategies, and path load strategies can be determined to process different types of block resource information, thereby obtaining path processing results. Since the path processing results are integrated results obtained by comprehensively using different strategies for block resource information of different architectures, unified management of storage resources of different architectures and types is realized, reducing management complexity, reducing the complexity of troubleshooting heterogeneous storage devices, and further improving the overall operation and maintenance efficiency of storage resources.
[0052] According to embodiments of this disclosure, hardware configuration information includes hardware device information, and logical configuration information includes path information; both hardware device information and path information are multiple. Determining a path processing strategy based on the hardware configuration information, logical configuration information, and path usage information of block-type resources includes: determining multiple initial path processing strategies corresponding to the multiple hardware device information and multiple path information; and updating the multiple initial path processing strategies based on a preset update strategy and path usage information to obtain a path processing strategy that matches the multiple hardware device information.
[0053] According to embodiments of this disclosure, since the hardware device information and paths of different block storage resources (e.g., SAN) from different vendors can have various types, the initial path processing strategy can be a path processing strategy determined based on the storage resources of different vendors / types. For example, path processing strategy a can be used for SAN storage devices of vendor A, and path processing strategy b can be used for SAN storage devices of vendor B. By combining the initial path processing strategies of different block storage resources, a path processing strategy can be obtained.
[0054] According to embodiments of this disclosure, the step of updating the initial path processing strategy based on a preset update strategy for different types of storage resources may include: defining processing strategies for different paths, including load balancing and failover strategies; selecting supported protocols, such as iSCSI or Fibre Channel, to achieve compatibility between devices with different architectures; selecting multi-path tools that can support heterogeneous environments to ensure compatibility and configuration flexibility; thereby maintaining consistency in configuring and managing path strategies, ensuring policy uniformity across different devices; and ensuring the effectiveness and reliability of the path processing strategy by conducting comprehensive testing on different devices before deployment.
[0055] According to embodiments of this disclosure, by updating the initial path processing strategy, a consistent path processing strategy can be achieved in a heterogeneous storage resource environment, reducing the complexity of storage devices and path processing, and optimizing system performance and reliability.
[0056] According to embodiments of this disclosure, block resource information is processed using a path update strategy, a fault handling strategy, and a path load strategy to obtain a path processing result, including: determining multiple storage path information in the block resource information; and when at least one of the multiple storage path information is detected as abnormal information, processing the storage path information based on the fault handling strategy, the path update strategy, and the path load strategy to obtain a path processing result.
[0057] According to embodiments of this disclosure, anomaly information indicates that the current path is a faulty path or that the path performance does not meet preset performance requirements. By processing the abnormal path according to the fault handling strategy, path update strategy, and path load strategy, path switching results, path load results, and path update results can be obtained.
[0058] In one feasible embodiment, considering that in a heterogeneous storage environment, storage devices may come from different vendors and use different technologies or protocols, the path usage environment is complex, leading to compatibility issues, system performance bottlenecks, and stability problems. This disclosure employs a dynamic multi-path strategy to manage and optimize data access paths in a heterogeneous SAN storage environment. The dynamic multi-path strategy may include: real-time detection and configuration of all path information still available in the storage environment; dynamic selection of the optimal path based on real-time performance information and path health status information; and automatic switching of data / information flow to an alternative path when a path failure or performance degradation is detected.
[0059] Figure 3 The flowchart illustrates a method for implementing path failover, load balancing, and monitoring functions in SAN storage using a dynamic multipath strategy according to embodiments of the present disclosure.
[0060] like Figure 3 As shown, the method for implementing path failover, load balancing and monitoring functions in SAN storage using dynamic multipath strategies can include operations S310 to S330.
[0061] When operating S310, path failover is performed. By configuring the storage device's path information and setting failover strategies in the multipath software, a path failure is simulated to verify whether the software can automatically switch to a backup path to ensure uninterrupted data transmission.
[0062] When operating the S320, configure load balancing strategies. You can select a load balancing algorithm in the multi-path software, such as round-robin or least connections, to distribute data traffic across different paths. Use monitoring tools to monitor the load balancing effect and adjust the strategy as needed.
[0063] When operating the S330, monitoring functions are available. By configuring the monitoring function of the multipath software, the health status and performance of the paths can be tracked in real time; alarms and reports generated by the software can be checked regularly to address potential problems in a timely manner; the multipath software can be ensured to be compatible with storage devices, and the software can be updated and maintained regularly to meet new challenges.
[0064] According to embodiments of this disclosure, the usage information further includes resource usage information, and the storage resources further include file type resources. The method further includes: processing hardware configuration information, logical configuration information, and resource usage information within a historical time period to obtain resource usage results; using preset prediction rules and resource usage results to predict resource usage information within a future time period to obtain prediction results; determining a resource allocation strategy based on the prediction results; and processing resource information using the resource allocation strategy to obtain resource allocation results.
[0065] According to embodiments of this disclosure, resource usage information may include block-type resource usage information and file-type resource usage information. The historical time period can be selected based on actual scenario requirements; for example, it can be the peak time period with the highest storage resource usage and demand, or the valley time period with the lowest storage resource usage and demand. The specific time period is not limited here. File-type resource usage information may include node usage information such as disks, disk domains, storage pools, tenants, file systems, controllers, physical port groups, port groups, and logical port groups. Block-type resource usage information may include node usage information such as disks, logical units (LUNs), initiating devices (IDEVs), storage pools, hosts, and host groups. The preset prediction rule may be a prediction algorithm, a prediction model, or an experience-based prediction.
[0066] In one feasible embodiment, a random forest algorithm can be used to predict resource usage in future time periods, including: collecting and organizing storage resource usage data within historical time periods, including timestamps and related features; extracting features from historical information, such as time features (hours, days, weeks, etc.) and load patterns; dividing the dataset into training and test sets, using the training set data to train a random forest model, adjusting hyperparameters (e.g., number of trees, maximum depth) to optimize performance, and using the test set data to evaluate the model's prediction accuracy and calculate error metrics; and using the trained model to predict resource usage in future time periods to obtain prediction results.
[0067] In one feasible embodiment, determining a resource allocation strategy based on prediction results may include: analyzing prediction results to assess the peak and trough values of storage resource demand in the future time period; formulating a resource allocation strategy based on predicted demand, for example, setting resource reservations during periods of high demand and resource releases during periods of low demand; setting priorities for different types of storage tasks according to actual business needs to ensure that critical tasks are allocated priority when resources are scarce; implementing an automated adjustment mechanism to dynamically adjust resource allocation based on actual conditions and prediction results; monitoring resource usage and strategy effectiveness, and optimizing the allocation strategy based on actual data feedback.
[0068] According to embodiments of this disclosure, using prediction results to formulate storage resource allocation strategies for future time periods can more accurately predict resource demand, ensure efficient utilization of storage resources, and avoid resource waste or shortage. Advance resource allocation can reduce performance bottlenecks caused by resource shortages, thereby improving system stability and response speed. At the same time, optimizing resource allocation can ensure that important services and high-priority tasks receive sufficient resources, thereby improving service quality and user experience.
[0069] According to embodiments of this disclosure, resource usage information for a future time period is predicted using preset prediction rules and resource usage results to obtain prediction results, including: extracting feature sequence information and load peaks from resource usage results; and inputting the feature sequence information and load peaks into a time series model to output prediction results.
[0070] According to embodiments of this disclosure, feature sequence information can characterize the trends, seasonal patterns, periodicity, outliers, and statistical characteristics (e.g., mean and variance) of data in historical resource usage information. Load peaks can characterize the point at time / time period during which resource usage reaches its maximum value.
[0071] In one feasible embodiment, a method for predicting storage resource usage information for future time periods using a time series model may include: acquiring historical usage data of storage resources, including timestamps and usage amounts; the historical usage data source may include monitoring tools, log files, or databases; visualizing the data through charts (e.g., time series plots) to observe resource usage trends, seasonality, and periodicity; calculating basic statistics of the data (e.g., mean, standard deviation) and performing correlation analysis; checking the stationarity of the time series using the ADF test or KPSS test; if the data is not stationary, differencing or transformation is required to make it stationary; selecting an appropriate time series model based on the characteristics of the data, such as ARIMA (AutoRegressive Integrated Moving Average); splitting the historical data (sample data) into training and test sets in chronological order; fitting the ARIMA model on the training set; evaluating the model's performance on the test set using metrics such as mean squared error (MSE), root mean square error (RMSE), and mean absolute error (MAE); adjusting hyperparameters (p, d, q parameters) based on the performance of the ARIMA model; and using rolling forecasts. The model is further optimized using forecast (or time series cross-validation); finally, the validated model is used to generate forecasts for future time periods; confidence intervals or forecast intervals are provided, and the uncertainty of the forecast results is estimated.
[0072] According to embodiments of this disclosure, the hardware configuration information further includes hardware management information and resource pool information, and the logical configuration information further includes port information and security policies; the method further includes: determining the mapping relationship between resource information and target device based on hardware device information, hardware management information, resource pool information, port information and security policies; and generating resource architecture information based on the mapping relationship, so that the user can process the resource information accordingly according to configuration requirements.
[0073] According to embodiments of this disclosure, the mapping relationship can characterize the mapping relationship between storage resource information and target device (server), including but not limited to mount information, data storage location information and access permission information.
[0074] In one feasible embodiment, constructing the mapping relationship between resource information and target devices may include: establishing a mapping table that can record the relationship between each host and its connected storage devices, or record which hosts use each storage device; using monitoring tools to obtain resource usage and mapping relationships in real time; and further, using automated scripts to periodically check and update the mapping relationships to maintain the accuracy and timeliness of the data.
[0075] According to embodiments of this disclosure, by determining the mapping relationship between resource information and target devices, resource usage and allocation bottlenecks can be identified and resource allocation can be adjusted, thereby improving overall system performance, ensuring load balancing, reducing overload of single resources, and at the same time, accurate mapping helps to utilize resources more effectively, reduce resource idleness and waste, and help to quickly locate resource problems, thereby improving system stability and reliability.
[0076] According to embodiments of this disclosure, the method further includes: using a detection tool to detect the storage resources to obtain type information of the storage resources; and determining configuration information and usage information based on the type information.
[0077] According to embodiments of this disclosure, in the process of implementing the resource information processing method of this disclosure using Python, multiple tool libraries can be used, including the pexpect library. The pexpect library can realize automatic interaction between various programs (such as ssh, ftp, passwd, and telnet), realize device login, determine whether the device can be logged in, check the device manufacturer and model, and determine whether it is a storage device. Then, based on storage devices from different manufacturers, it collects storage configuration information of different architectures, which may include storage hardware resources, hard disk domains, storage pools, file systems, logical port groups, data protection, mapping relationships, host groups, multipath links, etc.
[0078] In one feasible embodiment, in addition to the pexpect library, the tool library may also include the time library, the system (OS) library, the diagrams library, the PyQt library, the NumPy library, and the SciPy library. The Time library can access various types of clocks to record the current time; the OS library can read and write files and directories, enabling file generation and reading / writing; the diagrams library can draw cloud system architectures using simple Python code, enabling prototyping of new system architectures; the PyQt library can be used to create graphical user interface (GUI) applications, creating heterogeneous storage device operation and maintenance platforms; and the NumPy and SciPy libraries can be used for numerical computation, scientific and technical computing, including scientific computing, linear algebra, signal processing, and optimization problems.
[0079] According to embodiments of this disclosure, the method further includes: processing resource information and processing results using a graphics generation tool to generate chart information.
[0080] According to embodiments of this disclosure, the image generation tool can be a tool in a tool library that generates resource information, including the Matplotlib library and the Networkx library. The Matplotlib library can be used as a low-level library for creating two-dimensional graphs and graphics, and for constructing icons for different network models; the Networkx library can be used to create and process complex graph network structures and generate network topology graphs.
[0081] Figure 4 A flowchart illustrating another resource information processing method according to an embodiment of the present disclosure is shown schematically.
[0082] like Figure 4 As shown, the resource information processing method may include operations S410 to S490.
[0083] When operating S410, obtain the storage management address.
[0084] When operating the S420, you can use Pexpect to log in to the device and determine if you can log in.
[0085] When operating S421, log in to the device if you are able to do so.
[0086] When operating S422, determine the device type. Check the device manufacturer and model to determine if it is a storage device.
[0087] When operating the S423, a connection error message appears if you are unable to log in to the device.
[0088] When operating the S430, if the logged-in device is a storage device, storage configuration information of different architectures can be collected according to different types of storage devices, including storage hardware resources, hard disk domains, storage pools, file systems, logical port groups, data protection, mapping relationships, host groups, multipath links, etc.
[0089] When operating the S440, based on the collected storage configuration information, the usage of storage resources can be analyzed, as well as the disk, network, and processor usage of various business systems.
[0090] By operating the S450, future resource usage trends can be predicted based on resource usage data.
[0091] When operating the S460, node information for different types of resources is obtained. For file-type storage resources, node information such as disks, hard disk domains, storage pools, tenants, file systems, controllers, physical port groups, port groups, and logical port groups is collected; for block-type storage resources, node information such as disks, logical units, initiating devices, storage pools, hosts, and host groups is collected.
[0092] When operating the S470, the mapping relationship between storage resources and target devices (hosts) can be confirmed based on the acquired node information. The diagrams library can be used to construct storage network architecture diagrams, enabling information query, configuration, monitoring, and access functions for each node.
[0093] When operating the S480, the Matplotlib library can be used to build visualization charts of storage resource data to analyze the resource status of each storage node.
[0094] When operating the S490, a storage capacity and performance plan analysis report is generated based on the architecture diagram and data analysis charts.
[0095] According to embodiments of this disclosure, using a graphics generation tool to process resource information and generate charts can greatly improve the visualization of data, making complex data easier to understand and analyze. This not only helps with real-time monitoring and performance optimization, but also plays an important role in fault diagnosis and troubleshooting, enabling rapid location of faults and improving overall operation and maintenance efficiency.
[0096] Figure 5 A schematic diagram illustrating the system architecture of a resource information processing method according to an embodiment of the present disclosure is provided.
[0097] like Figure 5 As shown, resource information 510 of storage resources can be obtained. The resource information package may include configuration information 511 and usage information 512. The configuration information includes hardware configuration information 5111 and logical configuration information 5112. The storage resources include block type resources. The usage information 512 may include path usage information 5121. Based on the hardware configuration information 5111, logical configuration information 5112 and path usage information 5121, a path processing strategy 520 is determined. The path processing strategy 520 includes at least one of a path update strategy 521, a fault handling strategy 522 and a path load strategy 523. The block resource information is then processed using the path update strategy 521, the fault handling strategy 522 and the path load strategy 523 to obtain a path processing result 530.
[0098] Based on the above-described resource information processing method, this disclosure also provides a resource information processing apparatus. The following will be combined with... Figure 6 The device is described in detail.
[0099] Figure 6 A schematic block diagram of a resource information processing apparatus according to an embodiment of the present disclosure is shown.
[0100] like Figure 6 As shown, the resource information processing device in this embodiment includes a resource information acquisition module 610, a path processing strategy determination module 620, and a resource information processing module 630.
[0101] The resource information acquisition module 610 is used to acquire resource information of storage resources. The resource information includes configuration information and usage information. The configuration information includes hardware configuration information and logical configuration information. The storage resources include multiple types of block-type resources. The usage information includes path usage information. In one embodiment, the resource information acquisition module 610 can be used to execute the operation S210 described above, which will not be repeated here.
[0102] The path processing strategy determination module 620 is used to determine a path processing strategy based on hardware configuration information, logical configuration information, and path usage information. The path processing strategy includes at least one of a path update strategy, a fault handling strategy, and a path load strategy. In one embodiment, the path processing strategy determination module 620 can be used to perform the operation S220 described above, which will not be repeated here.
[0103] The resource information processing module 630 is used to process block resource information using path update strategies, fault handling strategies, and path load strategies to obtain path processing results. In one embodiment, the resource information processing module 630 can be used to perform the operation S230 described above, which will not be repeated here.
[0104] According to embodiments of this disclosure, the resource information acquisition module 610, the path processing strategy determination module 620, and the resource information processing module 630 in the resource information processing device determine path update strategies, fault handling strategies, and path load strategies to process different types of block resource information by using hardware configuration information, logical configuration information, and path usage information based on block type storage resources. This results in path processing results. Since the path processing results are integrated results obtained by comprehensively using different strategies for block resource information of different architectures, unified management of storage resources of different architectures and types is achieved, reducing management complexity, lowering the complexity of troubleshooting heterogeneous storage devices, and further improving the overall operation and maintenance efficiency of storage resources.
[0105] According to embodiments of this disclosure, the hardware configuration information includes hardware device information, and the logical configuration information includes path information. Both the hardware device information and the path information are multiple. The path processing strategy determination module includes an initial strategy determination submodule and a strategy update module.
[0106] The initial strategy determination submodule is used to determine multiple initial path processing strategies corresponding to multiple hardware device information and multiple path information.
[0107] The policy update module is used to update multiple initial path processing policies based on preset update policies and path usage information to obtain path processing policies that match the path processing policies with the information of multiple hardware devices.
[0108] According to embodiments of this disclosure, the resource information processing module includes a path information determination submodule and a path information processing submodule.
[0109] The path information determination submodule is used to determine multiple storage path information in the block resource information.
[0110] The path information processing submodule is used to process the storage path information based on fault handling strategy, path update strategy and path load strategy when at least one of the multiple storage path information is detected as abnormal, and obtain the path processing result.
[0111] According to embodiments of this disclosure, the usage information further includes resource usage information, the storage resources further include file type resources, and the apparatus further includes: a first information processing module, an information prediction module, an allocation strategy determination module, and a second information processing module.
[0112] The first information processing module is used to process hardware configuration information, logical configuration information, and resource usage information within a historical time period to obtain resource usage results.
[0113] The information prediction module is used to predict resource usage information for a future time period using preset prediction rules and resource usage results, and obtain prediction results.
[0114] The allocation strategy determination module is used to determine the resource allocation strategy based on the prediction results.
[0115] The second information processing module is used to process resource information using resource allocation strategies to obtain resource allocation results.
[0116] According to embodiments of this disclosure, the information prediction module includes an extraction submodule and a prediction result output submodule.
[0117] The extraction submodule is used to extract feature sequence information and load peaks from resource usage results.
[0118] The prediction result output submodule is used to input feature sequence information and load peaks into the time series model and output the prediction results.
[0119] According to embodiments of this disclosure, the hardware configuration information further includes hardware management information and resource pool information, and the logical configuration information further includes port information and security policies; the device further includes: a mapping relationship determination module and an architecture information generation module.
[0120] The mapping relationship determination module is used to determine the mapping relationship between resource information and target devices based on hardware device information, hardware management information, resource pool information, port information, and security policies.
[0121] The architecture information generation module is used to generate resource architecture information based on mapping relationships, enabling users to process resource information accordingly based on configuration requirements.
[0122] According to embodiments of this disclosure, the apparatus further includes a resource detection module and a configuration information determination module.
[0123] The resource detection module is used to detect storage resources using detection tools to obtain information about the type of storage resources.
[0124] The configuration information determination module is used to determine configuration information and usage information based on type information.
[0125] According to embodiments of this disclosure, the apparatus further includes: a chart information generation module, used to process resource information and processing results using a graphics generation tool to generate chart information.
[0126] According to embodiments of this disclosure, any plurality of modules among the resource information acquisition module 610, path processing strategy determination module 620, and resource information processing module 630 may be combined into one module, or any one of these modules may be split into multiple modules. Alternatively, at least some of the functions of one or more of these modules may be combined with at least some of the functions of other modules and implemented in one module. According to embodiments of this disclosure, at least one of the resource information acquisition module 610, path processing strategy determination module 620, and resource information processing module 630 may be at least partially implemented as hardware circuitry, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system-on-a-chip, a system-on-a-substrate, a system-on-package, an application-specific integrated circuit (ASIC), or any other reasonable means of integrating or packaging circuitry, or implemented in software, hardware, or firmware, or in any one of the three implementation methods or a suitable combination of any of them. Alternatively, at least one of the resource information acquisition module 610, the path processing strategy determination module 620, and the resource information processing module 630 may be implemented at least partially as a computer program module, which can perform corresponding functions when the computer program module is run.
[0127] Figure 7 A block diagram schematically illustrates an electronic device suitable for implementing a resource information processing method according to an embodiment of the present disclosure.
[0128] like Figure 7As shown, an electronic device 700 according to an embodiment of the present disclosure includes a processor 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage portion 708 into a random access memory (RAM) 703. The processor 701 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 701 may also include onboard memory for caching purposes. The processor 701 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0129] RAM 703 stores various programs and data required for the operation of electronic device 700. Processor 701, ROM 702, and RAM 703 are interconnected via bus 704. Processor 701 performs various operations of the method flow according to embodiments of the present disclosure by executing programs in ROM 702 and / or RAM 703. It should be noted that the programs may also be stored in one or more memories other than ROM 702 and RAM 703. Processor 701 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in said one or more memories.
[0130] According to embodiments of this disclosure, the electronic device 700 may further include an input / output (I / O) interface 705, which is also connected to a bus 704. The electronic device 700 may also include one or more of the following components connected to the input / output (I / O) interface 705: an input section 706 including a keyboard, mouse, etc.; an output section 707 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 708 including a hard disk, etc.; and a communication section 709 including a network interface card such as a LAN card, modem, etc. The communication section 709 performs communication processing via a network such as the Internet. A drive 710 is also connected to the input / output (I / O) interface 705 as needed. A removable medium 711, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 710 as needed so that computer programs read from it can be installed into the storage section 708 as needed.
[0131] This disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs that, when executed, implement the method according to the embodiments of this disclosure.
[0132] According to embodiments of this disclosure, the computer-readable storage medium can be a non-volatile computer-readable storage medium, such as including, but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, the computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to embodiments of this disclosure, the computer-readable storage medium may include ROM 702 and / or RAM 703 and / or one or more memories other than ROM 702 and RAM 703 described above.
[0133] Embodiments of this disclosure also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. When the computer program product is run on a computer system, the program code enables the computer system to implement the resource information processing method provided in the embodiments of this disclosure.
[0134] When the computer program is executed by the processor 701, it performs the functions defined in the system / apparatus of this disclosure embodiments. According to embodiments of this disclosure, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0135] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and may be downloaded and installed via the communication section 709, and / or installed from a removable medium 711. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.
[0136] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 709, and / or installed from the removable medium 711. When the computer program is executed by the processor 701, it performs the functions defined in the system of this disclosure embodiment. According to embodiments of this disclosure, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0137] According to embodiments of this disclosure, program code for executing the computer programs provided in embodiments of this disclosure can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, languages such as Java, C++, Python, "C", or similar programming languages. The program code can execute entirely on a user's computing device, partially on a user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0138] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0139] Those skilled in the art will understand that the features described in the various embodiments of this disclosure can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly described in this disclosure. In particular, the features described in the various embodiments of this disclosure can be combined and / or combined in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or combinations fall within the scope of this disclosure.
[0140] The embodiments of this disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of this disclosure. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. Various substitutions and modifications can be made by those skilled in the art without departing from the scope of this disclosure, and all such substitutions and modifications should fall within the scope of this disclosure.
Claims
1. A resource information processing method, characterized in that, The method includes: Obtain resource information of storage resources, wherein the resource information includes configuration information and usage information, the configuration information includes hardware configuration information and logical configuration information, the storage resources include multiple types of block type resources, and the usage information includes path usage information; A path processing strategy is determined based on hardware configuration information, the logical configuration information, and the path usage information, wherein the path processing strategy includes at least one of a path update strategy, a fault handling strategy, and a path load strategy; and The block resource information is processed using the path update strategy, the fault handling strategy, and the path load strategy to obtain the path processing result.
2. The method according to claim 1, characterized in that, The hardware configuration information includes hardware device information, and the logical configuration information includes path information. Both the hardware device information and the path information are multiple. The path processing strategy is determined based on the hardware configuration information of the block type resource, the logical configuration information, and the path usage information, including: Determine multiple initial path processing strategies corresponding to multiple hardware device information and multiple path information; as well as The initial path processing strategies are updated based on a preset update strategy and the path usage information to obtain the path processing strategy, which is matched with the hardware device information.
3. The method according to claim 2, characterized in that, The block resource information is processed using the path update strategy, the fault handling strategy, and the path load strategy to obtain the path processing result, including: Determine multiple storage path information in the block resource information; and If at least one of the multiple storage path information is detected as abnormal, the storage path information is processed based on the fault handling strategy, the path update strategy, and the path load strategy to obtain the path processing result.
4. The method according to claim 2, characterized in that, The usage information also includes resource usage information, the storage resources also include file type resources, and the method further includes: The hardware configuration information, logical configuration information, and resource usage information within a historical time period are processed to obtain resource usage results; By using preset prediction rules and the resource usage results, the resource usage information for a future time period is predicted to obtain the prediction results; Based on the prediction results, a resource allocation strategy is determined; and The resource information is processed using the resource allocation strategy to obtain the resource allocation result.
5. The method according to claim 4, characterized in that, Using preset prediction rules and the resource usage results, resource usage information for a future time period is predicted to obtain prediction results, including: Extract feature sequence information and load peaks from the resource usage results; and The feature sequence information and the load peak are input into the time series model, and the prediction result is output.
6. The method according to claim 4, characterized in that, The hardware configuration information also includes hardware management information and resource pool information, and the logical configuration information also includes port information and security policies. The method further includes: Based on the hardware device information, hardware management information, resource pool information, port information, and security policies, determine the mapping relationship between the resource information and the target device; and Resource architecture information is generated based on the mapping relationship, enabling users to process the resource information accordingly based on their configuration requirements.
7. The method according to claim 1, characterized in that, The method further includes: The storage resource is tested using a detection tool to obtain its type information; and The configuration information and usage information are determined based on the type information.
8. The method according to claim 1, characterized in that, The method further includes: The resource information and the processing results are processed using a graphics generation tool to generate chart information.
9. A resource information processing device, characterized in that, The device includes: The resource information acquisition module is used to acquire resource information of storage resources, wherein the resource information includes configuration information and usage information, the configuration information includes hardware configuration information and logical configuration information, the storage resources include multiple types of block type resources, and the usage information includes path usage information; A path processing strategy determination module is used to determine a path processing strategy based on hardware configuration information, the logical configuration information, and the path usage information, wherein the path processing strategy includes at least one of a path update strategy, a fault handling strategy, and a path load strategy; and The resource information processing module is used to process the block resource information using the path update strategy, the fault handling strategy, and the path load strategy to obtain the path processing result.
10. An electronic device, comprising: One or more processors; Memory, used to store one or more computer programs. The characteristic feature is that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 8.
11. A computer-readable storage medium having a computer program or instructions stored thereon, characterized in that, When the computer program or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 8.
12. A computer program product, comprising a computer program or instructions, characterized in that, When the computer program or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Management method and system for multi-path software based on multiple storage manufacturers
CN106814977A
Method and device for determining resource scheduling path
CN112286654A