text:
|Publication number
|Publication type
|Application number
|Publication date
|Dec 7, 2010
|Filing date
|Mar 30, 2007
|Priority date
|Mar 30, 2007
|Fee status
|Also published as
|Publication number
|Michael Kazar, Peter F. Corbett
|Original Assignee
|Netapp, Inc.
|Export Citation
|BiBTeX, EndNote, RefMan
|Patent Citations (26), Non-Patent Citations (41), Referenced by (25), Classifications (6), Legal Events (4)
|External Links: USPTO, USPTO Assignment, Espacenet
The present invention is related to the following commonly assigned U.S. patent application Ser. Nos. 11/693,057, titled File System Capable of Generating Snapshots and Providing Fast Sequential Read Access and 11/693,061, titled Maintaining Snapshot and Active File System Metadata in an On-Disk Structure of a File System, each of which was filed on Mar. 29, 2007.
The present invention relates to file systems and, more specifically, to identification of snapshot membership for blocks in an on-disk structure of a file system.
A storage system is a computer that provides storage service relating to the organization of information on writable persistent storage devices, such as memories, tapes or disks. The storage system is commonly deployed within a storage area network (SAN) or a network attached storage (NAS) environment. When used within a NAS environment, the storage system may be embodied as a file server including an operating system that implements a file system to logically organize the information as a hierarchical structure of data containers, such as directories and files on, e.g., the disks. When used within a SAN environment, the storage system may organize the information in the form of databases or files. Where the information is organized as files, the client requesting the information typically maintains file mappings and manages file semantics, while its requests (and system responses) address the information in terms of block addressing on disk using, e.g., a logical unit number.
Each "on-disk" file may be implemented as set of data structures, i.e., disk blocks, configured to store information, such as the actual data for the file. These data blocks are typically organized within a volume block number (vbn) space that is maintained by the file system. The file system may also assign each data block in the file a corresponding "file offset" or file block number (fbn) position in the file. The file system typically assigns sequences of fbns on a per-file basis, whereas vbns are assigned over a larger volume address space. That is, the file system organizes the data blocks within the vbn space as a volume; each volume may be, although is not necessarily, associated with its own file system. The file system typically consists of a contiguous range of vbns from zero to n, for a file system of size n−1 blocks.
The storage system may be further configured to operate according to a client/server model of information delivery to thereby allow many clients to access files stored on the system. In this model, the client may comprise an application, such as a database application, executing on a computer that "connects" to the storage system over a computer network, such as a point-to-point link, shared local area network, wide area network or virtual private network implemented over a public network, such as the Internet. The client typically communicates with the storage system by exchanging discrete frames or packets of data according to pre-defined protocols, such as the Transmission Control Protocol/Internet Protocol (TCP/IP). In addition, the client may request the services of the system by issuing file system protocol messages over the network to the storage system.
A file system may have the capability to generate a snapshot of its active file system. An "active file system" is a file system to which data can be both written and read, or, more generally, an active store that responds to both read and write operations. The snapshot is another form of a data container that refers to a copy of file system data that diverges from the active file system over time as the active file system is modified. Snapshots are well-known and described in U.S. patent application Ser. No. 09/932,578 entitled Instant Snapshot by Blake Lewis et al., now issued as U.S. Pat. No. 7,454,445 on Nov. 18, 2008, TR3002 File System Design for a NFS File Server Appliance by David Hitz et al., published by Network Appliance, Inc. and in U.S. Pat. No. 5,819,292 entitled Method for Maintaining Consistent States of a File System and For Creating User-Accessible Read-Only Copies of a File System, by David Hitz et al., each of which is hereby incorporated by reference as though fully set forth herein.
A known file system implementation provides snapshots through "copy out" or "copy on write" operations. When updating a block with new file system data, the file system reads the data block from a previous (old) location on disk and writes that block to a new location prior to writing the updated block in-place at the old location. The active version of the file system thus remains contiguous and maintains its same layout on disk, while the snapshot versions are copied out and moved around on disk. However, a problem with the known copy-on-write operation implementation is that it renders each write operation expensive because of the amount of work that has to be performed for each operation, e.g., read the old data block, find a new location for the old data, store the old data in the new location and store the updated data in the old location.
The present invention overcomes the disadvantages of the prior art by providing an on-disk structure of a file system that has the capability to efficiently manage and organize data containers, such as snapshots, stored on a storage system. The on-disk structure also enables the file system to generate snapshots without the need to perform an expensive copy-on-write operation for every write operation directed to file system data, i.e., the file system is configured to perform such operations reasonably efficient. The on-disk structure arranges sequential portions of files on disk within regions, wherein each region comprises a predetermined amount of disk space represented by blocks and wherein the data of the file stored within each region may or may not be stored sequentially within the region. Notably, the on-disk structure accommodates a plurality of types of regions, including (i) active regions that contain active file system data for large files, (ii) snapshot regions that contain "copy-out" snapshot data for the large files and (iii) metadata regions that contain metadata, as well as directories and small files.
According to the invention, a multi-bit, monotonically increasing, snapshot identifier ("snapid") is provided that represents a snapshot and that increases every time a snapshot is generated for a volume of the storage system. The snapid facilitates organization of snapshot metadata within, e.g., a sorted data structure used to organize metadata associated with snapshot data. In the illustrative embodiment, the sorted data structure is a balanced tree structure configured to index the copy-out snapshot data blocks. The snapid is also used to determine which blocks belong to which snapshots. To that end, every block that is used in a snapshot has an associated "valid-to" snapid field denoting the newest snapshot for which the block is valid. The oldest snapshot for which the block is valid is one greater than the valid-to field of the next older block at the same file block number (fbn). If there is no next older block at the same fbn, the block is valid for all older snapshots.
The above and further advantages of the invention may be better understood by referring to the following description in conjunction with the accompanying drawings in which like reference numerals indicate identical or functionally similar elements:
The memory 124 comprises storage locations that are addressable by the processor 122 and adapters 126, 128 for storing software programs and data structures associated with the embodiments described herein. The processor and adapters may, in turn, comprise processing elements and/or logic circuitry configured to execute the software programs and manipulate the data structures. A storage operating system 200, portions of which is typically resident in memory and executed by the processing elements, functionally organizes the storage system by, inter alia, invoking storage operations in support of software processes executing on the system. It will be apparent to those skilled in the art that other processing and memory means, including various computer readable media, may be used to store and execute program instructions pertaining to the invention described herein.
The network adapter 126 comprises the mechanical, electrical and signaling circuitry needed to connect the storage system 120 to a client 110 over a computer network 160, which may comprise a point-to-point connection or a shared medium, such as a local area network. The client 110 may be a general-purpose computer configured to execute applications 112, such as a database application. Moreover, the client 110 may interact with the storage system 120 in accordance with a client/server model of information delivery. To that end, the client may utilize file-based access protocols when accessing information (in the form of files) over a NAS-based network. In addition, the client 110 may utilize block-based access protocols, such as the Small Computer Systems Interface (SCSI) protocol, when accessing information (in the form of blocks, disks or luns) over a SAN-based network.
The storage adapter 128 cooperates with the storage operating system 200 executing on the storage system to access information requested by the client. The information may be stored on the disks 130 or other similar media adapted to store information. The storage adapter includes input/output (I/O) interface circuitry that couples to the disks over an I/O interconnect arrangement, such as a conventional high-performance, Fibre Channel (FC) serial link topology. The information is retrieved by the storage adapter and, if necessary, processed by the processor 122 (or the adapter 128) prior to being forwarded over the system bus 125 to the network adapter 126, where the information is formatted into one or more packets and returned to the client 110.
Storage of information on the storage system 120 is preferably implemented as one or more storage volumes 140 that comprise one or more disks 130 cooperating to define an overall logical arrangement of volume block number (vbn) space on the volume(s). Each volume 140 is generally, although not necessarily, associated with its own file system. The disks within a volume/file system are typically organized as one or more groups, wherein each group may be operated as a Redundant Array of Independent (or Inexpensive) Disks (RAID). The volumes may be embodied as flexible (virtual) volumes and further organized as an aggregate 150. Aggregates and virtual volumes are described in U.S. patent application Ser. No. 10/836,817 titled EXTENSION OF WRITE ANYWHERE FILE SYSTEM LAYOUT, by John K. Edwards et al. and assigned to Network Appliance, Inc., now issued as U.S. Pat. No. 7,409,494 on Aug. 5, 2008, which is hereby incorporated by reference as though fully set forth herein.
To facilitate access to the disks 130, the storage operating system 200 implements a file system that logically organizes the information as a hierarchical structure of data containers, such volumes, files and luns, on the disks 130, to thereby provide an integrated NAS and SAN approach to storage by enabling file-based (NAS) access to the volumes and files, while further enabling block-based (SAN) access to the luns on a file-based storage platform. In an illustrative embodiment described herein, the storage operating system is the FreeBSD operating system kernel available from Network Appliance, Inc., Sunnyvale, Calif. that implements a Move Anywhere Proximate Layout (MAPL™) file system. However, it is expressly contemplated that any appropriate file is system can be used, and as such, where the term "MAPL" is employed, it should be taken broadly to refer to any file system that is otherwise adaptable to the teachings of this invention.
As used herein, the term "storage operating system" generally refers to the computer-executable code operable on a computer to perform a storage function that manages data access and may, in the case of a storage system 120, implement data access semantics of a general purpose operating system. The storage operating system can also be implemented as a microkernel, an application program operating over a general-purpose operating system, such as UNIX� or Windows NT�, or as a general-purpose operating system with configurable functionality, which is configured for storage applications as described herein.
In addition, it will be understood to those skilled in the art that the invention described herein may apply to any type of special-purpose (e.g., file server, filer or storage serving appliance) or general-purpose computer, including a standalone computer or portion thereof, embodied as or including a storage system. Moreover, the teachings of this invention can be adapted to a variety of storage system architectures including, but not limited to, a network-attached storage environment, a storage area network, a disk assembly directly-attached to a client or host computer and a distributed architecture of network and disk element nodes organized as a storage system cluster. The term "storage system" should therefore be taken broadly to include such arrangements in addition to any subsystems configured to perform a storage function and associated with other equipment or systems.
Disposed between the network protocol stack 210 and RAID system 220 is a file system layer 300 that implements a file system, such as the MAPL file system. The file system 300 is illustratively a journalled file system that is targeted to large file workloads and that has the capability to generate snapshots without the need to perform an expensive copy-on-write operation for every write operation directed to file system data, i.e., the file system is configured to perform such operations reasonably efficiently. The file system 300 has an on-disk format representation that is block-based using index nodes ("inodes") to identify files and file attributes (such as creation time, access permissions, size and block location). The file system also illustratively uses data structures to store metadata describing the layout of its file system; these metadata structures include, among others, an inode table.
An on-disk structure of the file system 300 provides fast sequential read access to data containers, such as files and snapshots. Illustratively, the file system apportions the storage space of storage devices, such as disks, into a plurality of regions and arranges sequential portions of files on disk within regions. Notably, the data of the files stored within each region may or may not be stored sequentially within the region. Each region comprises a predetermined amount of disk space represented by blocks, e.g., disk blocks. A space allocation map identifies those regions that are allocated and those regions that are available (free) for allocation. The space allocation map is illustratively embodied as a bit map and is organized on a region (e.g., 1 MB or larger) granularity, e.g., the allocation map includes one bit per region. Accordingly, the file system 300 allocates entire regions of disk space, wherein the regions can be designated for different purposes/roles. Illustratively, the designated role of a region can be discerned through examination of is certain inode metadata (or alternatively via an identifier that indicates its role).
In an illustrative embodiment, snapshots are generated at the volume level (i.e., on a per volume basis). It should be noted that the term "snapshot" is used for purposes of this patent to designate a persistent consistency point image. A persistent consistency point image (PCPI) is a space conservative, point-in-time read-only image of data accessible by name that provides a consistent image of that data (such as a storage system) at some previous time. More particularly, a PCPI is a point-in-time representation of a storage element, such as an active file system, file or database, stored on a storage device (e.g., on disk) or other persistent memory and having a name or other identifier that distinguishes it from other PCPIs taken at other points in time. A PCPI may comprise an active file system image that contains complete information about the file system, including all metadata. A PCPI can also include other information (metadata) about the active file system at the particular point in time for which the image is taken.
The present invention is directed to an on-disk structure of a file system that has the capability to efficiently manage and organize snapshots stored on a storage system. According to the invention, a multi-bit (e.g., 32-bit) monotonically increasing, snapshot identifier ("snapid") is provided that represents a snapshot and that increases every time a snapshot is generated for a volume 140. The eventual wrap-around of this multi-bit is number can be handled by a technique of ensuring that all snapshots older than a prescribed value have been deleted, allowing new snapshots to be created in the same number range. The file system issues and allocates snapids sequentially per volume, thereby enabling the file system to accommodate a substantially large number of snapshots per volume. In addition, the snapid facilitates organization of snapshot metadata within, e.g., an indirect block or other data structure used to organize metadata associated with snapshot data, as described further herein. The snapid is also used to determine which blocks belong to which snapshots. To that end, every block that is used in a snapshot has an associated "valid-to" snapid field denoting the newest snapshot for which the block is valid. The oldest snapshot for which the block is valid is one greater than the valid-to field of the next older block at the same file block number (fbn). If there is no next older block at the same fbn, the block is valid for all older snapshots. Thus, for example, if fbn 110 has a block that is valid to snapshot (snapid) 10 and another that is valid-to snapid 20, then all snapshots from snapids 11 to 20 include the block that is valid-to snapid 20. Note that a block can reside in multiple snapshots; however the file system stores only one number (ID) for each block.
When generating a snapshot of a volume, the file system 300 allocates a new volume table entry 312 for that snapshot. Assume the snapid is 17 when a snapshot is generated. The volume's snapid field is incremented to 18, and a new entry for the snapshot having a snapid 18 is allocated in the volume table 310 that points to the inode table 320 for that volume; accordingly, the snapshot (and allocated volume table entry) initially shares the inode table with the active file system. Thereafter, modifications are made to the active file system data within an active region of a file in the volume, as described below. As a result, the inode table 320 of the snapshot (snapid 17) starts to diverge from that of the active file system and, as a result, the snapshot forms its own inode table. However, the snapshot data remains intact in that region until a copy-out operation is performed to a snapshot region allocated to the file. Accordingly, each volume table entry 312 directly references (points to) the inode table 320 having a plurality of entries 322, each of which contains an inode identifying a file 400.
The size of the indirect blocks is illustratively selectable (i.e., not limited to a particular size), although each block pointer represents a predetermined (e.g., 64-bit) disk address. Depending upon the size of the file 400, the indirect block trees are filled, starting at the lowest indirect block tree level. For example, the first indirect block tree 430 can illustratively accommodate a file having up to 2000 blocks, the second indirect block tree 440 can accommodate a file having up to 4 million blocks and a third indirect block tree (not shown) can accommodate a file having up to 8 billion blocks. The structures of the indirect blocks (particularly above the L1 indirect block 700) are substantially similar, i.e., they include a list of pointers to other indirect blocks (at other levels). For instance, an L2 indirect block 442 may point to one or more L1 indirect blocks 700 or, in an alternate embodiment, may point to entire region 500 (that includes an L1 indirect block 700).
In an illustrative embodiment, the file system 300 allocates an active region 600 in response to an event, such as a request to create or extend a large file 400 in which to store data associated with the file. According to the on-disk structure, a first portion 620 of the active region 600 is used to store active file system data for the file 400 (i.e., active data) and a second portion 640 is used to store snapshot data for the file. The first portion of the active region may be the contiguous first portion of the region, or may be assembled from disjoint portions of the region. Illustratively, the first portion 620 of the active region 600 comprises a substantial amount (e.g., 80%) of the disk space of the region, while the second portion 640 comprises the remaining amount (e.g., 20%) of the region 600. For example, if the active region comprises 1 MB of disk space, then the first portion 620 of the region may comprise 800 kB of disk space or, if the file block size is 4 kB, approximately 200 file blocks. Instead of mapping each 800 kB portion of the file to 800 kB of disk space, the file system 300 maps the 800 kB of the file to a larger region of disk space, e.g., a 1 MB region of disk space. Illustratively, the disk space of a region appears on one disk but that is not a requirement of the on-disk structure; that is, the disk space of a region can be apportioned and striped across multiple disks 130.
Broadly stated, if an L2 indirect block 442 points to an entire region 500, then there are no snapshots and no L1 indirect blocks for the region, i.e., this configuration obviates the need for L1 indirect blocks for the region. However, if an L2 indirect block 442 points to an L1 indirect block 700, then the indirect block 700 stores pointers to all active and snapshot blocks in the region. Illustratively, the L1 indirect block stores a pointer to the first portion 620 of the active region 600 used to store active file data and another pointer to the second portion 640 of the region used to store snapshot data. In addition, the L1 indirect block 700 stores an array of bits (e.g., a bit map), one per fbn contained in the region, indicating whether the corresponding disk block has been written since the most recent snapshot was generated, as described further herein.
Initially, the file system 300 allocates an empty, active region, e.g., active region 600 a, for the file 400 and stores (writes) active data in allocated disk blocks of the first portion 620 of that region. The file system is illustratively capable of writing any file block to any available disk block location within the active region 600. That is, the 800 kB of active file data may appear anywhere in the active region, not necessarily at the first 800 kB or last 800 kB of disk space, and not necessarily sorted in order. As the active data in the region 600 a ages, some of the data may only be stored in snapshots, as active data of the file is overwritten. New active data is written to blocks of the region that are still empty, leaving the old snapshot data in current block locations. Hence, the active data blocks of the file may gradually spread throughout the region and be interspersed with data blocks that still must be stored, but that are only stored in snapshots, i.e., in second portion 640 of the active region.
A snapshot of the file may be generated at any time; the resulting snapshot data is illustratively allocated on a per file basis within a region 600. The second portion 640 of the region may comprise the remaining 200 kB of disk space, e.g., 50 file blocks, which may also appear in any disk block location in the active region 600. However, it should be noted that the file system 300 does not maintain a fixed ratio of snapshot blocks to active blocks in an active region 600. In the illustrative embodiment, the maximum number of active blocks is limited to the number of different fbns covered by an L1 indirect block 700 associated with the region. The maximum number of snapshot blocks is limited by the size of the region −1, since at least one block in the region must be valid in the active file system. In practice, this limit is higher than necessary and, as such, the number of snapshot blocks in a region is restricted by limiting the size of a "snap cache" structure, described further herein, to some number of blocks, generally somewhat greater than the region size minus the file size mapped to the region.
The on-disk structure of the file system has the capability to maintain snapshot and file system metadata on a storage system. The snapshot and file system metadata for a region is maintained within L1 indirect blocks of the on-disk structure. Each L1 indirect block 700 describes (i.e., represents) a corresponding region 500 of the on-disk structure of the file system; in the case of an active region 600, e.g., an L1 indirect block 700 represents the active file data portion 620 of a large file. Each active region 600 also illustratively represents a contiguous space (or range) of fbns from a file perspective. For example, a first L1 indirect block represents the first 800 k bytes of the large file, a second L1 indirect block represents the next 800 k bytes of the file, etc. The L1 indirect block that references an active region also enables fbn-to-disk block number (dbn) mapping for the region. As a result, the L1 indirect block 700 is referred to as a "region indirect block" and is illustratively stored as the initial (root) block of its corresponding region 500. Storage of the region indirect block 700 within a corresponding region 500 is advantageous because most read and write operations require access (load/store) of the indirect block. However, the L1 indirect blocks can also be stored in metadata regions separately from the active regions they describe. Moreover, the L1 indirect blocks of more than one region can be stored in a single metadata region disk block. In addition, storage of the indirect block 700 with the data of the region may reduce disk head movement, thereby improving performance of the storage system.
The file system 300 allocates a second or subsequent active region, e.g., active region 600 b, for the file 400 in response to writing (for the first time) a block representing a fbn position within the fbn range covered by an L1 indirect block 700 associated with that region. That is, in response to writing data to an fbn range of a file, the file system instantiates the L1 indirect block 700 representing the corresponding active region 600 prior to instantiating the actual region. Subsequently, the file system 300 allocates data blocks to which to write to within that region. Notably, this situation can occur before any previously allocated region, e.g., active region 600 a, is fully populated.
Assume a block of the large file in the active region 600 has not been modified since a snapshot was generated, and now the file system 300 attempts to update the block with new active file data. However, assume further that the block is used in the previously generated snapshot and, thus, cannot be overwritten (i.e., must be maintained). As a result, the updated version of the block is written to a new disk block location of the same active region 600 allocated to the file 400, which new location is tracked (as part of the active file system) in the corresponding L1 indirect block 700. Illustratively, the L1 indirect block 700 keeps track of essentially all "accounting" information for the region, including whether a previous version of a block is in the snapshot and must be maintained.
One or more new active regions may be allocated to the file 400 as the file is extended. However, as the amount of snapshot data associated with the file grows, one or more snapshot regions 520 may be allocated to the file to store the snapshot data, which is "copied out" from the active region(s) 600. To that end, the file system 300 invokes a copy-out process 350 that gathers (reads) all blocks of the active region that are marked "snap", including the blocks that are about to be overwritten, and copies out (writes) the data of those blocks to the snapshot region. All blocks that have valid-to snapid values that are less than the next snapid of the file are eligible for copy-out. For maximum efficiency, the file system copies-out all of these blocks at once, which enables amortization of I/O operations required for the copy-out over the largest number of blocks. It is this amortization that reduces the impact of copy-out on file system performance. Note that all of these blocks are also recorded in the snap cache. As a result, the file may have a plurality of allocated regions, including active regions that contain active data and snapshot regions that contain snapshot data.
Referring again to
Illustratively, the copy-out process 350 of the file system 300 gathers up the snapshot data, e.g., 200 kB or 50 blocks, plus any other blocks in first active region 600 a of the file that are about to be overwritten and that are in the most recent snapshot, and copies that data as a set to the snapshot region (e.g., a first snapshot region 520 a for the file). As a result, there are at least 50 "free" blocks in the first active region 600 a that can be used for a next series of snapshots in that region. When those free blocks become populated with new active data, another 50 blocks in the region will contain only snapshot data and can be copied out. These blocks are illustratively written to the first snapshot region 520 a, starting at a disk location where the previous set of snapshot data ended. Likewise, when the second active region 600 b becomes fully populated (e.g., 800 kB or 200 blocks of active file data and 200 kB or 50 blocks of snapshot data), the snapshot blocks are gathered and copied-out as a set to the first snapshot region 520 a of the file. Once the is first snapshot region becomes fully populated with copy-out data, a second snapshot region 520 b is allocated to the file. Notably, there is some locality present among the sets of snapshot data stored in each snapshot region, since the region is populated with sets of, e.g., 50, snapshot blocks at a time. Accordingly, the copy-out data is not substantially fragmented over one or more disks 130, thereby improving sequential read operation performance for snapshots.
As noted, the L1 indirect block 700 keeps track of accounting information for its region; in the case of an active region 600, the L1 indirect block 700 keeps track of the contents of that region, including active file system data and snapshot data. When a copy-out operation is performed, the file system 300 updates metadata used to keep track of all snapshot data that has been copied out to a snapshot region 520 of a file. As described further herein, the file system 300 instantiates and maintains a sorted data structure, e.g., a B-tree structure, for each file that organizes the metadata associated with the copied-out snapshot data. Thus, according to the on-disk structure of the file system, each file 400 has an active tree structure comprising an inode and indirect blocks that reference data blocks configured to store active file data and snapshot data within an active region 600, as well as a B-tree structure that keeps track of all copied-out snapshot data for the file.
A field 720 of the LI indirect block 700 is organized as a data structure (e.g., a table) having a plurality of (e.g., 0-N) entries, each of which stores a region relative block number (RRBN 725). The entries of the RRBN table 720 essentially provide mappings between fbns and dbns within a region (e.g., the RRBN 725). RRBNs are employed because the active data of a file stored in the first portion 620 of an active region 600 is not necessarily contiguous. Note that the range of fbns for the active file data is stored in an indirect block tree (e.g., indirect block tree 800) and, as such, the position of an fbn in the indirect block tree specifies the location of the data in a file within the fbn range covered by a single active region.
The L1 indirect block 700 also has a field 730 that stores a value indicative of the last snapshot to be taken at a point in time when any block in its active region 600 was last written, i.e., a "region snapid 730". Storage of the region snapid 730 in the indirect block 700 ensures that, when a snapshot is taken, the file system 300 does not need to update the content of every indirect block. Note that file system 300 maintains an additional container snapid value, e.g., a "volume snapid" 330, adapted to keep track of the last snapshot (or "most recent snapshot") to be taken when any block in an entire container, e.g., a volume 140, was last written. Note also that the container snapid may be adapted to apply to any type and size of container, e.g., individual files, collection of files (as in a directory), collections of volumes, etc., for which a snapshot may be taken.
A field 740 of the L1 indirect block 700 is organized as a data structure that stores information pertaining to fbns that have been overwritten since the last snapshot. The data structure is illustratively embodied as a bit map 740 containing a plurality of (e.g., 800) bits representing a range of (e.g., 800) file blocks and that identifies those fbns within the range that have been overwritten since the last snapshot (identified by the region snapid 730). That is, the L1 indirect block 700 stores an array of bits, one per fbn contained in the region, indicating whether or not the corresponding disk block has been overwritten within the region. Note that the snapshot identified by the region snapid 730 may not be the last snapshot taken of the volume, but rather identifies the last snapshot taken when any block of the region 600 was changed.
Notably, when the values of the region snapid 730 and volume snapid 330 match, the bit map 740 is valid. If the volume snapid 330 is greater than the region snapid 730, then no blocks in the region 600 were modified (written) since the last snapshot of the volume was taken and the bit map 740 is invalid and, thus, ignored. Accordingly, the bits of bit map 740 are valid in the interval beginning from when the region snapid 730 matches the volume snapid 330 until the volume snapid next changes, e.g., the point at which the volume snapid 330 is updated.
In an illustrative embodiment, the bit map 740 is used to determine whether or not to keep a block that is overwritten. For example, an unasserted (e.g., zero) bit of the bit map 740 may denote that the corresponding block has not yet been overwritten, but that the block is in a snapshot and, therefore, the file system 300 should maintain that block. On the other hand, an asserted (e.g., one) bit may denote that the corresponding block has been overwritten since the last snapshot and that the file system 300 can overwrite it again because its previous "old" data is not preserved in a snapshot. Once a new snapshot is taken of the volume 140, changing the volume snapid 330 logically (and instantly) clears all bit maps 740 in all L1 indirect blocks 700 in an atomic manner, which is efficient because the file system does not have to update (individually process) any of those indirect blocks. The bit map is physically cleared the next time the region indirect block is modified, at which point the region snapid is also changed to match the volume snapid. At this time, at least one bit in the bit map is also set, corresponding to a block that has just been written.
The L1 indirect block 700 also includes a field 750 organized as a data structure that illustratively records (marks) the use of each disk block in a snapshot of an active region 600. The data structure is a "snap cache" structure 750 illustratively embodied as a table having a plurality of entries 760. The snap cache also has a field to record a value indicating a count (e.g., 0-N) of used (allocated) entries of the table. For example, every time a block is overwritten, an entry 760 is created in the snap cache 750 and the count of allocated entries is incremented. The count keeps incrementing with subsequent overwritten blocks until either the snap cache table 750 is filled or the active region 600 is filled, at which point a copy-out operation of the snapshot data is performed. If exactly filled, the copy-out operation can be further delayed until a subsequent write is performed to the region. Of course, copy-out can be performed earlier than required, but this will reduce the amount of disk I/O and positioning amortization achieved in the copy-out process.
In the illustrative embodiment, each entry 760 in the table 750 has three (3) subfields: (i) a first sub-field that holds a region relative fbn (RRFBN) 762, (ii) a second sub-field that holds a RRBN 725 and (iii) a third sub-field that holds a snapid 766. The entries 760 of the snap cache table 750 pertain to blocks that only appear in snapshots (i.e., that are no longer active), but that are still in the region 600. For example, when a block is overwritten in an active region but is still in a snapshot, an entry 760 is created in the snap cache 750 that contains (i) the RRFBN 762 of the block, (ii) the RRBN 725 of the block (obtained via the mapping table 720) and (iii) the snapid 766 up to which the block is valid (i.e., "valid-to-snapid"). The valid-to-snapid 766 is illustratively the volume snapid of the last snapshot taken. This snapid is also written into the region snapid 730 when the region indirect block 700 is updated. Storage of RRFBNs and RRBNs saves space in the region indirect block, but it will be understood to those of skill in the art that the teachings of the invention may be applied to storage of full fbns and region block number (rbns).
The snap cache table 750 can be configured as large as needed but, in the illustrative embodiment, is configured with at least 50 entries to record at least 50 snapshot blocks to thereby accommodate the 50 blocks in the second portion 640 of an active region 600 (i.e., the remaining 200 kB of disk space) that contain snapshot data. Once the snapshot data is copied out of an active region and the entire L1 indirect block 700 is rewritten, the snap cache 750 is cleared. Specifically, all of the accounting information in the snap cache 750 is transferred to the B-tree, which describes all of the copied out data.
According to the present invention, the B-tree is configured to index copied-out snapshot data blocks. Once copied-out from an active region 600 to a snapshot region 520, a block of snapshot data is referenced by the B-tree. In the on-disk structure, every file (inode) has both a regular indirect block tree (described above) and a B-tree for all its copied-out blocks. The B-tree is initially empty and is not instantiated until a first copy-out operation is performed, at which time a first B-tree node is added. In the illustrative embodiment, the inode stores the number of levels of the B-tree and a pointer to the root of the B-tree. Initially, at level 0, there is no B-tree root; the root does not get allocated until the first copy out operation for the file.
Assume that the volume snapid 330 of a volume 140 is, e.g., 17 and a first block is modified (written) in an active region 600 so that the region snapid 730 is 17, as is the valid-to-snapid 766 (=17) for the first block. A series of snapshots is then generated for the volume 140, such that the volume snapid changes from 18, 19 to 20. Thereafter, a second block in the region 600 is written such that the region snapid (last written) becomes 20 and the overwritten block is valid-to snapid of 20. However, the first block of the region is still only valid-to snapid 17. If that first block is overwritten again, there are two entries 760 for the same fbn 762 in the table 750, one that is valid-to snapid 20 and the other that is valid-to snapid 17. According to the on-disk structure of the file system, there can be multiple snapshot versions of the same block in the same region.
In the illustrative embodiment, the information depicted in the table is stored as a is B-tree data structure to organize the information more densely. According to the invention, the B-tree records a value of a snapid when a particular block changes identity. The determination of which block to use can be reconstructed for any snapshot by examining the point at which the block changed identity.
Broadly stated, the B-tree 900 is a balanced tree structure, wherein a top-level of the tree specifies that everything below it (within a specified range of fbns) is valid up to a specified snapid. A next level of the tree only deals with fbns of another specified range within another valid-to snapid range. Eventually, a bottom-level of the B-tree points to individual disk blocks (pbns) and, in particular, specifies the fbns of the pbns, as well as the valid-to snapids of those pbns. Ultimately, there is one "leaf" entry in the B-tree 900 for every block that has ever been used by the file and that has been copied out of an active region to a snapshot region.
In the illustrative embodiment, the B-tree does not consider the snapid separate from the block number. This enables indexing into the B-tree to search for a particular block (fbn) and to determine the latest snapid that has a copy of that fbn in a relatively efficient manner. If a copy-out on that fbn has never been performed, the fbn is not found on the B-tree so the file system 300 searches the active regions 600 for that block. In other words, the fbn could still be in a snapshot that is still in an active region (it just has not yet been copied-out). In addition, the fbn might be an active block that has not changed in the last few snapshots and, accordingly, is valid. Note also that the valid-to snapid of such an active block is the next snapshot that will be taken, i.e., the block is to valid-to some point in the future which has not yet been determined.
While there have been shown and described illustrative embodiments of an on-disk structure of a file system that has the capability to maintain snapshot and file system metadata on a storage system, it is to be understood that various other adaptations and modifications may be made within the spirit and scope of the present invention. For example, it will be understood to those skilled in the art that the sizes of the multi-bit identifiers (e.g., snapid), addresses (e.g., base ABN address, disk address space), and block numbers (e.g., RRBN) can vary to accommodate various sizes of identifiers, addresses/address spaces, block numbers and regions and that the examples used herein are employed solely for illustrative purposes.
The foregoing description has been directed to specific embodiments of this invention. It will be apparent, however, that other variations and modifications may be made to the described embodiments, with the attainment of some or all of their advantages. For instance, it is expressly contemplated that the components and/or structures described herein can be implemented as software, including a computer-readable medium having program instructions executing on a computer, hardware, firmware, or a combination thereof. Also, electromagnetic signals may be generated to carry computer executable instructions that implement aspects of the present invention over, e.g., a wireless data link or a data network, such as the Internet. Accordingly this description is to be taken only by way of example and not to otherwise limit the scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.
|Cited Patent
|Filing date
|Publication date
|Mar 28, 1983
|Feb 11, 1986
|Allen Bruce S
|Man machine interface
|Apr 16, 1990
|Jun 23, 1992
|Storage Technology Corporation
|Logical track write scheduling system for a parallel disk drive array data storage subsystem
|Sep 8, 1989
|Nov 10, 1992
|Auspex Systems, Inc.
|Parallel i/o network file server architecture
|Jun 26, 1992
|Apr 13, 1993
|Thinking Machines Corporation
|Storage system using multiple independently mechanically-driven storage units
|Dec 20, 1990
|Jan 11, 1994
|International Business Machines Corp.
|Version management system using pointers shared by a plurality of versions for indicating active lines of a version
|Oct 13, 1992
|Jun 25, 1996
|International Business Machines Corporation
|Replicating a database by the sequential application of hierarchically sorted log records
|May 12, 1995
|Dec 3, 1996
|Storage Technology Corporation
|Dynamically mapped data storage subsystem having multiple open destage cylinders and method of managing that subsystem
|May 31, 1995
|Oct 6, 1998
|Network Appliance, Inc.
|Method for maintaining consistent states of a file system and for creating user-accessible read-only copies of a file system
|Nov 4, 1997
|May 9, 2000
|Adaptec, Inc.
|System and method for real-time data backup using snapshot copying with selective compaction of backup data
|May 19, 1997
|Jun 27, 2000
|Emc Corporation
|Apparatus and method for backup of a disk storage system
|Dec 16, 1999
|Jan 22, 2002
|Adaptec, Inc.
|System and method for disk control with snapshot feature including read-write snapshot half
|Mar 21, 2003
|Jul 11, 2006
|Network Appliance, Inc.
|System and method for restoring a virtual disk from a snapshot
|Mar 21, 2003
|Sep 19, 2006
|Network Appliance, Inc.
|System and method for efficient space accounting in a file system with snapshots
|Jan 20, 2004
|Oct 24, 2006
|Equallogic Inc.
|Distributed snapshot process
|Apr 30, 2004
|Aug 5, 2008
|Network Appliance, Inc.
|Extension of write anywhere file system layout
|Aug 17, 2001
|Nov 18, 2008
|Network Appliance, Inc.
|Write allocation based on storage system map and snapshot
|Sep 28, 2006
|Sep 8, 2009
|Emc Corporation
|Updating snapshots
|Aug 17, 2001
|Jun 27, 2002
|Network Appliance, Inc.
|Instant snapshot
|Jul 30, 2003
|Feb 3, 2005
|International Business Machines Corporation
|Apparatus method and system for asynchronous replication of a hierarchically-indexed data store
|Sep 23, 2003
|Mar 24, 2005
|Sachin Mullick
|Multi-threaded write interface and methods for increasing the single file read and write throughput of a file server
|Dec 23, 2003
|Jun 23, 2005
|Intel Corporation
|Page-aware descriptor management
|Aug 27, 2004
|Jun 23, 2005
|Kei Kubo
|Method for acquiring snapshot
|Feb 4, 2004
|Sep 1, 2005
|Hayden John M.
|Internet protocol based disaster recovery of a server
|Jul 26, 2004
|Sep 29, 2005
|Nobuyuki Saika
|Backup method, storage system, and program for backup
|May 4, 2005
|Sep 29, 2005
|Filesx Ltd.
|Fast backup storage and fast recovery of data (FBSRD)
|Aug 18, 2006
|Mar 6, 2008
|Fachan Neal T
|Systems and methods for a snapshot of data
|Akyurek, Sedat, Placing Replicated Data to Reduce Seek Delays, Department of Computer Science, University of Maryland, UMIACS-TR-91-121, CS-TR-2746, Aug. 1991.
|Bitton, Dina, Disk Shadowing, Proceedings of the 14th VLDB Conference, LA, CA 1988.
|Chaudhuri, Surajit, et al., Self-Tuning Technology in Microsoft SQL Server, Data Engineering Journal 22, 2 1999 pp. 20-27.
|Chutani, Sailesh, et al., The Episode File System, In Proceedings of the USENIX Winter 1992.
|Corbett et al., "File System Capable of Generating Snapshots and Providing Fast Sequential Read Access", U.S. Appl. No. 11/693,057, filed Mar. 29, 2007, 34 pages.
|Corbett et al., "Maintaining Snapshot and Active File System Metadata in an On-Disk Structure of a File System", U.S. Appl. No. 11/693,061, filed Mar. 29, 2007, 37 pages.
|Coyne, Robert A., et al., Storage Systems for National Information Assets, Proc. Supercomputing 92, Minneapolis, Nov. 1992, pp. 626-633.
|Final Office Action, U.S. Appl. No. 11/693,057, Mail Date Dec. 16, 2009, 19 pages.
|Final Office Action, U.S. Appl. No. 11/693,061, Mail Date Dec. 29, 2009, 23 pages.
|Finlayson, Ross S., et al., Log Files: An Extended File Service Exploiting Write-Once Storage Department of Computer Science, Stanford University, Report No. STAN-CS-87-1177, Sep. 1987.
|Gray, Jim, et al., The Recovery Manager of the System R Database Manager, ACM Computing Surveys, (13)2:223-242 1981.
|Hecht, Matthew S., et al. Shadowed Management of Free Disk Pages with a Linked List, ACM Transactions on Database Systems, 8/4, Dec. 1983, pp. 503-514.
|Hitz, Dave et al., File System Design for an NFS File Server Appliance, Technical Report 3002, Rev. C395, presented Jan. 19, 1994.
|Howard, John H., An Overview of the Andrew File System, Carnegie Mellon University, CMU-ITC-88-062 1988.
|Howard, John, H. et al., Scale and Performance in a Distributed File System, ACM Trans. Computer System, 6(1), Feb. 1988 pp. 51-81.
|Howard, John, H. et al., Scale and Performance in a Distributed File System, Carnegie Mellon University, CMU-ITC-87-068, Aug. 1987.
|Kazar, Michael L., et al., DEcorum File System Architectural Overview, USENIX Summer Conference, Anaheim, California, 1990.
|Kazar, Michael Leon, Synchronization and Caching Issues in the Andrew File System, Carnegie Mellon University, CMU-ITC-88-063.
|Kemper, Alfons, et al., Performance Tuning for SAP R/3, Data Engineering Journal 22, 2 1999 pp. 33-40.
|Kent, Jack et al., Optimizing Shadow Recovery Algorithms, IEEE Transactions on Software Engineering, 14(2): 155-168 , Feb. 1988.
|Kistler, et al., Disconnected Operation in the Coda File System, ACM Transactions on Computer Systems, vol. 10, No. 1, Feb. 1992, pp. 3-25.
|Lorie, Raymond, A. Physical Integrity in a Large Segmented Database, ACM Trans. Database Syst., vol. 2, Mar. 1977, pp. 91-104.
|Non-Final Office Action, U.S. Appl. No. 11/693,057, Mail Date Aug. 19, 2009, 16 pages.
|Non-Final Office Action, U.S. Appl. No. 11/693,061, mail date Aug. 27, 2009, 16 pages.
|Ousterhout, John et al., Beating the I/O Bottleneck: A Case for Log-Structured File Systems, Technical Report, Computer Science Division, Electrical Engineering and Computer Sciences, University of California at Berkeley, Oct. 30, 1988.
|Patterson, D., et al., A Case for Redundant Arrays of Inexpensive Disks (RAID), SIGMOD International Conference on Management of Data, Chicago, IL, USA, Jun. 1-3, 1988, SIGMOD Record (17)3:109-16 Sep. 1988.
|Patterson, D., et al., A Case for Redundant Arrays of Inexpensive Disks (RAID), Technical Report, CSD-87-391, Computer Science Division, Electrical Engineering and Computer Sciences, University of California at Berkeley 1987.
|Peterson, Zachary Nathaniel Joseph, Data Placement for Copy-on-Write Using Virtual Contiguity, University of CA, Santa Cruz, Master's Thesis for the Department of Science in Computer Science, Sep. 2002.
|Quinlan, Sean, A Cached WORM File System, Software-Practice and Experience, 21(12):1289-1299 1991.
|Rosenblum, Mendel, et al. The Design and Implementation of a Log-Structured File System Jul. 24, 1991 pp. 1-15.
|Rosenblum, Mendel, et al., The Design and Implementation of a Log-Structured File System, In Proceedings of ACM Transactions on Computer Systems, (10)1:26-52, Feb. 1992.
|Rosenblum, Mendel, et al., The LFS Storage Manager, Computer Science Division, Electrical Engineering and Computer Sciences, Univ. of CA, presented at Summer '90 USENIX Technical Conference, Anaheim, CA Jun. 1990.
|Rosenblum, Mendel, The Design and Implementation of a Log-Structured File System, 1992 pp. 1-93.
|Schiefer, Berni, et al., DB2 Universal Database Performance Tuning, Data Engineering Journal 22, 2 1999 pp. 12-19.
|Seltzer, Margo I., et al., Journaling Versus Soft Updates: Asynchronous Meta-Data Protection in File Systems, Proceedings of 200 USENIX Annual Technical Conference, Jun. 18-23, 2000.
|Shasha, Dennis, Tuning Time Series Queries in Finance: Case Studies and Recommendations, Data Engineering Journal 22, 2 1999 pp. 41-47.
|Sidebotham, Bob, Volumes: The Andrew File System Data Structuring Primitive, EEUG Conference Proceedings, Manchester, UK, Autumn 1986.
|Subramanian, Muralidhar, et al., Performance Challenges in Object-Relational DBMSs, Data Engineering Journal 22, 2 1999 pp. 28-32.
|Weikum, Gerhard, et al., Towards Self-Tuning Memory Management for Data Servers, Data Engineering Journal 22, 2 1999 pp. 3-11.
|West, Michael, et al. The ITC Distributed File System: Prototype and Experience, Carnegie-Mellon University, Technical Report CMU-ITC-040, Mar. 1985.
|Zayas, Edward R., AFS-3 Programmer's Reference: Architectural Overview, Transarc Corporation, Pittsburgh, PA, 1.0 edition 1991.
|Citing Patent
|Filing date
|Publication date
|Sep 28, 2010
|Jun 19, 2012
|Emc Corporation
|Extended file mapping cache for fast input-output
|Jul 11, 2008
|Jul 3, 2012
|Avere Systems, Inc.
|Media aware distributed data layout
|Jul 16, 2011
|Apr 2, 2013
|Avere Systems, Inc.
|Media aware distributed data layout
|Apr 2, 2010
|Apr 16, 2013
|Symantec Corporation
|Single-copy implicit sharing among clones
|Jun 11, 2012
|Feb 18, 2014
|Avere Systems, Inc.
|Media aware distributed data layout
|Nov 25, 2011
|Sep 9, 2014
|Hitachi, Ltd.
|Storage apparatus and its control method
|Mar 1, 2012
|Oct 21, 2014
|Netapp, Inc.
|System and method for removing overlapping ranges from a flat sorted data structure
|Mar 14, 2013
|Jul 12, 2016
|Avere Systems, Inc.
|Media aware distributed data layout
|Feb 7, 2014
|Aug 2, 2016
|Avere Systems, Inc.
|Media aware distributed data layout
|Nov 5, 2015
|Mar 14, 2017
|Microsoft Technology Licensing, Llc
|File system with per-file selectable integrity
|Sep 3, 2012
|May 30, 2017
|Nec Corporation
|Storage system with fast snapshot tree search
|Dec 18, 2013
|May 30, 2017
|EMC IP Holding Company LLC
|Method and system for enhancing data transfer at a storage system
|Jun 30, 2016
|Jul 4, 2017
|Avere Systems, Inc.
|Media aware distributed data layout
|Jul 28, 2016
|Jul 18, 2017
|Avere Systems, Inc.
|Media aware distributed data layout
|Oct 20, 2014
|Aug 1, 2017
|Netapp, Inc.
|Removing overlapping ranges from a flat sorted data structure
|Jul 11, 2008
|Jan 14, 2010
|Arriad, Inc.
|Media aware distributed data layout
|Jul 16, 2011
|Nov 17, 2011
|Kazar Michael L
|Media aware distributed data layout
|Aug 7, 2012
|Feb 7, 2013
|Raytheon Company
|Anti-tamper process toolset
|Mar 14, 2013
|Apr 24, 2014
|Avere Systems, Inc.
|Media Aware Distributed Data Layout
|Feb 7, 2014
|Jun 5, 2014
|Avere Systems, Inc.
|Media Aware Distributed Data Layout
|Sep 3, 2012
|Jul 3, 2014
|Nec Corporation
|Storage system
|Nov 5, 2015
|May 19, 2016
|Microsoft Technology Licensing, Llc
|File system with per-file selectable integrity
|Jun 30, 2016
|Oct 27, 2016
|Avere Systems, Inc.
|Media Aware Distributed Data Layout
|Jul 28, 2016
|Nov 17, 2016
|Avere Systems, Inc.
|Media Aware Distributed Data Layout
|Nov 25, 2011
|May 30, 2013
|Hitachi, Ltd.
|Storage apparatus and its control method
|U.S. Classification
|707/639, 707/637, 707/638
|International Classification
|Cooperative Classification
|European Classification
|Jun 4, 2007
Owner name: NETWORK APPLIANCE, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KAZAR, MICHAEL;CORBETT, PETER F.;SIGNING DATES FROM 20070515 TO 20070529;REEL/FRAME:019375/0218
|Oct 26, 2010
Owner name: NETAPP, INC., CALIFORNIA
Free format text: CHANGE OF NAME;ASSIGNOR:NETWORK APPLIANCE, INC.;REEL/FRAME:025193/0749
Effective date: 20080310
|Jan 31, 2012
|Certificate of correction
|Jun 9, 2014
|Fee payment
Year of fee payment: 4


text:
Deal hopes lit up British American Tobacco shares on what was a weak day for the wider market.
While the FTSE 100 lost ground, the cigarette maker advanced 50½p to £33.40½ after Citigroup talked up the likelihood that BAT will buy the 58pc of Reynolds American that it does not own.
There has already been speculation of potential deals in the industry, with Reynolds thought to be examining an approach for electronic cigarette maker Lorillard. Although Citi analysts reckoned a transaction between those two companies was unlikely, a BAT bid for Reynolds is another matter.
"We think an acquisition would make sense both financially and strategically," the Citi experts told clients.
A deal at between $65 and $75 a share would lift earnings per share at the FTSE 100 company by as much as 13pc, they estimated.
Furthermore, the US company's "e-cigarette capacity is one of the best in the world, if not the best, in terms of both product and manufacturing," the analysts said. A takeover would allow BAT "total freedom to deploy Reynolds' intellectual property on e-cigs".
A standstill agreement prohibiting BAT from lifting its shareholding in Reynolds expires in July.
However, the Citi experts argued that the agreement is "only partially relevant" as a transaction "is likely to be an agreed deal, not a hostile one, and the Reynolds board has always had the option to waive the standstilll agreement".
BAT finished the day as the second-biggest riser in the FTSE 100, which itself closed 23.22 points lower at 6,689.45. There was little incentive for traders to send the broader market higher. The prospect of a conflict between Russia and Ukraine continued to drag on investor sentiment, with the latter country starting military drills.
At the same time, the heavyweight mining sector was once again under pressure following bad news from China, the world's biggest metals consumer. On Friday, the miners fell after investors cut exposure to China in the wake of the country's first corporate bond default.
Today, it was poor Chinese exports data that hit metals prices – in particular iron ore – which in turned weighed on the resources stocks. Glencore Xstrata closed down 7.85 at 317p, Antofagasta lost 18½ to 858½p, and Anglo American declined 29½p to £14.33.
Deal-making boosted other shares. Rolls-Royce, up 17p at £10.43, was the day's best-performing blue-chip on news the engine-maker would buy-out Daimler's 50pc stake in their power systems joint venture. The announcement was made after the close of trade on Friday and today's session was the first chance that Rolls investors had to respond to the acquisition.
Similarly, small-cap consumer electronics company Armour Group disclosed the disposal of its automotive business for £10.9m and climbed 0.625, or 13.2pc, to 5.375p.
Nevertheless, bid talk did not help Vodafone, which was unsettled by reports it might offer as much as €7.5bn (£6.3bn) for Spanish cable group Ono and fell 8.55 to 230.1p in the benchmark index.
Elsewhere among the FTSE 100 fallers, worries about weakness at Barclays' investment banking division dragged the lender down 6.35 to 242p. Morgan Stanley analysts estimated that fixed income, currencies and commodities trading revenues at European banks fell about 20pc year-on-year in the first quarter. As a result, Barclays' investment banking revenues are expected to have declined 12pc during the period.
Still, analysts were also responsible for some of the day's more notable risers. Associated British Foods, the sugar-to-clothing conglomerate, was lifted as high as £30.11, before closing up 7p at £29.76, by a bullish call from UBS, which reckoned its Primark fashion business could be worth as much as £19bn.
Lifting his price target to £33.00 from £28.90 and reiterating his belief that ABF is a "key call", analyst Alan Erskine told clients that the shares "should trade on a higher multiple because of the structural growth story at Primark".
The analyst raised his 20-year discounted cash-flow derived valuation for the clothing business to £19bn, from £16bn, and repeated his "buy" recommendation on the stock.
Meanwhile, the same broker boosted security services group G4S 1.1 to 245p, ahead of its full-year results on Wednesday. The shares were added to UBS's most-preferred list, in place of Electrocomponents, off 3 at 263½p.
Lower down the scale, controversial advertising group Phorm climbed 1, or 8.9pc, to 12¼ on Aim after agreeing a tie-up with China Telecom to become a strategic partner . Once a stock market darling that traded as high as £35.80 in 2007, Phorm's share price crashed in the wake of an online privacy scandal.
China New Energy was another notable mover on the junior market, advancing 12.1pc, a gain of 0.45 to 4.175p, on news it would build a second bio-refinery for Ubon Bio Ethanol in Thailand.
Finally, investors gave a warm welcome to the latest retailer to make its stock market debut. Shares in Koovs, the Indian online fashion retailer, surged 34, or 22.7pc, to 184p on its first day of dealings on Aim, a jump that mirrored the 32.6pc surge in AO World shares when the white goods group started trading in late February.
Koovs is one of a number of retailers pursuing initial public offerings. Shares in Boohoo.com, another web clothing business, are due to make their debut on Friday, while discounter Poundland and Pets at Home are in the process of listing.

subset: commoncrawl


text:
Sorry, an error was encountered while loading comparison.
Sorry, an error was encountered while loading the book.
Sorry, you don't have permission to view that book.
No matches.
Sorry, an error was encountered while loading part of the book.
An error occurred while marking the devotional as read.
An error occurred while accessing favorites
Sign in with your Logos.com account
or Create A Free Account
You have not started any reading plans.
Sign in or register for a free account to set your preferred Bible and rate books.
Add this verse to your website by copying the code below.
11 But Moses said to God, v"Who am I that I should go to Pharaoh, and that I should bring the children of Israel out of Egypt?"
Read More
Ex 4:10 Ex 6:12 1 Sa 18:18


text:
Original paper
Norwegian Offshore Stratigraphic Lexicon (NORLEX)
Gradstein, Felix M.; Anthonissen, Erik; Brunstad, Harald; Charnock, Mike; Hammer, Oyvind; Hellem, Terje; Lervik, Kjell Sigve
Newsletters on Stratigraphy Volume 44 Number 1 (2010), p. 73 - 86
published: Oct 1, 2010
ArtNo. ESP026004401005, Price: 29.00 €
The Norwegian Offshore Stratigraphic Lexicon (NORLEX) provides a relational stratigraphic database for the North Sea, Norwegian Sea, Barents Sea and Svalbard. Both regional lithostratigraphy and biostratigraphy are being substantially updated, following guidelines laid out in the International Stratigraphic Guide. The specialistic body of information with high-resolution subsurface correlations is available as oracle database, and the principal lithostratigraphic definitions as text documents. NORLEX is presented as a browsing website via the internet at http://www.nhm.uio.no/norlex.
litostratigraphy • biostratigraphy • north sea • norwegian sea • barents sea • svalbard


text:
Brassneck Trailer (1975)
22 May 1975 75 mins
Through the story of a single family, Brassneck traces a history that parallels the Labour Party's advent to power in 1945 through to the property speculation of the 1960s and the disillusionment with the Labour government in the early 1970s. Like most of the early work of the writers, David Hare and Howard Brenton, committed radical (if not revolutionary) socialists throughout the 1970s, it is a satirical attack on capitalist greed and corruption, full of savage, and often disturbing, humour.
Watch the official Brassneck 1975 trailer in HD below or find more Brassneck videos on Vidimovie.


text:
Batmobile 1950's Johnny Lightning Diecast Model Kit
Sold for:
Start Free Trial
or Sign In to see what it's worth.
- Sold Date:
- Source: eBay
Batmobile 1950's Johnny Lightning Diecast Model Kit9" long diecast Batmobile kit featuring Batman's 1950's version of the vehicle. 1:24 scale diecast vehicle, requires some assembly. Polar Lights, 2002.
International Buyers – Please Note: Import duties, taxes, and charges are not included in the item price or shipping cost. These charges are the buyer's responsibility. Please check with your country's customs office to determine what these additional costs will be prior to bidding or buying. Customs fees are normally charged by the shipping company or collected when you pick the item up. These fees are not additional shipping charges. We won't under-value merchandise or mark the item as a gift on customs forms. Doing that is against U.S. and international laws. We will ONLY ship via USPS Priority mail for proper tracking and insurance.04.07.018


text:
More complex and costly permitting for federal road projects, more analysis of traffic patterns and requirements that industry find ways to reduce releases of ozone-causing pollution probably are on the way for the New Orleans area.
However, local and state officials have been working to pinpoint just where and how to try to head off the consequences of not meeting a tougher federal ozone standard.
In late November, the U.S. Environmental Protection Agency proposed a new rule that would lower the ozone standard from 75 parts per billion to somewhere between 65 and 70 ppb. The agency is also taking comments on the possibility of lowering it to 60 ppb.
As of June, air monitoring results show that if the standard is set at 70 ppb, New Orleans would be out of compliance because air monitors at the end of 2013 showed values of 72 ppb. That means state and local officials will need to come up with plans to reduce the release of volatile organic compounds and nitrogen oxides which combine to form ozone.
Unlike in Baton Rouge, which has largely depended on industrial facilities to take steps to come into compliance with ozone standards, or Lafayette, which will likely depend on reducing vehicle emissions, New Orleans' ozone problem is a result of pollution from both sources.
The New Orleans area, for the purpose of ozone regulation, includes eight parishes: Jefferson, Orleans, St. Tammany, St. James, St. John the Baptist, St. Charles, St. Bernard and Plaquemines.
The area has formed a New Orleans Clean Air Coalition, loosely based on one in Baton Rouge, to start talking about how and where emission reductions need to be made to get ahead of the new standard that may be put in place.
New Orleans also has been participating in an EPA and state Department of Environmental Quality program called "Ozone Advance," which is meant to get areas to start working on reducing ozone-causing pollution to avoid being considered out of compliance.
"We're working with them to decide what the biggest bang for the buck would be," said Meredith Soniat, a sustainability planner with the Regional Planning Commission in New Orleans. Although the group has met only twice to talk about the basic issues the area is facing, the meetings likely will get more frequent once a computer air model is completed through DEQ.
"We're doing our best to get to 70 ppb or lower if possible," Soniat said.
At present, areas need to meet an ozone pollution standard calculated at 75 ppb or lower. This figure comes from taking the fourth-highest daily maximum eight-hour average ozone concentration for three years and then averaging those numbers. If just one monitor in the region fails to meet the standard, the entire area is considered out of compliance.
But there's still time to make improvements.
The determination on whether an area meets the standard that the EPA ultimately adopts next year will depend on air monitoring information gathered in 2014, 2015 and 2016. That means there is still time for areas to see improvements in their ozone average and possibly avoid being found out of compliance.
"It has been respected as a big deal," Soniat said. "We all realize it's going to have an impact on us as an agency and as a region. We're trying to be proactive."
Ozone is not a pollution that is released; it is formed when volatile organic compounds and nitrogen oxides from industry, vehicle traffic and other sources combine in the air on hot, sunny days. When there is little wind, this formed ozone can accumulate and lead to breathing or other health problems, especially for vulnerable people like children and the elderly.
The EPA estimates that health benefits to the public from lowering the standard, such as reducing asthma attacks, heart attacks and premature deaths, will far outweigh any costs associated with meeting the new rule. With a 70 ppb standard, there could be health benefits of anywhere from $6.4 billion to $13 billion a year by 2025, which is the expected deadline to meet the new standard for most of the country. The annual cost of reducing the pollution is estimated to be $3.9 billion.
At 65 ppb, the annual health benefits by 2025 are estimated to be between $19 billion and $38 billion, while the cost is estimated to be $15 billion, according to the EPA.
Opponents of the tougher standards, such as Gov. Bobby Jindal and newly elected U.S. Sen. Bill Cassidy, R-La., say lowering the standard during a time of economic recovery will cost jobs and economic development while bringing minimal returns.
Supporters, such as the American Lung Association and the Natural Resources Defense Council, applaud the proposed lower standard as benefiting the health of the public.
"It's critically important to people's health and economic development in the state," said Marylee Orr, executive director of the Louisiana Environmental Action Network.
Over the years, LEAN has been one of the main groups pushing for more action on meeting the federal ozone level in the five-parish area around Baton Rouge. Although industry has gotten progressively better with its ozone response, it's frustrating to see elected officials ignoring the importance of ozone standards to the detriment of the health of state residents, Orr said.
"They never seem to talk about what the real cost is," such as emergency room visits or missed school days because of asthma or other health problems, she said.
On the industrial side, Richard Metcalf, director of environmental affairs with the Louisiana Mid-Continent Oil and Gas Association, said that after dealing with the ozone issue for more than 20 years, industry in the Baton Rouge area will continue with its work.
He said his association and the Louisiana Chemical Association also have been working with industrial facilities in other areas of the state — where ozone will be a new concern — to try to educate people there on what's coming.
"We've been trying to do a lot of education of New Orleans area people because they haven't really dealt with this," Metcalf said.
The potential changes in the standards have people's attention, he said, but it really shouldn't result in a slowdown in economic growth in the Baton Rouge to New Orleans corridor.
Rules that have been in place in the Baton Rouge area could help other areas of the state, Metcalf said. These are rules that other areas of the state can live with, "because we've lived with them for 20 years," he said.
In order to help areas of the state facing ozone issues for the first time, Metcalf said, the two industry associations have put together money to use computer modeling being developed by DEQ to pinpoint just what pollution needs to be reduced to meet the ozone standard in each area.
One size won't necessarily fit all areas because each area has a different makeup of pollution sources that contribute to the problem.
The computer modeling being developed by DEQ will allow the testing of different levels of reduction of different pollutants to see what will work and how reductions could help regionally.
The focus, Metcalf said, "is how to make it happen."
It will also matter just how low the EPA decides to set the new standard: between 65 and 70 ppb, or as low as 60 ppb.
"Each area is going to have to be examined depending on how the benchmark is set," said Henry Graham, vice president of environmental affairs and general counsel with the Louisiana Chemical Association.
The EPA, DEQ and area leaders are trying to get the word out to other parts of the state to reduce emissions now.
"The Baton Rouge group is trying to help the others because we've learned a lot," Graham said. "Our main thing is if you can stay in 'attainment,' do everything you can to do that. Don't sit back and wait to see what standard comes out and then decide what to do."


text:
Israel News
Middle East
American Politics
Edition française
Green Israel
Silvan Shalom at cabinet meeting 370.
(photo credit:Marc Israel Sellem/The Jerusalem Post)
Energy and Water Minister Silvan Shalom on Thursday threatened to cut off Israel's electric supply to the Palestinian Authority if it did not pay its massive debts."They have over a billion shekels of debt and they'll need to pay them," he told the Jerusalem Post at the Israel Democracy Institute's Eli Hurvitz Conference on Economy and Society in Eilat. "We sent them a letter this week and if they don't give the right response, we will be forced to act."
By Gil Stern Stern HOFFMAN
By Gil Stern Stern HOFFMAN
Sponsored Content
By YONAH JEREMY BOB
By HERB KEINON
Please insert a valid email address


text:
Nobody likes pondering death and taxes.
But planning ahead for what will happen to your money after you die can protect your family from a bunch of complications and financial difficulties at a time when they'll be least prepared to deal with them. To ease the transition, many people use living trusts to streamline the movement of assets and resolve details well before they need to put their estate-planning strategies into action.
There remains confusion about what a living trust is. So let's look at living trusts and the role they can play in your financial planning.
The basics of a living trust
The idea is to create a living trust during your lifetime to hold your property. The key aspect of this trust, also known as a revocable trust, is that the creator maintains the right to make changes to the trust document or to eliminate it entirely. Often, the person who creates a living trust will also act as its trustee, and so for most practical purposes, very little changes in the way one manages one's financial affairs with a living trust during the trust creator's lifetime.
Living trusts are useful in two primary situations. First, if an illness or injury leaves you incapacitated and unable to handle your financial affairs, then you can provide for a successor trustee to take your place and oversee the administration of the living trust. That ensures someone will take care of financial matters, such as paying bills and covering medical costs, while you're unable to manage your affairs on your own.
The living trust also includes instructions on what you want done with the assets held in the trust upon your death. The living trust structure gives you a great amount of flexibility on how you want to distribute money or other assets to your loved ones, allowing you not just to make outright bequests to beneficiaries, but also to hold on to assets long after your death and manage them for the benefit of family members and others who might not be ready to handle the responsibility.
The pros and cons of living trusts
Another major benefit of living trusts is that they generally don't require your family members to go through a costly and extensive court proceeding known as probate. If you use a will instead of a living trust, the probate proceeding is mandatory, and your will becomes a public document anyone can view. Even though a revocable trust becomes irrevocable after your death, its provisions remain private, and your successor trustee can manage your affairs without informing a court or making private matters publicly known.
There are some downsides in using living trusts, though. Most estate-planning professionals charge more to set up a living trust than they do a will, although the savings later from not having to go through as extensive a court process can make up for the added up-front costs.
In addition, using a living trust requires that you retitle your property in the name of the trust, which adds some administrative burden in making sure your real-estate holdings, financial accounts, and other assets reflect the trust's ownership. If you neglect this task, you can usually set up your will to transfer any forgotten property to the trust, but you lose the advantage of avoiding probate to some extent.
All in all, a living trust can be an excellent way of providing for your financial affairs and leaving a legacy for generations beyond your death.
— Answer provided by Motley Fool Director of Investment Planning Dan Caplinger


text:
You have no items in your shopping cart.
items - £0.00
If your school uses this style of feedback marking then these stamps will not only save you time but will look great in your student's workbooks.
Using the Next Steps marking approach enables teachers to provide pupils with information about how they performed in relation to the learning intention / objective(s), and the next steps necessary to improve the work.
The stamps shown can be bought individually or as a money-saving, 2 stamp set. View the stamp page here - click here.


text:
Hello all-
I'm trying to set up a basic Linux Audio Workstation. I'd like to do MIDI sequencing and audio recording. I've got a bunch of external audio devices, and I'd like to use softsynths.
At the moment I'm using Fedora Core 4, with much of Planet CCRMA installed. It's very unstable. The system will often lock up when I close Rosegarden, and MIDI in/out does not work (serial port). I've had good luck with FC4 for my laptop, but I don't think it's working well as an audio workstation.
Two questions:
- Can anyone recommend a working distro for creating a LAW? For instance, realtime kernels or other distros that have proven reliability working with JACK and other audio tools? I don't need to do anything with this computer other than audio work.
- Are there any pointers to debugging MIDI through a serial port on Linux? The MIDI howto didn't really get into troubleshooting.
Many thanks for any help or suggestions!


text:
Posted August 04, 2013
I can open the DUKE3D.GRP with GRPVIEWER but I can't extract them because it says it is used in another process. And I have no idea where to get the sound files from Manhattan Project.
It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like:Chrome,Firefox,Internet Explorer orOpera


text:
Mathematics Education
Library Home || Full Table of Contents || Suggest a Link || Library Help
|Math Forum
|Links to math education Web resources compiled in the following categories: New Directions and Issues in Pedagogy: Adult Numeracy, Assessment, Block Scheduling, Calculus Reform, Collaborative Learning, College-Level Standards and Guidelines, Constructivism, Curriculum Development Projects, Grouping and Tracking - Pros & Cons, Math for Employment: "Tech Prep", Humanistic Mathematics, Interdisciplinary Mathematics, Math Education Reform, NCTM Standards, New Directions in Pedagogy in Other Courses, and The World Wide Web and Pedagogy. Also Organizations and Journals for Math Education; Research in Math Education; Teacher Education and Professional Development; Technology in Math Education; Conferences with Math Education Components; and WWW Sites of General Interest to Math Educators (JRME).
|Elementary, Middle School (6-8), High School (9-12)
|Resource Types:
|Math Ed Topics:
|Teaching Issues/Strategies, Math Ed Research/Reform
[Privacy Policy] [Terms of Use]
© 1994- The Math Forum at NCTM. All rights reserved.


text:
General Details
I am a professionally trained classical singer. My qualifications include Bachelor of Music at UWA, Certificate II in musical theatre at WAAPA and post-graduate diploma in opera at Queensland Conservatorium.
I sing and teach in all various styles from classical through to jazz. I love finding students natural voice and creating a fun environment while instilling good vocal technique.
These details were last updated on February 15, 2014


text:
I "hang out" on the metro more than I do at cafés. I feel as if it is my retreat - especially these days. Every time I descend into the station, it's as if I am in a shelter which protects me from the prevailing feeling of melancholy which persists above ground. The people waiting on the clean platforms have more relaxed expressions on their faces. But at the same time, their expressions are more vacant. It's as if they've put on a temporary mask.
Once you ascend to the surface, the mask falls. You walk along the streets of Athens, "collecting" various images – broken storefronts, glum faces, burnt buildings and nearby the scorched remains, homeless people. We are living in a vicious cycle – with our nerves on edge, with conspiracy theories, with the homeless, beggars and unemployment, rage and fear, with the constant threat of catastrophe, loads of teargas and disastrous mania.
Distortions usually begin with the corruption of words: when, in the name of "Citizens' Protection," you devastate the citizen who peacefully protests; when you destroy the city in the name of "revolution;" when trying to preserve your own self-serving interests you call it "saving the country;" when you call the country going bankrupt "resistance;" when you call your own ramblings "popular will;" when you slay the immigrant in the name of "saving the nation;" when you call bigotry "a fight in favor of our countrymen;" when you call democracy "junta." The corruption of words is naturally not just a Greek monopoly.
However, I do not know of any other society, in Europe at least, that believes that for years, its cities have been burned and destroyed according to an organized plan of the Police! But alas, this is practically a "popular belief" in Greece. I think that such "popular beliefs" only produce paranoid cities, paranoid "laws" and a paranoid police force. It is the expression of a gap – a gap which puts fear between citizens and reality on one side, and institutions on the other. Citizens have become used to interpreting reality through the eyes of conspiracy and "anti-authoritarianism." Institutions are either incapable or do not care about the protection of citizens.
Manos Hadjidakis once said that "Greece moves forward thanks to the efforts of the few and the exceptions." Usually, societies move forward due to the "active minority" which breaks away from the self-serving notions of the authority, from those who abuse authority, and from "anti-authoritarianism." Let us hope that Hadjidakis' aphorism will ring true once again. This time, for Greece's sake and for all of Europe's sake too…
P.S. Recently an angry friend wrote to me. He said that he thought the candlelight vigil which was held in front of the charred remains of the Attikon theater burned last Sunday in Athens was sappy. Personally, I much prefer sentimental civility over sentimental violence…
(Translated & edited by Gigi Papoulias)
(Translated & edited by Gigi Papoulias)


text:
Borderline Murder Trailer (2011)
A young law student, Abby Porter, suspects that her sister, a stripper, may have been murdered. She discovers an illegal network of cross border plastic surgery centers providing crude, but inexpensive cosmetic surgery to young women in the United States.
Watch the official Borderline Murder 2011 trailer in HD below or find more Borderline Murder videos on Vidimovie.


text:
Motorcycle Springshow runs this weekend in Toronto
The Springshow runs Saturday and Sunday at the International Centre.
The Springshow runs Saturday and Sunday at the International Centre.
What's new for 2017? Check out these machines this weekend at the Toronto Motorcycle Show.
Come on downtown to check out this year's new models and equipment.
Be sure to stop by the Canada Moto Rallies booth to talk about this summer's Fundy Adventure Rally.
For readers in La Belle Province, this is your first chance to take in an MMIC show this winter.
Crappy winter weather got you down? Head out to the Vancouver Motorcycle Show.
The MMIC circus descends on Edmonton this weekend.
It's time to go to a bike show! Both Toronto and Calgary have shows this weekend, and here's what you need to know.
This weekend's show has custom bikes, a mini-bike show, and more.
The doors open at noon today for the Montreal show.


text:
HomeFix (Home Counties) Ltd2 Feedback reviews, 100% positive
We are a family run business with over 10 years' experience in the Property Service industry specialising in Fascia, soffits, guttering and cladding installations. We will make your home our priority by understanding your requirements. We will provide a detailed...
Latest Fascias, Soffits & Guttering feedback review:
By kmvowles on 31st Jul, 2017
RJS Roofing & Guttering12 Feedback reviews, 100% positive
My name is Richard. I have been working in the construction sector for the past 19years .I have experience in all aspects of home improvements.plastering bricklaying guttering upvc landscaping painting power wasing etc. I take pride in allways delivering a first class job.
Latest Fascias, Soffits & Guttering feedback review:
By ifrank2772_59 on 16th Sep, 2017
Premier cladding UK ltd4 Feedback reviews, 100% positive
Premier cladding UK ltd is a small family business supplying and fitting upvc facias soffits and guttering and cladding and remove all old timbers no over clad.. we are free foam registered approved installerand and offer a 30 guarantee.we also supply and fit EPDM flat...
Latest Fascias, Soffits & Guttering feedback review:
By mrb_77 on 22nd Jun, 2017
Laymore Fencing and Roofing Specialist19 Feedback reviews, 100% positive
hi my name is John i'm in the business of fencing with 25 year I started at the age between 15 and 16 for years I have worked for other companies now I have my own company I am a professional fencer and there's nothing I don't know about fencing I can do it with my...
Latest Fascias, Soffits & Guttering feedback review:
By roy_983 on 27th Oct, 2017
Elite Drives and Landscaping Limited9 Feedback reviews, 89% positive
Elite Drives and Landscaping Ltd pride ourselves on: Free written quotations Helpful advice on things that aren't always that straightforward Years of knowledge based on a first class reputation All our work is guaranteed and done to the highest of standards with pure...
Latest Fascias, Soffits & Guttering feedback review:
By canadian on 16th Aug, 2017
CTK Roofing Services Ltd23 Feedback reviews, 96% positive
CTK ROOFING SERVICES! We are fully Safety trained & work to the highest standard within regulations.We pride ourselves on being reliable & honest.We ensure to keep a tidy work site. Professionalism is key to our business no matter how big or small the project & the customer...
Latest Fascias, Soffits & Guttering feedback review:
By kib_10 on 3rd Oct, 2017
MW Contractors9 Feedback reviews, 100% positive
We are Contractors working with landscape gardeners ,fencers builders of all trades we have a workforce of 8 bring you the best of our abilitys we're working in and around Milton Keynes and afar as Bedford, Luton and Northampton. We are experienced in all types of...
Latest Fascias, Soffits & Guttering feedback review:
By pmrgazz on 15th Nov, 2017
NJG glass & locks86 Feedback reviews, 100% positive
NJG GLASS & LOCKS has over 24 years experience in the glass, glazing and window industry, a business that is built on recommendations, we endeavour to ensure all jobs are efficiently carried out and to the highest standard.
Latest Fascias, Soffits & Guttering feedback review:
By john_greenall on 16th Nov, 2017
A D Fascia Soffit and Gutter Services1 Feedback review, 100% positive
Fascia soffits and gutter installations, roof repairs, some plumbing, drains unblocking etc., And Handy man. 30 years experience.
Latest Fascias, Soffits & Guttering feedback review:
By louise_1k2p on 23rd Nov, 2017
Simply Roofing Solutions LTD30 Feedback reviews, 100% positive
Simply Roofing Solutions Ltd is a friendly family run business who take pride in the work that they do; no matter how big or small the job is. Carl, has over 18 years roofing experience. We take work all over the country. We offer free quotes with no obligation moving...
Latest Fascias, Soffits & Guttering feedback review:
By norman_334 on 19th Oct, 2016
JMurphy Property Services2 Feedback reviews, 100% positive
JMurphy Electrical & property services a small business but no job is to big or small. We pride ourselves on the upmost Professionality and quality of work carried out.
Latest Fascias, Soffits & Guttering client reference:
Reference taken by MyBuilder on 11th Oct, 2017
Weathershield Roofing8 Feedback reviews, 88% positive
Weathershield Roofing is a family run buisness that prides its self on high standards of work and customer care. As a result a high percentage of our work comes from repeat custom. We aim to provide a 24/hour call out service. And we aim to do same day quotations. So call...
Latest Fascias, Soffits & Guttering feedback review:
By nonghead on 26th Sep, 2016
Lawrence Roofing49 Feedback reviews, 100% positive
iam a roofing a specialist.not a jack of all trades and a master of none.i specialize in roofing..Public liability. member of guild of mastercraftsmen. 30 years experience."tones the name honesty is my game." all aspects of roofing.new roofs and old roofs. strip and...
Latest Fascias, Soffits & Guttering feedback review:
By studmuffin1956 on 24th Apr, 2017
Vision Home Improvements19 Feedback reviews, 100% positive
Vision Home Improvements. We are a small business offering our customers a tailored service right from the start. We have over 20 years experience within the double glazing industry, specialising in all aspects of double glazing from design to installation. From fitting...
Latest Fascias, Soffits & Guttering feedback review:
By margaretlea on 10th Jun, 2016
WINDOW INSTALLATION SERVICESNo feedback
WIS are a local family run business based in Milton Keynes, Bucks. We are new to mybuilder.com but we have over 20 years experience in the industry and we will better any like for like quotation. All of our work comes with 10 years insurance back guaranteed. Our...
Need a tradesman?
Post a job on MyBuilder to find a quality, local tradesperson.
How MyBuilder works
1. Post a job
First, create a job listing for your fascias, soffits & guttering project. It's quick, easy and free - the first step to finding recommended fascias, soffits and guttering specialists in MK7, Milton Keynes.
2. Hire a tradesman
Having met our recommended fascias, soffits and guttering specialists in MK7, Milton Keynes and read customer reviews, you're ready to decide which fascias, soffits and guttering specialists to hire.
3. Leave feedback
After your project is successfully completed, you can leave a review for your fascias, soffits and guttering specialists. This review helps you and future MyBuilder users.
What our customers say
- "I found your website very easy to use. Having a choice of tradesmen quoting helped me find the correct builder for the job. "
- Kaz Steele
Tradesmen in MK7, Milton Keynes
- Architectural Designers
- Bathroom Fitters
- Bricklayers
- Carpenters & Joiners
- Carpet Fitters
- Chimney & Fireplace Specialists
- Conservatory Installers
- Conversion Specialists
- Damp Proofing Specialists
- Demolition Contractors
- Driveway Pavers
- Electricians
- Extension Builders
- Fascias, Soffits and Guttering Specialists
- Fencers
- Flooring Fitters
- Gas Engineers
- Groundworkers
- Handymen
- Heating Engineers
- Insulation Installers
- Kitchen Fitters
- Landscape Gardeners
- Locksmiths
- Loft Conversion Specialists
- New Home Builders
- Painters & Decorators
- Plasterers
- Plumbers
- Restoration & Refurb Specialists
- Roofers
- Security System Installers
- Stonemasons
- Tilers
- Tree Surgeons
- Window Fitters
- All Tradesmen


text:
Overseeing Balanchine's 'Tarantella'
Oregon Ballet Theatre's Christopher Stowell discusses his work with the Diablo Ballet.
Overseeing Balanchine's 'Tarantella'
Oregon Ballet Theatre's Christopher Stowell discusses his work with the Diablo Ballet.
Harlem Stage's 'E-Moves' Provides Choreographers Feedback
Choreographers such as Edisa Weeks and Leslie Parker enjoy the mentorship program at Harlem Stage.
City Ballet of Los Angeles teams with Ramon C. Cortines School of Visual and Performing Arts.
Celebrating Loie Fuller's 150th Anniversary
Choreographer Jody Sperling explains Fuller's multidimensional legacy.
Nine-time Tony winner Tommy Tune receives the 2012 Capezio Dance Award.
Physiotherapist Jane Johnson Assesses Posture in Her New Book
Physiotherapist Jane Johnson's book 'Postural Assessment' analyzes posture problems
Kansas City's Veteran Ballerina Kimberly Cowen Retires After a 20-Year Career
Kimberly Cowen ends a two-decade career of dancing Balanchine, Tharp, Cunningham, and Robbins at Kansas City Ballet.
Company C Director Charles Anderson Celebrates 10 Years
Company C Contemporary Ballet, the Walnut Creek, Calif.–based company, celebrates 10 years and makes plans for another 20.
An Inside Look at Rehearsing a Pina Bausch Dance-Theater Piece
Amid all the brouhaha generated by Wim Wenders' Oscar-nominated "Pina," neither dancers nor actors should overlook "Dancing Dreams."
Choreographer Doug Elkins on Building His 'Mo(or)town/Redux'
Choreographer Doug Elkins, known for his "Fräulein Maria," reworks his 1990 piece "Mo9or)town" to create "Mo(or)town/Redux."


text:
LONDON, Jan 31 (Reuters) - A British military healthcare worker was flown back to England from Sierra Leone on Saturday following a needle-stick injury sustained while treating a person with Ebola, the Public Health England (PHE) service said on Saturday.
The patient, who has not been named, has been taken for testing to the Royal Free Hospital in London.
"They are likely to have been exposed to the Ebola virus but, at this time, have not been diagnosed with Ebola and do not have symptoms," PHE said in a statement.
Last week, a British nurse who had been critically ill with Ebola after working in Sierra Leone was discharged from the same hospital after making a full recovery.
The Royal Free, Britain's main centre for Ebola cases, also successfully treated British aid worker William Pooley who contracted the virus in West Africa last year.
To date, more than 21,700 cases of Ebola have been reported in nine countries, including nearly 8,650 deaths, according to the World Health Organisation, although it said this week it believed the disease was declining. (Reporting by Stephen Addison; Editing by Raissa Kasolowsky)


text:
Two for Tuesday
View Single Post
April 23rd, 2013, 05:01 AM
Mega Super Mommy
Join Date: Jan 2013
Location: Virginia
Posts: 3,151
1. Did you cut out caffeine for your pregnancy?
Nope, I have always had one cup of coffee a day and I still have it. I don't drink soda and never have, so I didn't have to cut that out at all. I have always drank lemonade, decaf iced tea and water besides my glass of milk with breakfast. I have my coffee at 9 am at morning break at work with my friends here.
2. Will you breastfeed or do formula?
Formula feed since I didn't even produce milk with my last two pregnancies and VERY little with my 1st.
Jamie age 37-Single mommy and loving life
Tristen James born 10-28-00
Logan Boyce born 1-19-04
Brayden Monroe born 8/2/07
Sophia Elizabeth born 10-4-2103
View Public Profile
Find all posts by jamieshalon2


text:
Your shopping cart is empty!
While not the lightest, the BD Ascensions are the most reliable climbing skins on the market. The durable nylon weave offers maximum grip in icy conditions. The glue is the strongest on the market, made with a recipe that only key Black Diamond employees are allowed to learn. The STS tip and tail kit are hard wearing and easily adjustable. These skins will take a beating and keep ascending.


text:
Contact Info / Websites
Recent Movie Reviews
Pipeline Labyrinth
Rated 4 / 5 stars
Pretty good for a sprite flash
I'm not a huge fan of sprite movies myself but that was pretty impressive. Reguardless of what people may say, that takes a lot of work. The animation was great, but I found the entire thing drawn out and a little boring, but still a great movie. The sprites were well done and the music fit, and was well ripped. It's obvious that you put a lot into this, so good job, and keep up the good work, just think about making your movies more interesting, maybe increase the pace, but by all means this is good stuff.
Watermelon Head 1-5
Rated 1.5 / 5 stars
Not what I expected
The last person who said this was the funniest submisson he's ever seen must be really easily entertained. This was not funny. It was a little creative but it wasn't anything special. It just amazes me that this kind of stuff can make front page. Maybe I shouldn't try as hard, then maybe I'll make front page.
Rated 4.5 / 5 stars
Not my kind of humor but it was good