Planar file system for organizing and linking large amounts of data
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- HEWLETT PACKARD ENTERPRISE DEV LP
- Filing Date
- 2024-07-13
- Publication Date
- 2026-07-30
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
BACKGROUND As the amount of data used for diverse scenarios—where it is stored for processing, analysis, or other uses—increases by orders of magnitude over time, organizing that data can become increasingly challenging. In the context of high-performance computing (HPC) storage ecosystems, including but not limited to parallel file servers and file systems that generate large volumes of heterogeneous data, techniques for organizing large amounts of heterogeneous data files often require significant administrative overhead and may not provide robust techniques for establishing logical relationships between the data. US 2015 / 0278397A1 concerns the management of namespaces in distributed storage systems. US 2020 / 0 067 713 A1 concerns the use of a tree structure for segmenting and distributing data sets across one or more decentralized, acyclic graphs of cryptographic hash pointers. US 2023 / 0147552A1 concerns methods and systems for determining the sequence of operations in a file system with a hierarchical namespace. US 2023 / 0334093A1 concerns file systems, in particular a graph file system that includes content nodes and relationships between the nodes and is implemented in the kernel area. The present invention aims to overcome, at least partially, the disadvantages of the known prior art. This problem is solved by a device according to independent claim 1, a computer-implemented method according to independent claim 8, and a non-transitory computer-readable medium according to independent claim 14. Embodiments are the subject of the respective dependent claims. BRIEF DESCRIPTION OF THE DRAWINGS Certain embodiments discussed herein are described with reference to the drawings shown below. However, the accompanying drawings only illustrate certain aspects or implementations of the embodiments described herein by way of example and are not intended to limit the scope of the claims. Fig. 1 shows a block diagram of an example system for implementing a planar file system for organizing and linking large datasets according to one or more embodiments of this disclosure; Fig. 2 shows an overview of an example method for implementing a planar file system according to one or more embodiments disclosed herein; Fig. 3 shows an example of a planar file system 300 according to one or more embodiments of this disclosure; Fig. 4 shows an example of a planar file system 400 containing example files according to one or more embodiments of this disclosure; Fig.Figure 5A shows an example of a planar file system lookup table 500 in accordance with one or more embodiments disclosed herein; Figure 5B shows an example of a directed acyclic graph for lookup in the planar file system according to one or more embodiments disclosed herein; Figure 6 shows an example of a planar file system 600 containing orthogonal relationships between planes according to one or more embodiments of this disclosure; and Figure 7 shows a block diagram of a computer device according to one or more embodiments of this disclosure. DETAILED DESCRIPTION OF ILLUSTRATIVE EXECUTION FORMS As storage, non-persistent storage, compute, and network input / output (I / O) activities for high-performance computing applications become increasingly complex and extensive, the amount of data generated, consumed, and / or otherwise used in such scenarios increases exponentially. This data can increase both in the number of files and in the size of the files containing the data. Such data can comprise a vast number (e.g., billions, trillions, etc.) of heterogeneous files that may be linked together in a wide variety of complex ways. Examples of scenarios where such datasets can be used include: artificial intelligence, machine learning, automated vehicles, space exploration, the search for extraterrestrial life, genetic engineering, DNA modeling, computational biology, gene modeling, environmental modeling, subatomic experiments, etc. Any number of computer devices of any type can access these large datasets to perform various types of analysis and / or other operations. Data is often stored in some form of hierarchical file system (HFS). Such file systems frequently incorporate constructs and concepts like global namespaces, local namespaces, file hierarchies and structures, and so on. In other cases, data may be stored in an object-based storage system, where data is managed as individual objects, or in a block storage system, where data is managed as blocks within other data constructs (e.g., sectors, tracks, etc.). However, with such concepts, it can be difficult to process large amounts of related data simultaneously or to establish relevant relationships between the data using file system rules. To at least solve the aforementioned problems of data organization for large datasets, the embodiments disclosed herein provide techniques for grouping data into planar groups stored in layers and for defining various relationships between the data using relationships between the layers. In one or more embodiments, a level, as used here, refers to a logical storage construct for storing a group of related files. In one or more embodiments, a user can interact with a planar file system manager to define any number of levels for any number of planar file groups. In one or more embodiments, each planar file group is intended to store a contiguous set of files. In one or more embodiments, the user can also define any number of planar relationships between levels. In one or more embodiments, a level can have any number of sub-levels. In one or more embodiments, a sub-level serves to store a subset of the associated files of a planar filegroup stored in the level, or files that have a subplanar relationship, i.e., they are associated with files in the parent level, but not necessarily with files in other levels or sub-levels. In one or more embodiments, any number of sub-levels can be configured within a level. Furthermore, sub-levels can also have further sub-levels that contain a portion of the files of the sub-level, with any number of nested levels of sub-levels being possible. In one or more embodiments, the sub-levels within a level can be separate from each other. Additionally or alternatively, sub-levels within a level can be orthogonally related to each other, which can mean that there is a logical relationship between the data in the sub-levels, but that the files in one sub-level are not a subset of the files in another sub-level. Furthermore, levels (e.g., those that are not sub-levels) can also be similarly orthogonally related to each other. In one or more embodiments, a user can also specify the size of a layer, a sub-layer, etc., the maximum individual file sizes that may exist within a layer, and / or other relevant parameters relating to storage space, file size, etc., of a layer. In one or more embodiments, such configuration details are made available to a planar file system manager. In one or more embodiments, once the user has provided the configuration details for the planar file system, including the various levels, sublevels, and relationships, the planar file system manager can prepare any number of storage devices of any type to implement the planar file system as defined by the user. In one or more embodiments, the storage preparation can include creating a table containing each of the levels, sublevels, and level relationships, as well as the location in the one or more storage devices where the levels are to be placed. In one or more embodiments, the storage preparation can also include formatting any number of storage devices with the various levels using the different level sizes specified by the user. In one or more embodiments, the storage underlying the planar file system is a parallel file system. In one or more embodiments, a parallel file system is a file system in which file data is distributed across any number of homogeneous or heterogeneous storage devices and can be accessed simultaneously by any number of units (e.g., computer devices). In one or more embodiments, if the planar file system manager uses a parallel file system as the underlying storage mechanism for the planar file system, the user-defined levels can be similarly distributed across the various storage devices, thus also taking advantage of the benefits of parallel file systems.Other types of storage devices and solutions can also be used without leaving the scope of the embodiments disclosed herein. In one or more embodiments, levels, sublevels, etc., as described above, can contain data that is related to other data in some way. In one or more embodiments, the levels, sublevels, etc., can be edited as a whole or on a file-by-file basis. For example, a user can configure any number of parameters (e.g., security, access control, encryption requirements, etc.) for entire levels. Such permissions can be delegated to sublevels. Furthermore, additional parameters can be defined for sublevels. For example, a level can be configured with access rights for a specific group of users but not require encryption, while a sublevel within the level can have the same access rights (as part of the level) but require encryption. Files in layers and sublayers can be identified by a file handle (e.g., a filename) and a layer identifier (ID). A layer ID can be, for example, any alphanumeric character set that is unique to the layer. Thus, one layer might have a layer ID PL-A, another layer a layer ID PL-B, and so on. In one or more embodiments, the layer IDs represent relationships between layers and sublayers. For example, a layer PL-A might have a sublayer PL-A1, which in turn might have a sub-sublayer PL-A1A. In one or more embodiments, layer IDs can be used to perform operations on layers as a whole, and relationships between layers can be used to perform additional operations. For example, a user can specify a layer ID as the identifier of the set of files to be analyzed for any given purpose (e.g., to determine whether a particular region of the universe contains a planetary system that includes a star with certain properties), and if the analysis yields a specific result (e.g., the star has the desired properties), the analysis can continue on an orthogonal layer containing files relating to the atmospheric conditions on the planets of the planetary system, which are used to determine whether any of the planets have an atmosphere capable of supporting life. Certain embodiments of this disclosure allow a user to define any number of levels and level relationships. The levels can be used to store large amounts of related data, and the relationships between the levels can be used to define relationships between the data. The levels can be organized in a planar file system, which can be implemented on underlying storage technologies. Access to the planar file system is possible by any number of relevant entities. The planar file system can simplify the storage and grouping of large datasets. Fig. 1 shows a block diagram of an example system for implementing a planar file system for organizing and linking large data sets according to one or more embodiments of this disclosure. The system can include any number of computer devices, such as computer device A 100, computer device B 102, computer device C 104, computer device D 106, computer device E 108, and computer device N 110. The computer devices can be operationally connected to a planar file system manager 112. The planar file system manager 112 can be operationally connected to any number of storage devices (e.g., storage device A 114, storage device N 116). The storage devices (114, 116) can optionally be part of a parallel file system 118. Each of these components is described below. In one or more embodiments such as those used herein, a computer device (e.g., 100, 102, 104, 106, 108, 110) can be a single computer device, a set of computer devices, part of one or more computer devices, or any other physical, virtual, and / or logical grouping of computing resources. In one or more embodiments, a computer device is any device, part of a device, or group of devices capable of processing instructions electronically and can include, among other things: one or more processors (e.g., components containing circuits) (not shown), non-persistent memory (e.g., random access memory (RAM)) (not shown), input and output device(s) (not shown), non-volatile memory hardware (e.g.,Solid-state drives (SSDs), hard disk drives (HDDs) (not shown), one or more physical interfaces (e.g. network ports, storage ports) (not shown), any number of other hardware components (not shown) and / or any combination thereof. Examples of computing devices include a server (e.g., a blade server in a blade server enclosure, a rack server in a rack, etc.), a desktop computer, a mobile device (e.g., a laptop computer, a smartphone, a personal digital assistant, a tablet computer, a computer system in a vehicle, and / or other mobile computing device), a storage device (e.g., a hard disk drive array, a Fibre Channel storage device, an Internet Small Computer Systems Interface (iSCSI) storage device, a tape storage device, a flash memory array, a network-attached storage device, etc.), a network device (e.g., a switch, a router, a multi-layer switch, etc.), a virtual machine, a virtualized computing environment, a logical container (e.g.,for one or more applications), an Internet of Things (IoT) device, an array of nodes of computing resources, a supercomputing device, a data center or part thereof, and / or any other type of computing device meeting the aforementioned requirements. In one or more embodiments, some or all of the aforementioned examples may be combined to create a system of such devices, or they may be divided into separate logical devices that may collectively be referred to as a computing device. Other types of computing devices may also be used without this deviating from the scope of the embodiments described herein, such as the computing device shown in Fig. 7 and described below.The system can contain any number and / or any type of such computer devices in any arrangement and / or configuration without this deviating from the scope of application of the embodiments disclosed herein. In one or more embodiments, the memory (not shown) and / or non-persistent memory (not shown) of a computer device or system of computer devices can be one or more data storage locations for storing any number of data structures and / or include any amount of data (e.g., information). In one or more embodiments, a data storage location is any type of storage unit and / or device (e.g., a file system, a database, a collection of tables, RAM, and / or another storage mechanism or storage medium) for storing data. Furthermore, the data storage location can include several different storage units and / or devices. The different storage units and / or devices can be of the same type or located in the same physical location. In one or more embodiments, any memory (not shown) and / or any non-persistent memory (not shown) of a computer device or system of computer devices can be considered, in whole or in part, as a non-transitory, computer-readable medium that stores software and / or firmware. Such software and / or firmware may contain instructions which, when executed by one or more processors (not shown) and / or other hardware (e.g., circuits) of a computer device and / or a system of computer devices, cause the one or more processors and / or other hardware components to perform operations according to one or more embodiments described herein. The software instructions may be in the form of computer-readable program code to carry out procedures, processes, etc. of the embodiments described herein, and may, for example, be stored wholly or partially, temporarily or permanently on a non-transitory computer-readable medium such as a compact disc (CD), a digital versatile disc (DVD), a storage device, a floppy disk, a tape storage device, a flash memory device, a physical storage device, or any other non-transitory computer-readable medium. Although six computer devices are shown in Fig. 1, the person skilled in the art, taking advantage of this detailed description, will recognize that the system can include any number of computer devices, as indicated by the three dots between computer device E 108 and computer device N 110. All or some of the computer devices can be of the same type or of different types. In one or more embodiments, a computing device (e.g., 100, 102, 104, 106, 108, 110) can be configured to execute any number of processes (not shown). As used herein, a process is any set of operations performed by the execution of instructions by a processor of a computing device. A process may execute one or more threads, tasks, etc., generally to achieve a specific result. A process may consist wholly or partially of an application. An application may be software that performs any function. Examples of applications include, but are not limited to, high-performance computing applications, biological gene modeling applications, real-world simulations, astronomical data sampling, autonomous vehicle control, financial modeling, predictive analytics, machine learning / artificial intelligence applications, etc.A process can be part of a distributed application. In one or more embodiments, a distributed application is an application in which processes can run on separate computer devices and / or separate processors. For example, a distributed application might include processes that run on separate computer devices at different physical locations (e.g., in separate data centers). Another example is that a distributed application might run processes on separate processors, which may be part of the same computer device and / or separate computer devices. In one or more embodiments, a process is executed to produce or otherwise obtain one or more results. In some cases, the result obtained by a process might be an intermediate result.In one or more embodiments, an intermediate result is any result obtained by one process that is intended to be used by another process. For example, a process of a distributed application running on one computer can obtain an intermediate result that is made available to another process of the distributed application, running on a different computer, for further execution of the application. In one or more embodiments, one or more of the computer devices shown in Fig. 1 (e.g., 100, 102, 104, 106, 108, 110) can be configured to perform various operations, analyses, objectives, etc. In one or more embodiments, one or more of the computer devices (e.g., 100, 102, 104, 106, 108, 110) can be configured to perform such analyses, operations, etc., using or based on large amounts of data (e.g., terabytes, petabytes, exabytes, zettabytes, etc.). Such large amounts of data can be in the form of a correspondingly large number of files (e.g., tens of thousands of hundred-gigabyte or more audio / video files and / or several different types of other heterogeneous files of varying sizes). Examples of scenarios in which computer devices (e.g.,100, 102, 104, 106, 108, 110) can be configured to use such large amounts of files, including: artificial intelligence, machine learning, automated vehicles, space exploration, search for extraterrestrial life, genetic engineering, DNA modeling, computational biology, gene modeling, environmental modeling, subatomic level experiments, weather modeling, etc. In one or more embodiments, the computer devices (e.g., 100, 102, 104, 106, 108, 110) can be operationally connected to the planar file system manager 112 for storing and accessing large datasets. In one or more embodiments, the planar file system manager is a computer device of any type (see above). In one or more embodiments, the planar file system manager is configured to implement and manage one or more planar file systems. In one or more embodiments, a planar file system is a technique for organizing files by grouping data into groups of related files stored in layers and defining various relationships between the data using relationships between the layers. In one or more embodiments, a level, as used here, refers to a logical memory construct for storing a group of related files. In one or more embodiments, a user can interact with the Planar File System Manager 112 to define any number of levels for any number of planar file groups. In one or more embodiments, each level is intended to store a related group of files. In one or more embodiments, a user can interact with the Planar File System Manager 112 by using any suitable technique for interacting with a computer device, e.g., via one or more of the computer devices (e.g., 100, 102, 104, 106, 108, 110), by accessing a user interface over a network, etc. In one or more embodiments, a user can also interact with the Planar File System Manager 112 to define any number of planar relationships between levels. In one or more embodiments, the levels can be nested, be discrete sub-levels, and / or be orthogonal to other levels. In one or more embodiments, nested level relationships exist when levels have sublevels. In one or more embodiments, a level can have any number of sublevels. In one or more embodiments, a sublevel is intended to store a subset of the associated files of a planar filegroup stored in the level, exhibiting an additional degree of interweaving compared to the sublevel's parent level. In one or more embodiments, any number of sublevels can be configured within a level. Furthermore, sublevels can also have further sublevels that contain a portion of the files of the sublevel, thus creating a nested relationship between any number of levels. In one or more embodiments, the sub-levels can be separate from each other, i.e., they are connected insofar as they are sub-levels of the same parent level, but are not in a nested relationship to each other. In one or more embodiments, levels or sub-levels can be orthogonally related to each other, which may mean that the files of the levels or sub-levels are logically connected in some way, but that the files of one orthogonally connected level or sub-level are not a subset of the files of the other orthogonally connected level or sub-level. In one or more implementations, a user can define not only the number of levels for a planar file system and the relationships between the levels, but also the size of a level, a sublevel, etc., the maximum individual file sizes that may exist within a level, and / or other relevant parameters relating to storage space, file size, etc., of a level. A user can also define level locks to facilitate concurrent access, various provisions in data structures for level permissions, level security attributes, etc. In one or more embodiments, once a user has provided the configuration details for the planar file system, including the various levels, sublevels, and relationships, the Planar File System Manager 112 can prepare any number of storage devices of any type to implement the planar file system as defined by the user. In one or more embodiments, the storage preparation can include generating a data structure that contains each of the levels, sublevels, and level relationships, as well as the location on the one or more storage devices where the levels are to be placed. In one or more embodiments, the storage preparation can also include formatting any number of storage devices with the various levels using the different level sizes specified by the user. In one or more embodiments, the planar file system manager can prepare any number of data structures for performing lookup operations on files or file groups within the planar file system. In one or more embodiments, the lookup of files or file groups can be performed at least partially based on a level identifier (ID) and / or a file handle. Files in levels and sublevels can be identified by a file handle (e.g., a file name) and a level ID. A level ID can, for example, be any alphanumeric character set that is unique for the level. Thus, one level can have a level ID PL-A, another level a level ID PL-B, and so on. In one or more embodiments, the level IDs represent relationships between levels and sublevels.For example, a level PL-A can have a sub-level PL-A1, which can have a sub-sub-level PL-A1A, and PL-A can be orthogonal to a level with the level ID PL-B. In one or more embodiments, in the context of discrete levels and / or orthogonally connected levels, a level namespace defined by level identifiers can facilitate the use of the same file handles in the different levels. In one or more embodiments, data structures that can be used to look up data in a planar file system include, among others, tables (e.g., as shown in Fig. 5A), directed acyclic graphs (DAGs) (e.g., as shown in Fig. 5B), nested, thin-matrices-based level indexes, and so on. In one or more embodiments, layers, sublayers, etc., as described above, can contain related data. In one or more embodiments, the layers, sublayers, etc., can be edited as a whole (e.g., using a layer ID) or on a file-by-file basis (e.g., using a layer ID and a file handle). For example, a user can configure any number of parameters (e.g., security, access control, encryption requirements, etc.) for entire layers. Such permissions can be propagated to sublayers. Furthermore, additional parameters can be defined for sublayers. For example, a layer can be configured with access permissions for a specific group of users but not require encryption, while a sublayer within the layer can have the same access permissions (as part of the layer) but require additional encryption. In one or more embodiments, layer IDs can be used to perform operations on layers as a whole, and relationships between layers can be used to perform additional operations. For example, a user can specify a layer ID as the identifier of the set of files to be analyzed for any given purpose (e.g., to determine whether a particular region of the universe contains a planetary system that includes a star with certain characteristics), and if the analysis yields a specific result (e.g., the star has the desired properties), the analysis can continue on an orthogonal layer containing files relating to the atmospheric conditions on the planets of the planetary system, which are used to determine whether any of the planets have an atmosphere capable of supporting life. In one or more embodiments, the Planar File System Manager 112 can configure any number of planar file systems, and each of these planar file systems can be configured and / or otherwise accessible to any number of computer devices (e.g., 100, 102, 104, 106, 108, 110). For example, a planar file system that stores a particular type of data can be made accessible to any number of separate computer devices, which can use the data in different ways to perform various types of analysis, etc. In one or more embodiments, the levels and / or the files stored therein can be manipulated by the users of the computer devices by giving commands to the Planar File System Manager 112 that include the level IDs and / or the file handles of the files in the planar file system. In one or more embodiments, the planar file system manager 112 configures a planar file system, at least partially based on configuration data received from one or more users, using any number of storage devices (e.g., storage device A 114, storage device N 116) of any type, using any kind of storage techniques, paradigms, etc. Although Fig. 1 shows two storage devices (114, 116), the person skilled in the art, benefiting from this detailed description, will recognize that the system can include any number of storage devices, as indicated by the three dots between storage device A 114 and storage device N 116. All or some of the storage devices can be of the same type or of different types. In one or more embodiments, the underlying storage for the planar file system is optionally a parallel file system 118, as indicated by the dashed line of the parallel file system 118 in Fig. 1. In one or more embodiments, the parallel file system 118 is a file system in which file data is distributed across any number of homogeneous or heterogeneous storage devices and can be accessed simultaneously by any number of units (e.g., computer devices). In one or more embodiments, the user-defined levels can be similarly distributed across the various storage devices while simultaneously taking advantage of parallel file systems when the planar file system manager 112 uses the parallel file system 118 as the underlying storage mechanism for the planar file system.The planar file system manager 112 can include a manager for the parallel file system (not shown) and / or be operationally connected to it and work in conjunction with the file manager for the parallel system to implement a planar file system on the parallel file system. All other types of storage solutions (e.g., network file systems, distributed file systems, etc.) can be used without leaving the scope of the embodiments disclosed herein. A planar file system can be implemented as a logical construct, independent of the underlying storage technologies used to store the files of the planar file system. Additionally or alternatively, a planar file system can be implemented as part of a technique for formatting storage devices (e.g.,Flash storage devices are used, with the organization of the formatting based at least partially on user-defined layers and layer relationships, which can be referred to as relationship-configurable layer formatting. In one or more embodiments, the relationships of a layer format can be made reconfigurable at any time to change the relationships of the data records in the context of such formats, which may occur, for example, when the amount of stored data is on the petabyte scale or similar, and / or when an HPC application and / or a large dataset is being stored. Although Fig. 1 shows a specific configuration of components, other configurations can also be used without departing from the scope of the embodiments described herein. Although certain components in Fig. 1 are shown as part of one and the same device, each of the components can be grouped into sets of one or more components that can exist and operate as part of any number of separate and operationally connected devices. As another example, a single component can be configured to perform all or some of the functions performed by all or some of the components shown in Fig. 1. Accordingly, the embodiments disclosed herein are not limited to the configuration of the components shown in Fig. 1. Fig. 2 shows an overview of an example method for implementing a planar file system according to one or more embodiments disclosed herein. The method can be performed, at least partially, by a planar file system manager (e.g., the planar file system manager 112 shown in Fig. 1). While the various steps in the flowchart shown in Fig. 2 are presented and described sequentially, some or all of the steps may be performed in a different order, some or all of the steps may be combined or omitted, and some or all of the steps may be performed in parallel with other steps of Fig. 2. In step 200, the procedure involves receiving a planar file system configuration request that includes multiple levels and multiple level relationships. For example, the planar file system configuration request can be received by a planar file system manager (e.g., the planar file system manager 112 from Fig. 1). In one or more embodiments, the planar file system configuration request is received by a user who wants to configure a planar file system to store large amounts of files. For example, an administrator working on a high-performance computing application might attempt to configure a planar file system to store data that the high-performance computing application will analyze. A configuration request for a planar file system can contain a requirement for any number of levels (e.g., ten, one hundred, etc.). In one or more embodiments, the planar file system configuration request includes a definition of the relationships between the levels to be configured. For example, the planar file system configuration request can specify that some levels should be in any number of nested level relationships with each other, that the levels should have any number of sublevels, that some levels should be orthogonal to each other, and so on. The planar file system configuration request can specify any other relevant information for configuring a storage file system without exceeding the scope of the embodiments disclosed herein.Examples of other relevant information include the size of the levels and sub-levels, the maximum and / or minimum file size allowed in the levels, security parameters for the levels, access permissions for the levels, encryption requirements for the levels, data retention policies for the levels, etc. The configuration request for the planar file system can be received via any technique that allows a user to interact with a file manager for a planar system. For example, a user can access a user interface of the planar file manager over a network connection. In step 202, the procedure includes preparing a storage environment to accommodate a planar file system based on the planar file system configuration requirement. In one or more embodiments, a planar file system manager (e.g., the planar file system manager 112 of Fig. 1) can prepare a storage environment to contain a planar file system. In one or more embodiments, preparing the storage environment includes formatting any number of storage devices to be configured for storing the layers (which can be referred to as layer formatting or formatting), and finally, all files to be stored in the layers.In one or more embodiments, preparing the storage environment includes instantiating any number of data structures to represent the organization of the planar file system and / or to perform lookups of files, levels, sublevels, etc., contained in the planar file system. In one or more embodiments, preparing the storage environment includes using an underlying storage technology on which the planar file system is to be deployed, or otherwise interacting with it. For example, the planar file system can be implemented using parallel file system technology, and the planar file system manager can interact with a parallel file system management unit to implement the planar file system on an underlying parallel file system, for example, by distributing the layers across any number of homogeneous and / or heterogeneous storage devices. Likewise, layer deduplication, layer redundancy, layer-indexed metadata management with respect to storage backup, recovery operations, logical volumes, etc., can be performed in the context of the layers and sub-layers of a planar file system. Thus, the layers, as implemented in a parallel file system, can be accessible to any number of computing devices that may need to access the data repeatedly to perform various operations and analyses (e.g., climate modeling).(for meteorological studies), models at the atomic / subatomic level, AI-supported models in finance, cybersecurity, scientific calculations, etc.). Another example: A planar file system can be implemented using physical volumes, logical volumes, and volume groups. In one or more embodiments, a volume group is a collection of one or more physical devices, each device being referred to as a physical volume. In one or more embodiments, a logical volume is a virtual block device that can be used by a system or by applications. In one or more embodiments, logical planar / subplanar volumes can be created by installing a single planar file system on each logical volume in a volume group. For example, logical volumes can be created from physical disk volumes (e.g., hdisk1, 2, 3). File systems (e.g., jfs, ext3, jfs2) could be installed on such logical volumes. Alternatively, for example, in a set of three logical volumes (e.g.,1, 2, and 3) a planar file system is installed, and a record-oriented relationship (e.g., orthogonal or logical superset:subset) can be established between the logical volumes. In one or more embodiments, logical planar volume groups can be created if a planar file system-based layer formatting is used in the logical volume groups. In one or more embodiments, the logical volume manager maintains the layer IDs that correspond to the logical volumes and their respective relationships. In one or more embodiments, if such logical volumes have other file systems such as JFS, ext3, etc., a relationship between the different logical volumes (and the data contained in the different logical volumes) cannot be established using file system techniques. In one or more embodiments, preparing the storage environment may involve performing a planar mount. In one or more embodiments, the planar mount involves mounting an entire planar file system or a portion thereof (e.g., only a subset of the levels, sublevels, etc., of the planar file system). Generally, with non-planar file systems, when a storage device containing a file system is installed (e.g., a USB flash drive with a New Technology File System (NTFS)), the entire file system is mounted at a single mount point in an operating system. For example, in a Linux operating system, such a file system can be mounted using the mount command "mount / dev / sda1 / mnt / media1", which mounts the file system on the USB drive to the directory / mnt / media1.By accessing / mnt / media1, a user can access all directories and files in the USB drive's file system. If a storage device (e.g., a USB flash drive) is instead formatted to contain a planar file system, possibly with multiple level formats, differential level mounting can be performed in one or more implementations by the provisions of the planar file system. Differential level mounting can be used when only a portion of the file system needs to be mounted. For example, a command to mount only part of a planar file system might look like this: mount / sda2 / mnt / media1 {<optionale Ebenen-IDs>}. If, in such an example, the storage device specified by / dev / sda2 contains a planar file system, a user has the option to mount the entire planar file system or only a subset of the levels it contains.In one or more embodiments, different levels of a planar system can be treated differently for mounting purposes. For example, level security can be enforced so that some levels can only be mounted using a password or multi-factor authentication, while other levels can be designated as default levels that can be mounted without any security measures. In step 204, the procedure includes receiving a level operation request to perform an operation at a specific level of the planar file system. In one or more embodiments, the level operation request includes a level ID. In one or more embodiments, the level operation request is received by a planar file system manager (e.g., the planar file system manager 112 of Fig. 1). A level operation request can be a request to perform one or more operations of any type at one or more levels or sublevels of a planar file system. Examples include, but are not limited to: accessing one or more files stored at a level or sublevel (e.g., to perform an analysis of the data in the files); adding, modifying, deleting, etc., attributes, properties, configuration parameters, etc., of a level (e.g.,Access permissions, security parameters, retention policies, encryption policies, backup policies, etc.); adding, deleting, or modifying layers; adding, deleting, or modifying layer relationships, etc. In step 206, the procedure involves performing the requested operation on one or more specified levels of the planar file system based on the level operation request. For example, a planar file system manager (e.g., the planar file system manager 112 from Fig. 1) can perform the operation. For instance, the level operation request might be a request to access all files (e.g., millions of files) in a level to use them as input for a machine learning algorithm configured to produce one or more output results.Such a query can be simplified by the embodiments disclosed herein by requiring the query to specify only the layer ID for the layer, rather than information about the specific files within it. This allows the planar file system manager to use the layer ID to perform a lookup to retrieve the layer's files. In one or more embodiments, the operation can be a storage operation. Storage operations can include, but are not limited to, backup operations, replication operations, deduplication operations, and / or disaster recovery operations (e.g., failover, failback, restore, etc.) that can be performed on datasets with planar or subplanar granularity (e.g., for layers and / or sublayers). Fig. 3 shows an example of a planar file system 300 according to one or more embodiments of this disclosure. The example shown in Fig. 3 and explained below is a simplified example that serves only for explanatory purposes and is not intended to limit the scope of the embodiments described herein. Although the example illustrates certain aspects of the embodiments described herein, this particular example does not necessarily represent all possible aspects of such embodiments. Fig. 3 shows an example of a planar file system 300. The view of the planar file system 300 shown in Fig. 3 can be a logical view representing the relationships between the levels of the planar file system 300, such as when the levels are actually distributed across any number of storage devices of a parallel file system. Additionally or alternatively, the view of the planar file system 300 shown in Fig. 3 can represent a physical view of the layout of the levels contained therein, as formatted on one or more storage devices. The exemplary planar file system 300 comprises two levels at the highest level, PL-A and PL-B, which represent the level IDs for the two levels. The other levels and sub-levels described in this example have level IDs that follow a similar naming convention as defined by a user who also established the relationships between the levels (see below). The structure of the planar file system shown in Fig. 3 may have been configured and implemented for the user by a planar file system manager (e.g., the planar file system manager 112 from Fig. 1). PL-A contains a nested sub-level PL-A1, which contains two nested sub-levels, PL-A11A and PL-A11B. Level PL-A11A contains yet another nested sub-level, PL-A11A1. Thus, the files in PL-A11A1 can have a subplanar relationship with the files in PL-A11A, which in turn can have a subplanar relationship with the files in PL-A11, which in turn can have a subplanar relationship with the files in PL-A11, which in turn can have a subplanar relationship with the files in PL-A1. The files in PL-A11B can have a subplanar relationship with the files in PL-A11, but are otherwise separate from the files in PL-A11A and its nested sub-levels. The PL-A level can also contain a sub-level PL-A1A. PL-A1A is orthogonal to PL-A1, meaning that the files it contains are logically related in some way, but that the files stored in PL-A1A are not a sub-level of the files in PL-A1. The PL-A level can also contain a sub-level PL-A1A-1. PL-A1A-1 is orthogonal to PL-A1A, meaning that the files it contains are logically related in some way, but that the files stored in PL-A1A-1 are not a sub-level of the files in PL-A1A. The PL-A level can also contain a sub-level PL-A1A-1A. PL-A1A-1A is orthogonal to PL-A1A-1, meaning that the files it contains are logically related in some way, but that the files stored in PL-A1A-1A are not a sub-level of the files in PL-A1A-1. The PL-A level can also contain a sub-level PL-A1A-1A0. PL-A1A-1A0 is orthogonal to PL-A1A-1A, meaning that the files it contains are logically related in some way, but that the files stored in PL-A1A-1A0 are not a sub-level of the files in PL-A1A-1A. The PL-B layer can contain a PL-B1 sub-layer. The files of the PL-B1 sub-layer can be orthogonal to the files of the PL-A1A-1 sub-layer, as shown in Fig. 3. Fig. 4 shows an example of a planar file system 400 with example files in accordance with one or more embodiments of this disclosure. The example shown in Fig. 4 and discussed below is a simplified example provided for illustrative purposes only and is not intended to limit the scope of the embodiments described herein. Furthermore, while the example illustrates certain aspects of the embodiments described herein, it may not represent all possible aspects of such embodiments. Imagine a scenario where a user interacts with a planar file system manager to configure a planar file system implemented with an underlying parallel file system, so that the data stored in the layers is distributed across any number of underlying heterogeneous storage devices. The user intends to use the planar file system to store any number of audio / video files and other related files, which can later be accessed and analyzed for a specific purpose. Based on the user's planar file system configuration request, the planar file system manager can logically configure the parallel file system to contain the planar layout shown in Fig. 4, which comprises two levels PL-A1 and PL-B1 (e.g., the level IDs), where PL-A1 has a sub-level PL-A10, which in turn has a sub-level PL-A101. The user has specified the nested sub-level relationships between PL-A1, PL-A10, and PL-A101, as well as an orthogonal relationship between PL-A1 and PL-B1, in the planar file system configuration request. The user can then begin saving files in the planar file system 400, and the files have relationships based on the layer in which they are saved. The user can save the file Example.mp4 to layer PL-A1 by sending a layer operation request to the planar file system manager containing the layer ID:file handle combination PL-A1:Example.mp4. Similarly, the user can save the file PL-B1:ConsolidatedFeature.mov to PL-B1, the files PL-A10:Example.tiff, PL-A10:sample3.jpg, and PL-A10:collection.zip to PL-A10, and the files PL-A101:metadata1.docx, PL-A101:features.mov, and PL-A101:subset.pdf to PL-A101. Due to the layers in which they are stored, the files PL-A101:metadata1.docx, PL-A101:features.mov, and PL-A101:subset.pdf in PL-A101 are each in a subplanar relationship to PL-A10:Example.tiff, and the files PL-A10:Example.tiff, PL-A10:sample3.jpg, and PL-A10:collection.zip are in a subplanar relationship to PL-A1:Example.mp4. Furthermore, PL-A1:Example.mp4 has an orthogonal relationship to PL-B1:ConsolidatedFeature.mov, as it is stored in PL-B1. Fig. 5A shows an example table 500 for a planar file system in accordance with one or more embodiments disclosed herein. Table 500 represents the files stored in the planar file system 400 of Fig. 4, including the planar ID, file handle, file size, and level of layer relationship for each file. Thus, when a layer operation request is received by a planar file system manager, the planar file system manager can access individual files (e.g., if the layer operation request includes the layer ID and file handle), groups of files in a layer (e.g., if the layer operation request includes a layer ID), or files that have some kind of relationship, as shown in Table 500 (e.g., the orthogonal relationship between PL-A1 and PL-B1). Fig. 5B shows an example of a planar file system lookup DAG 550. The DAG 550 can be organized on the basis of layer IDs as shown and can be used to perform searches in planar file systems, similar to the searches described above in the description of Fig. 5A. Fig. 6 shows an example of a planar file system 600 containing orthogonal relationships between planes, according to one or more embodiments of this disclosure. The example shown in Fig. 6 and explained below is a simplified example provided for illustrative purposes only and is not intended to limit the scope of the embodiments described herein. Furthermore, while the example illustrates certain aspects of the embodiments described herein, it may not depict all possible aspects of such embodiments. Imagine a scenario in which a research organization is investigating the possibility of life on other planets. Any number of probes have been sent in any number of directions and are periodically sending back files containing various sensor readings collected over time. Since the probes travel for years, decades, and so on, an immense number of files can be generated. To organize these files for analysis, a user at the research institution interacted with a planar file system manager to implement a planar file system. The user specified that the planar file system should have five levels: PL-A, PL-B, PL-C, PL-D, and PL-E. The levels should be orthogonal to each other in that order, and each level should be able to store any number of files.The research organization has a high-performance computing (HPC) solution that will access the planar file system to perform a range of analyses as part of the search for life. The first level, PL-A, contains high-level data on the possibility of life forms in various galaxies. The second level, PL-B, contains files on atmospheric conditions on planets in galaxies. The third level, PL-C, contains files on temperature conditions on planets. The fourth level, PL-D, contains files relating to water conditions on planets. The fifth level, PL-E, contains files with information on the surface features of planets. The orthogonal relationships between the five planes, represented by arrows in Fig. 6, are configured by the user to control the analysis flow through the research institution's HPC solution. Accordingly, the analysis is first performed on files in PL-A to determine whether one or more probes transmitting data are located in a region of the universe where life might be possible. If the analysis yields a "yes," the analysis can continue with the orthogonally related PL-B to analyze the atmospheric conditions of planets in that region to determine if they are conducive to life (e.g., does a planet's atmosphere contain ozone?). If this analysis also yields a "yes," the analysis can continue with the orthogonally related PL-C to investigate whether the temperature conditions on the planets are conducive to life.If this analysis yields a "yes," the analysis can continue with the orthogonally related PL-D to analyze whether water is present on the planets in sufficient quantity to support life forms. If this analysis also yields a "yes," the analysis can continue with the orthogonally related PL-E to analyze whether the surface features of the planets (e.g., the number of volcanoes, seismic activity, etc.) fall within a range that favors the existence of life forms. Thus, the search for life on distant planets, which requires the analysis of a large number of related files, is improved by allowing the analysis to be performed with a planar file system of orthogonally related layers, each containing related data. Although in Fig.Not shown in section 6, if we take PL-B as an example, there can be multiple sub-levels that are discrete subsets or orthogonal to each other and that can contain conclusions / analyses relating to the problems mentioned above, stored as files. Such an example (e.g., for the additional multiple sub-levels that are discrete subsets or orthogonal to each other) can apply within each level (e.g., PL-A, PL-B, PL-C, PL-D, PL-E). Fig. 7 shows a block diagram of a computer device according to one or more embodiments of this disclosure. As described above, the embodiments described herein can be implemented using computer devices. For example, all or some of the components shown in Fig. 1 can be implemented, at least partially, using one or more computer devices. The computer device 700 can include one or more computer processors 702, non-persistent memory 704 (e.g., volatile memory such as RAM, cache memory, etc.), persistent memory 706 (e.g., a hard disk, an optical drive such as a CD drive or a DVD drive, flash memory, etc.), a communication interface 712 (e.g., a Bluetooth interface, an infrared interface, a network interface, an optical interface, etc.).), input devices 710, output devices 708, and numerous other elements (not shown) and functions. Each of these components is described below. In one or more embodiments, the computer processor(s) 702 can be an integrated circuit for processing instructions. The computer processor(s) can be, for example, one or more cores or microcores of a processor. The processor 702 can be a general-purpose processor configured to execute program code contained in the software running on the computer device 700. The processor 702 can be a specialized processor in which specific instructions are integrated into the processor design. Although only one processor 702 is shown in Fig. 7, the computer device 700 can contain any number of processors without departing from the scope of the embodiments disclosed herein. The computer device 700 may also include one or more input devices 710, such as a touchscreen, a keyboard, a mouse, a microphone, a touchpad, an electronic pen, a motion sensor, or another type of input device. The input devices 710 enable a user to interact with the computer device 700. In one or more embodiments, the computer device 700 may include one or more output devices 708, such as a screen (e.g., a liquid crystal display (LCD), a plasma display, a touchscreen, a cathode ray tube (CRT) monitor, a projector, or another display device), a printer, external storage, or another output device. One or more of the output devices may be identical to or different from the input device(s).The input / output device(s) can be connected locally or remotely to the computer processor(s) 702, the non-persistent memory 704, and the persistent memory 706. There are many different types of computer devices, and the input / output device(s) mentioned above can take other forms. In some cases, multimodal systems can allow a user to provide several types of input / output to communicate with the computer device 700. In addition, the communication interface 712 can facilitate the connection of the computer device 700 to a (not shown) network (e.g., a local area network (LAN), a wide area network (WAN) such as the Internet, a mobile network, or any other type of network) and / or to another device, such as another computer device.The 712 communication interface can perform or facilitate the reception and / or transmission of wired or wireless communications using wired and / or wireless transmit / receive devices, including those providing an audio jack / plug, a microphone jack / plug, a Universal Serial Bus (USB) connector / plug, an Apple® Lightning® connector / plug, an Ethernet connector / plug, a fiber optic connector / plug, a proprietary wired connector / plug, Bluetooth® wireless signal transmission, BLE wireless signal transmission, IBEACON® wireless signal transmission, RFID wireless signal transmission, Near Field Communication (NFC) wireless, Dedicated Short Range Communication (DSRC) wireless signal transmission, an 802.11-WiFi radio signal transmission, WLAN signal transmission, Visible Light Communication (VLC), Worldwide Interoperability for Microwave Access (WiMAX), IR communication radio signal transmission, PSTN signal transmission (Public Switched Telephone Network), ISDN signal transmission (Integrated Services Digital Network), 3G / 4G / 5G / LTE radio signal transmission for cellular data networks, ad-hoc network signal transmission, radio wave signal transmission, microwave signal transmission, infrared signal transmission, visible light signal transmission, ultraviolet light signal transmission, radio signal transmission along the electromagnetic spectrum or a combination thereof.The 712 communication interface can also include one or more GNSS (Global Navigation Satellite System) receivers or transceivers, which are used to determine the location of the 700 computer device based on the reception of one or more signals from one or more satellites connected to one or more GNSS systems. GNSS systems include, among others, the US GPS, the Russian Global Navigation Satellite System (GLONASS), the Chinese BeiDou Navigation Satellite System (BDS), and the European Galileo GNSS. There is no restriction on operation on a particular hardware configuration, and therefore the basic functions described here can easily be replaced by improved hardware or firmware configurations as they are developed. The term "computer-readable medium" includes, but is not limited to, portable or non-portable storage devices, optical storage devices, and various other media capable of storing, containing, or transmitting instructions and / or data. A computer-readable medium can be a non-transient medium capable of storing data and which does not contain carrier waves and / or transient electronic signals that propagate wirelessly or via wired connections. Examples of non-transient media include, but are not limited to, magnetic disks or tapes, optical storage media such as CDs or DVDs, flash memory, non-persistent storage, or non-persistent storage devices.A computer-readable medium can store code and / or machine-executable instructions that may represent a procedure, function, subroutine, program, routine, module, software package, class, or any combination of instructions, data structures, or program statements. A code segment can be coupled to another code segment or hardware circuit by passing and / or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc., can be passed, forwarded, or transmitted in any manner, such as by sharing non-persistent memory, passing messages, passing tokens, transmitting over a network, or similar means. All or any part of the components of Computer Device 700 may be implemented in circuits. For example, the components may include electronic circuits or other electronic hardware and / or be implemented using electronic circuits, which may include one or more programmable electronic circuits (e.g., microprocessors, GPUs, DSPs, CPUs, and / or other suitable electronic circuits), and / or be implemented using computer software, firmware, or any combination thereof to perform the various operations described herein. In some aspects, the computer-readable storage devices, media, and memory may include a wired or wireless signal containing a bitstream and the like.However, non-transient computer-readable storage media explicitly exclude media such as energy, carrier signals, electromagnetic waves, and signals as such. The above description includes numerous details as examples of embodiments described herein. Those skilled in the art (who also benefit from this disclosure) will understand that one or more of the embodiments described herein can also be implemented without these specific details and that numerous variations or modifications are possible without departing from the scope of the embodiments described herein. Certain details known to those skilled in the art may be omitted to avoid distorting the description. The above description includes specific details to facilitate a comprehensive understanding of the aspects and examples presented here. However, it will be clear to a person skilled in the art that the aspects can also be implemented without these specific details. For clarity, the technology presented here may, in some cases, be represented as functional blocks that may include devices, device components, steps or routines in a process embodied in software, or combinations of hardware and software. Components other than those shown in the figures and / or described here may also be used. For example, circuits, systems, networks, processes, and other components may be represented as components in the form of block diagrams to avoid unnecessary complexity.In other cases, known circuits, processes, algorithms, structures and techniques can be presented without unnecessary details in order not to obscure the aspects. Individual aspects can be described above as a process or procedure, which can be represented as a flowchart, process diagram, data flow diagram, structure diagram, or block diagram. Although a flowchart can describe operations as a sequential process, many of the operations can be performed in parallel or concurrently. Furthermore, the order of operations can be rearranged. A process ends when its operations are completed, but it may include additional steps not shown in the diagram. A process can correspond to a procedure, function, subroutine, subprogram, etc. If a process corresponds to a function, its termination can be defined as the function returning to the calling function or to the main function. Processes and procedures according to the examples described above can be implemented using computer-executable instructions stored on computer-readable media or otherwise available. Such instructions may contain, for example, commands and data that cause or otherwise configure a general-purpose computer, a specialized computer, or a processing device to perform a specific function or group of functions. Parts of the computer resources used may be accessible via a network. The computer-executable instructions may be, for example, binary files, instructions in intermediate formats such as assembly language, firmware, source code, etc.Examples of computer-readable media that can be used to store instructions, information used, and / or information created during the procedures according to the examples described include magnetic or optical disks, flash memory, USB non-volatile memory devices, networked storage devices, etc. In the above description of the figures, each component described in a figure may, in various embodiments described herein, correspond to one or more identically or similarly named and / or numbered components described in another figure. For the sake of brevity, the descriptions of these components are not repeated for each figure. Therefore, each individual embodiment of the components in each figure is included by reference and is assumed to be optionally present in any other figure with one or more identically or similarly named and / or numbered components.Furthermore, in accordance with various embodiments described herein, each description of the components of a figure is to be understood as an optional embodiment that may be implemented in addition to, in conjunction with, or instead of the embodiments described in another figure with respect to one or more identically or similarly named and / or numbered components. Throughout the application, ordinal numbers (e.g., first, second, third, etc.) may be used as adjectives for an element (i.e., any noun in the application). The use of ordinal numbers is not intended to imply any particular order of the elements, nor to restrict an element to a single element, unless explicitly stated, e.g., by using the terms "before," "after," "single," and other such terms. Rather, the use of ordinal numbers serves to distinguish between the elements. For example, a first element is to be distinguished from a second element, and the first element may comprise more than one element and follow (or precede) the second element in the order of the elements. The term "operationally connected" or "operational link" as used here means that a direct or indirect connection exists between elements / components / devices, enabling them to interact with each other in some way. The term "operationally connected" can refer to any direct (e.g., wired directly between two devices or components) or indirect (e.g., wired and / or wireless connections between any number of devices or components that link the operationally connected devices) connection. Thus, any path by which information can be transmitted can be considered an operational link. Although the embodiments described herein are limited to a specific number, the person skilled in the art, familiar with the advantages of this disclosure, will recognize that other embodiments can be developed which do not deviate from the scope of those disclosed herein. Accordingly, the scope of the embodiments described herein should be limited only by the appended claims.
Claims
A device (100, 102, 104, 106, 108, 110, 700) comprising: one or more processors (702) and one or more non-transitory computer-readable media (706) on which instructions are stored which, when executed by the one or more processors, cause the one or more processors to: receive a configuration request for a planar file system comprising a plurality of levels (PL-A, PL-B, PL-C, PL-D, PL-E), a plurality of sub-levels (PL-A1, PL-B1), and a plurality of level relationships, from a user interface and on a planar file system manager (112) running on the one or more processors, wherein: the plurality of level relationships constitutes a subplanar relationship between a level and a first sub-level, a first orthogonal relationship between two separate levels of the plurality of levelsand includes a second orthogonal relationship between a second sub-level of the plurality of sub-levels and a third sub-level of the plurality of sub-levels, and the second sub-level and the third sub-level are sub-levels of different levels; Configuring a storage environment by the planar file system manager to accommodate a planar file system (300, 400, 600) based on the planar file system configuration request, wherein configuring the storage environment to accommodate the planar file system includes formatting a plurality of storage devices (114, 116) to accommodate the plurality of levels and the plurality of sub-levels; Receiving a level operation request to perform an operation on a first level of the plurality of levels of the planar file system from the user interface,wherein the level operation request includes a level identifier corresponding to the level; performing the operation at the first level based on the level operation request to obtain an initial analysis result; and performing, based on the initial analysis result, an additional level operation at a second level of the plurality of levels of the planar file system, which is related to the first level by the first orthogonal relationship, wherein the additional level operation at the second level is performed at least partially based on the first orthogonal relationship. The device according to claim 1, wherein the storage environment comprises a parallel file system (118). The device according to claim 2, wherein the plurality of levels are distributed over the plurality of storage devices of the parallel file system. The device according to claim 2, wherein the operation performed on the basis of the level operation request comprises invoking one or more level locks to facilitate simultaneous access to one or more of the multiple levels for a plurality of computer devices. The device according to claim 1, wherein the operation performed on the basis of the plane operation request is carried out at least partially using a directed acyclic graph, DAG, (550) for looking up in the planar file system. The device according to claim 1, wherein the operation performed on the basis of the level operation requirement comprises a change of an attribute of the first level, which is applied to sub-levels of the first level. The device according to claim 1, wherein the operation performed on the basis of the level operation request is a storage operation. A computer-implemented method comprising: receiving a planar file system configuration request comprising a plurality of levels (PL-A, PL-B, PL-C, PL-D, PL-E), a plurality of sub-levels (PL-A1, PL-B1), and a plurality of level relationships, from a user interface and on a planar file system manager (112) running on one or more processors (702), wherein the plurality of level relationships comprises a subplanar relationship between a level and a first sub-level, a first orthogonal relationship between two separate levels of the plurality of levels, and a second orthogonal relationship between a second sub-level of the plurality of sub-levels and a third sub-level of the plurality of sub-levels, and the second sub-level and the third sub-level are sub-levels of different levels;Configuring a storage environment by the planar file system manager to accommodate a planar file system (300, 400, 600) based on the planar file system configuration request, wherein configuring the storage environment to accommodate the planar file system includes formatting a plurality of storage devices (114, 116) to accommodate the plurality of levels and the plurality of sub-levels; receiving a level operation request to perform an operation at a first level of the plurality of levels of the planar file system from the user interface, wherein the level operation request includes a level identifier corresponding to the level; performing the operation at the first level based on the level operation request to obtain an initial analysis result;and performing, based on the initial analysis result, an additional level operation on a second level of the plurality of levels of the planar file system, which is related to the first level by the first orthogonal relationship, wherein the additional level operation on the second level is performed at least partially based on the first orthogonal relationship. The computer-implemented method according to claim 8, wherein the storage environment comprises a parallel file system (118). The computer-implemented method according to claim 9, wherein the plurality of levels are distributed over the plurality of storage devices of the parallel file system. The computer-implemented method according to claim 8, wherein the operation performed on the basis of the planar operation requirement is carried out at least partially using a lookup data structure for the planar file system. The computer-implemented method according to claim 8, wherein the operation performed on the basis of the level operation requirement comprises a change of an attribute of the level that is applied to sub-levels of the first level. The computer-implemented method according to claim 8, wherein the operation performed on the basis of the level operation requirement comprises a change to an attribute of a sub-level of the level and wherein the change is not applied to the level. A non-transitory, computer-readable medium storing a program for execution by one or more processors (702), the program comprising instructions for: receiving a configuration request for a planar file system comprising a plurality of levels (PL-A, PL-B, PL-C, PL-D, PL-E), a plurality of sub-levels (PL-A1, PL-B1), and a plurality of level relationships, from a user interface and on a planar file system manager (112) running on one or more processors, the plurality of level relationships comprising a subplanar relationship between a level and a first sub-level, a first orthogonal relationship between two separate levels of the plurality of levels, and a second orthogonal relationship between a second sub-level of the plurality of sub-levels and a third sub-level of the plurality of sub-levels.and the second sub-level and the third sub-level are sub-levels of different levels; Configuring a storage environment by the planar file system manager to accommodate a planar file system (300, 400, 600) based on the planar file system configuration request, wherein configuring the storage environment to accommodate the planar file system includes formatting a plurality of storage devices (114, 116) to accommodate the plurality of levels and the plurality of sub-levels; Receiving a level operation request to perform an operation at a first level of the plurality of levels of the planar file system from the user interface, wherein the level operation request includes a level identifier corresponding to the level; Performing the operation at the first level based on the level operation request to obtain an initial analysis result; and Performing,based on the initial analysis result, an additional level operation on a second level of the plurality of levels of the planar file system, which is related to the first level by the first orthogonal relationship, wherein the additional level operation on the second level is performed at least partially based on the first orthogonal relationship. The non-transitory computer-readable medium according to claim 14, wherein the storage environment comprises a parallel file system (118), and wherein the plurality of levels are distributed over the plurality of storage devices of the parallel file system. The non-transitory computer-readable medium according to claim 14, wherein the operation performed on the basis of the plane operation request is performed at least partially using a lookup data structure for the planar file system. The non-transitory computer-readable medium according to claim 14, wherein the operation performed on the basis of the level operation requirement comprises a change of a first-level attribute that is applied to sub-levels of the first level. The non-transitory computer-readable medium according to claim 14, wherein the operation performed on the basis of the level operation request is a change of an attribute of a sub-level of the level, and wherein the operation is not applied to the level. The non-transitory computer-readable medium according to claim 14, wherein the non-transitory computer-readable medium for configuring the storage environment comprises further instructions for formatting one or more storage devices to receive the planar file system.