Font Size: a A A

Research On The Key Techniques Of The Object-based Storage Controller

Posted on:2010-10-06Degree:DoctorType:Dissertation
Country:ChinaCandidate:S B HeFull Text:PDF
GTID:1118360302471129Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Capturing the advantages of NAS and SAN, Object-based Storage System (OBSS) has become a hot research field today in network storage area . OBSS is composed of clients, metadata server, object-based storage devices (OSDs) and interconnection network. Among the components, OSD is the cornerstone of OBSS . Since the petabyte-scale OBSS has thousands of self-contained OSDs working together to provide storage service, a little improvement of single OSD's performance will result in tremendous performance increase of the large-scale storage system. Therefore, it is of great importance to design a high-performance object storage device in OBSS.Object-based Storage Controller (OSC) is the unit controlling and managing OSD, and it is composed of hardware platform and storage management software. The core technique of the OSC mainly includes the key problems related to the controller hardware architecture, object data organization, object data prefetching and intelligent processing of object data . The existing OSC has performance drawback due to poor consideration of the characteristics of I/O applications and object accesses. Thus, it is very important to design and implement new architecture and approaches to build high-performance OSCs considering the key problems in the above four aspects.The hardware platform of the OSC is the basis on which the software runs and it plays a decisive role in the performance of the OSC. Currently most traditional OSCs are builded on general PC or server platform. As these platforms are designed for computing rather than I/O processing, there are some drawbacks whey they are used to design OSC, especially the system bus in these platforms may be the bottleneck for improving the system performance. To address this, this paper first introduce a novel OSC architecture whose central component is a switch fabric. The new architecture can greatly improve the system bandwidth and its performance can expand well. Then a detailed novle implementation of OSC which is based on the Intel IOP 315 platform is presented in this paer.The new OSC is mainly composed of the Intel 80314 chipset and two Intel 80200 processors. The significant characteristic of the the Intel 80314 is that it is designed as a fabric-centric, any-port-to-any-port bridge and it supports concurrent transactions from any interface to any other interface. As more disks can operate concurrently in this new architecture, the performance bottleneck problem due to the single system bus can be avoid in the new OSC design.OSC manages numerous objects on the hardware platform through the object-based storage device file system. Though many object-based storage device file systems use traditional local file systems to organize objects, the special-purposed object-based storage device file systems have better performance. EBOFS is a special-purposed object-based storage device file system, its high performance mainly relies on the object space allocating approach which tries to allocate continuous free space on the disk for objects. However, As EBOFS preallocates space for objects with only one fixed granularity, it can not maintain the continuity of the objects data well when it allocates space for multiple objects interleavingly. In order to overcome the shortcomings of the EBOFS, a multiple granularity object space preallocating approach is presented in this paper. The preallocating granularity in this approach is selected according to the final object size informed by the users or the current growing object size. If the final object size is known in advance, the new approach first creates an expected object size attribute for every object and users should set the attribute value when they create a new object. When the new allocator allocates free space for one object, it tries to preallocate the whole object size space for one object according to the attribute value. Otherwise, the approach separates the object size into multiple nonoverlapping regions and then preallocates spaces for objects with different granularities: the preallocating granularity for object whose current object size belongs to the smaller size region is smaller, and the preallocating granularity for object whose current object size belongs to the bigger size region is bigger. The results of the simulation show that the new object space allocating approach can decrease the number of the extents on the used disk space, reduce the average extent number of each object and increase the continuity of the used disk space.Object prefetching is an effective method to reduce the object access latency for OSC. With the increase of the speed gap between I/O and CPU, it is more important to prefetch multi-objects for the OSC. However, the existing methods focus on intra-object prefetching, this will limit the prefetching capability among objects. Considering the object access characteristics, a new inter-object prefetching approach based on the relationships among objects is presented in this paper. The approach uses a data mining technique called sequential pattern mining to obtain the sequential rules in object access sequence and construct a sequental rule table. When a requested object is not in the object cache, the new approach searches the rule table to find the objects accociated with the current object according to the current object context. Then the prefetching approach will preload the selected objects on the disk into the object cache. Experimental results show that this prefetching approach can improve the prediction accuracy and object hit rate comparing with the Group-based prefetching approach existed in file system which can also be used for object prefetching.Active storage has many benefits, it can reduce the network traffic and the executing time of the application. Howerever, the benefits of active storage can not fully be showed in current object-based storage technology. Therefore, a flexible avtive storage design for the OSC is presented. In the design the OSC provides the user customized tasks and the system tasks to process user data with the processing power of the OSC, the user customized tasks are downloaded from the clients to the OSC and the system tasks are provided by the OSC itself. Moreover, the tasks can process user data flexibly. On the one hand, one task can process one user object or multiple objects, can process the whole data or part data of an object; on the other hand, the tasks can support multiple data input and output patterns: the input data of the tasks can be from the clients or disks and the output data of the tasks can be sent to the clients or disks. At the same time, current OSD standard is expanded to support the active storage functions. Experimental results show that when the active storage functions are added into OSC, the executing time of the application can be reduced.
Keywords/Search Tags:Network Storage, Object-Based Storage, Object-Based Storage Controller, Switch Fabric, Object-Based Storage Device File System, Object Prefetching, Active Storage
PDF Full Text Request
Related items