text:
Patent US20080030945 - High Density Storage System - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsThe present invention provides methods and systems for storage of data. In one aspect, the invention provides a data storage system that includes a plurality of storage devices, such as, disks, for storing data, and a controller that implements a policy for managing distribution of power to the storage...http://www.google.com/patents/US20080030945?utm_source=gb-gplus-sharePatent US20080030945 - High Density Storage SystemAdvanced Patent SearchPublication numberUS20080030945 A1Publication typeApplicationApplication numberUS 11/757,042Publication dateFeb 7, 2008Filing dateJun 1, 2007Priority dateMar 21, 2002Also published asUS7573715Publication number11757042, 757042, US 2008/0030945 A1, US 2008/030945 A1, US 20080030945 A1, US 20080030945A1, US 2008030945 A1, US 2008030945A1, US-A1-20080030945, US-A1-2008030945, US2008/0030945A1, US2008/030945A1, US20080030945 A1, US20080030945A1, US2008030945 A1, US2008030945A1InventorsMichael Mojaver, Quan Dong, Ian Fisk, Andrew GrayOriginal AssigneeTempest MicrosystemsExport CitationBiBTeX, EndNote, RefManReferenced by (10), Classifications (16), Legal Events (3) External Links: USPTO, USPTO Assignment, EspacenetHigh Density Storage System
US 20080030945 A1Abstract
The present invention provides methods and systems for storage of data. In one aspect, the invention provides a data storage system that includes a plurality of storage devices, such as, disks, for storing data, and a controller that implements a policy for managing distribution of power to the storage devices, which are normally in a power-off mode. In particular, the controller can effect transition of a storage device from a power-off mode to a power-on mode upon receipt of a request for reading data from or writing data to that storage device. The controller further effects transition of a storage device from a power-on mode to a power-off mode if no read/write request is pending for that storage device and a selected time period, e.g., a few minutes, has elapsed since the last read/write request for that storage device. In another aspect, the present invention provides a data storage system that includes a plurality of cooling plates, each with one or more storage devices thermally coupled thereto. More specifically, for example, a cooling plate can have a storage device thermally coupled to each of two opposed cooling surfaces. A heat exchanging device can be thermally coupled to the cooling plates, e.g., via fluid channels carrying a cooling fluid, for dissipating heat generated by the storage devices. Images(15) Claims(44)
1. A data storage system, comprising: an enclosure; a plurality of storage devices for storing data, the storage devices being mounted in the enclosure so as to provide a collective storage density greater than about 100 Mbytes per cubic centimeter; a plurality of cooling plates mounted in the enclosure and having opposed cooling surfaces, at least one of the cooling surfaces being thermally coupled to at least one of the storage devices; a heat exchanging device thermally coupled to the cooling plates for dissipating heat generated by the storage devices. 2. The data storage system of claim 1, wherein at least of one the storage devices is slidably coupled to at least one of the cooling plates so as to be movable between a first position in which the storage device is thermally coupled to a first cooling surface of the cooling plate and a second position in which the storage device is removed from the enclosure. 3. The data storage system of claim 2, wherein the at least one of the storage devices comprises an I/O port configured to mate with a complementary I/O port disposed in the enclosure when the storage device is in the first position, the complementary I/O port providing a data communication interface for the at least one storage device. 4. The data storage system of claim 1, further comprising at least one mounting element disposed in the enclosure for slidably coupling the storage device to the at least one cooling plate, the mounting element having a plurality of guiding tabs configured to engage one or more rails on the at least one cooling plate. 5. The data storage system of claim 1, wherein the plurality of storage devices are magnetic storage devices. 6. The data storage system of claim 1, wherein the plurality of storage devices are optical storage devices. 7. The data storage system of claim 1, wherein the at least one cooling plate is coupled to the at least one storage device on one cooling surface thereof and to a second storage device on another cooling surface. 8. The data storage system of claim 1, wherein the heat exchanging device is operable to maintain an average temperature among the plurality of storage devices below a predetermined threshold value. 9. The data storage system of claim 8, wherein the predetermined threshold value is about 35 degrees Celsius. 10. The data storage system of claim 1, wherein the heat exchanging device is operable to maintain a peak temperature among the plurality of storage devices below a predetermined threshold value. 11. The data storage system of claim 10, wherein the predetermined threshold value is about 45 degrees Celsius. 12. The data storage system of claim 1, wherein at least one of the plurality of cooling plates has a thickness in the range of about 11 mm to 19 mm. 13. The data storage system of claim 1, wherein the at least one cooling plate has a cooling fluid channel formed therein, the cooling fluid channel comprising an inlet for receiving cooling fluid from the heat exchanging device and an outlet for returning cooling fluid to the heat exchanging device. 14. The data storage system of claim 13, further comprising a flow control element associated with the at least one cooling plate for controlling a flow of cooling fluid thereto. 15. The data storage system of claim 13, wherein the flow of cooling fluid within the cooling fluid channel is in the range of about 75 Lph to 190 Lph. 16. The data storage system of claim 1, wherein said collective storage density is in a range of about 100 Mbytes per cubic centimeter to about 10 Gigabytes per cubic centimeter. 17. The data storage system of claim 1, wherein said collective storage density is in a range of about 0.5 Gigabytes per cubic centimeter to about 10 Gigabytes per cubic centimeter. 18. The data storage system of claim 1, wherein said collective storage density is in a range of about 10 Gigabytes per cubic centimeter to about 20 Gigabytes per cubic centimeter. 19. A cooling system, comprising: an enclosure; an array of cooling plates mounted in the enclosure, each cooling plate being thermally coupled to a heat exchanging device; a plurality of mounting elements configured to attach to a data storage device, at least one mounting element being slidably coupled to at least one cooling plate so as to be movable between an inserted position in which the at least one mounting element is disposed adjacent a cooling plate, and an extended position in which the at least one mounting element extends out of the enclosure. 20. The cooling system of claim 19, wherein the at least one cooling plate has opposed cooling surfaces and is slidably coupled to a first mounting element on one of said cooling surfaces and to a second mounting element on another of said cooling surfaces. 21. The cooling system of claim 19, further comprising a plurality of data storage devices mounted in the enclosure so as to provide a data storage density greater than about 100 Mbytes per cubic centimeter, wherein at least one of said data storage devices is coupled to the at least one mounting element. 22. The cooling system of claim 19, further comprising a plurality of data storage devices mounted in the enclosure so as to provide a storage density in a range of about 100 Mbytes per cubic centimeter to about 10 Gigabytes per cubic centimeter. 23. The cooling system of claim 19, further comprising a plurality of data storage devices mounted in the enclosure so as to provide a collective storage density in a range of about 0.5 Gigabytes per cubic centimeter to about 10 Gigabytes per cubic centimeter. 24. The cooling system of claim 19, further comprising a plurality of data storage devices mounted in the enclosure so as to provide a collective storage density in a range of about 10 Gigabytes per cubic centimeter to about 20 Gigabytes per cubic centimeter. 25. The cooling system of claim 21, wherein the plurality of data storage devices comprises magnetic storage devices. 26. The cooling system of claim 21, wherein the plurality of data storage devices comprises optical storage devices. 27. The cooling system of claim 21, wherein the at least one data storage device comprises an I/O connector configured to mate with a complementary I/O connector disposed in the enclosure when the at least one mounting element is in the inserted position. 28. The cooling system of claim 21, wherein at least one mounting element is adapted to removably attach to the at least one data storage device and has a plurality of guiding tabs configured to engage one of the plurality of cooling plates for slidably coupling the at least one data storage device to the at least one cooling plate. 29. The cooling system of claim 19, wherein at least one cooling plate has opposed cooling surfaces, the at least one cooling plate being thermally coupled to a first data storage device via a mounting element coupled to one of the cooling surfaces and thermally coupled to a second data storage device via a mounting element coupled to the other cooling surface. 30. The cooling system of claim 19, wherein the heat exchanging device is operable to maintain an average temperature throughout the enclosure below a predetermined threshold value. 31. The cooling system of claim 30, wherein the predetermined threshold value is about 35 degrees Celsius. 32. The cooling system of claim 19, wherein the heat exchanging device is operable to maintain a peak temperature in the enclosure below a predetermined threshold value. 33. The cooling system of claim 32, wherein the predetermined threshold value is about 45 degrees Celsius. 34. The cooling system of claim 19, wherein at least one of the plurality of cooling plates has a thickness in a range of about 11 mm to 19 mm. 35. The cooling system of claim 19, wherein at least one cooling plate has a cooling fluid channel formed therein, the cooling fluid channel comprising an inlet for receiving cooling fluid from the heat exchanging device and an outlet for returning cooling fluid to the heat exchanging device. 36. The cooling system of claim 35, further comprising a flow control element associated with the at least one cooling plate for controlling a flow of cooling fluid thereto. 37. The cooling system of claim 35, wherein the flow of cooling fluid within the cooling fluid channel is in the range of about 75 Lph to 190 Lph. 38. A method for regulating temperature in a data storage system comprising a plurality of storage devices that collectively provide a data storage density greater than about 100 Mbytes per cubic centimeter, the method comprising: disposing a plurality of cooling plates in an enclosure; thermally coupling the cooling plates to a heat exchanging device; thermally coupling each cooling plate at one surface thereof to one storage device and at another opposed surface thereof to another storage device. 39. The method of claim 38, further comprising electrically coupling one or more of the storage devices to a data communication interface disposed within the enclosure. 40. The method of claim 38, further comprising operating the heat exchanging device to maintain an average temperature among the array of storage devices below about 35 degrees Celsius. 41. The method of claim 38, further comprising operating the heat exchanging device to maintain a peak temperature of the array of storage devices below about 45 degrees Celsius. 42. The method of claim 38, further comprising moving a cooling fluid through a cooling fluid channel formed in at least one of the cooling plates and through the heat exchanging device. 43. The method of claim 38, wherein the flow rate of cooling fluid within the cooling fluid channel is in the range of about 75 Lph to 190 Lph. 44. A data storage system, comprising: an enclosure; a plurality of storage devices for storing data, the storage devices being mounted in the enclosure so as to have a collective density of greater than about 100 Mbytes per cubic centimeter; a plurality of cooling plates mounted in the enclosure and having opposed cooling surfaces, at least one of the cooling surfaces being thermally coupled to at least one of the storage devices; a heat exchanging device thermally coupled to the cooling plates for dissipating heat generated by the storage devices; a controller coupled to the storage devices, the controller maintaining the storage devices normally in a power-off mode and effecting transition of one or more of the storage devices from a power-off mode to a power-on mode upon receipt of a read-write request for those storage devices, the controller further effecting transition of a storage device from a power-on mode to a power-off mode if no read/write request is pending for that storage device and a selected time period has elapsed since the last read/write request for that storage device. Description
BACKGROUND The present invention relates to methods and systems for storing data, and more particularly, to cost-effective methods and systems for storage and retrieval of a large amount of data, e.g., in a range of tens to hundreds of Terabytes. The volume of data generated by business processes in a variety of organizations is increasing exponentially with time. Most industrial and business processes are far more efficient in generating digital data than in utilizing it. As a result, the demand for long-term data storage and back-up is growing rapidly. Currently, large scale data warehousing is typically implemented by employing tape media, which suffer from long access latency, namely, the time required for loading the tape and other associated access times. In addition, robotic tape systems are bulky and expensive to maintain. Since the latency period for access to database items located in a tape archive is typically on the scale of tens to hundreds of seconds, a system overload frequently arises when a database search requires access to data located on many or all of the tapes in a library. Improving robotic tape storage access presents a challenging problem. Even with multiple arms and tape drives, access within each tape remains serial with few opportunities for speeding up access to data. Software approaches that streamline tape access by clustering and de-clustering multiple accesses are known. These approaches can improve performance of Petabyte tape libraries that include several hundred Terabytes of disk cache. These approaches, however, can not eliminate the fundamental limitations arising from tape access latency. Magnetic disk storage currently available presents an alternative to tape. Current commodity disk drive units are only marginally more costly than tape media and will be less costly within a few years, if current trends continue. However, disk-based systems having very large storage capacities, for example, hundreds of Terabytes, are very costly, and offer short retention life in comparison to tape. Redundant Arrays of Inexpensive Disks (RAID) include a small number of disk drives, and an interface that presents these drives as a single large disk to a user while protecting data loss in case of failure of any of the disks. Current RAID systems have a maximum storage capacity of approximately a Terabyte, and are optimized for random access speed. A storage area network (SAN) provides a practical approach for combining many RAID modules to obtain high storage capacity, for example, tens of Terabytes, albeit at high cost. Networked Attached Storage (NAS) devices provide another alternative for high capacity disk storage. A NAS cluster relies on the scalability of networks in a file server topology to provide high storage capacity. However, similar to SAN, NAS devices can also be costly. Temperature management can be important in high density data storage systems. For example, poor thermal characteristics in a disk array system can reduce its reliability and lifetime. Operating a drive above its nominal temperature (e.g., over the life of a drive) can result in a higher failure rate. Further, excessive temperature can create or exacerbate problems with many components in a disk drive, from the actuation arm and spindle motor to the bearings. Accordingly, there is a need for cost effective methods and systems for high speed, and high capacity storage of data. There is also a need for enhanced thermal management of high capacity data storage systems. SUMMARY OF THE INVENTION The present invention provides in one aspect a data storage system that includes a plurality of storage devices, for example, tens or hundreds of storage devices such as disks, for storing data, and a controller that is coupled to these storage devices via a bus or any other suitable device. The storage devices, which preferably provide permanent data storage, are normally in a power-off mode. That is, in the absence of processing an input/output (I/O) request, each storage device is decoupled from a power source that would otherwise supply power (e.g., electrical power) to that storage device. The controller, which can be programmed in software or in hardware, effects transition of a storage device from a power-off mode to a power-on mode upon receipt of a request for access to that storage device, for example, for reading data from or writing data to that storage device, i.e., a read/write request. When storage devices are disks, this approach effectively treats the disks as inexpensive tape drives. The controller can be implemented as a central device to manage power distribution to all storage devices in a manner described above. Alternatively, a plurality of controllers, each managing power distribution to each individual storage device or a group of storage devices, can be employed. Hence, the term �controller,� as used herein, is intended to refer to a single central control device or a plurality of devices that collectively implement a policy for distributing power to a plurality of storage devices according to the teachings of the invention. In a related aspect, the controller further effects transition of a storage device from a power-on mode to a power-off mode if no access request, e.g., no read/write request, is pending for that storage device and a selected time period, e.g., a few seconds, a few minutes, or a few hours, has elapsed since the last read/write request for that storage device. A variety of storage devices can be utilized in a system according to the invention. Such storage devices include, but are not limited to, magneto disks and optical media. Each storage device can have a data storage density in a range of about 100 Megabytes per cubic centimeter to about 1 Gigabytes per cubic centimeter, and more preferably in a range of about 100 Megabytes per cubic centimeter to about 10 Gigabytes per cubic centimeter. A group, or the entire, of storage devices can be housed in an enclosure (chassis), and a plurality of chassis can be disposed on a rack. The storage devices in a system of the invention can provide, for example, a collective storage in a range of about 25 TB to about 50 TB per chassis and in a range of about 250 TB to about 500 TB per rack. Further, the storage devices can form a RAID storage system. It should be understood that as the storage capacity of storage media suitable for use in a system of the invention increase, the collective storage capacity, or in other words, data storage density, provided by a system of the invention can also increase. In another aspect, a storage system of the invention as described above, can include a relay coupled to the controller that receives signals from the controller, and electrically connects or disconnects one or more selected ones of the storage devices to a source of power. In further aspects, a data storage system according to the invention can include a cache storage, having, for example, a cache memory and a cache disk, coupled to the controller for storing selected data retrieved from one or more of the storage devices. This is particularly useful for rapid access to data that is likely to be requested in the future by one or more processes. For example, in some embodiments, when an executing process requests data corresponding to a portion of a file residing on one of the storage devices, the controller would retrieve the entire file, transmit the requested portion to the executing process, and store the entire file on the cache storage. In the likely event that the executing process requests access to another portion of the file, the requested portion can be rapidly retrieved from the cache storage. In another aspect, the present invention provides a method for managing power distribution to a plurality of storage devices that calls for effecting transition of each storage device from a power-off mode to a power-on mode upon receipt of a request for writing data to or reading data from that storage device. The method further calls for effecting transition of a storage device from a power-on mode to a power-off mode if no read/write request is pending for that storage device, and a selected time period has elapsed since the receipt of the last read/write request. In further aspects, the invention provides an improved data storage system having a plurality of storage devices disposed in an enclosure, herein also referred to as a chassis, so as to provide a data storage density in a range of about 50 Megabytes per cubic centimeter to about 0.5 Gigabytes per cubic centimeter, or preferably a data storage density in a range of about 100 Megabytes per cubic centimeter to about 1 Gigabyte per cubic centimeter, or more preferably in a range of about 100 Megabytes per cubic centimeter to about 10 Gigabytes per cubic centimeter. One or more controllers coupled to the storage devices implement a power distribution policy as described above for supplying electrical power to the storage devices. More particularly, the controllers can effect transition of one or more storage devices from a power-off mode to a power-on mode upon receipt of a request for accessing those storage devices, and can further effect transition of one or more storage devices from a power-on mode to a power-off mode if no access requests are pending for those storage devices and a selected time period has elapsed since the last access request for those storage devices. In another aspect, the present invention provides a data storage system that includes a plurality of storage devices, such as magnetic or optical disks, mounted in an enclosure so as to have a collective density greater than about 100 Megabytes per cubic centimeter, e.g., in a range of 100 Mbytes per cubic centimeter to about 10 Gigabytes per cubic centimeter, or in other embodiments, in a range of about 10 Gigabytes per cubic centimeter to 20 Gigabytes per cubic centimeter. A plurality of cooling plates having opposed cooling surfaces can be mounted in the housing and thermally coupled to at least one of the storage devices. In some embodiments, each cooling plate can have two storage devices thermally coupled to it, one to each of its opposed cooling surfaces. The data storage system can also include a heat exchanging device, such as a radiator or refrigeration unit, that is thermally coupled to the cooling plates for dissipating heat generated by the storage devices. For example, fluid channels carrying a cooling fluid can be formed in the cooling plates, e.g., having an inlet port through which cooling fluid enters and a outlet port through which cooling fluid exits, and the fluid channels can be connected via tubes to the heat exchanging device. The heat exchanging device can cause the fluid to flow through the fluid channels at a rate of about 75 Lph (Liters per hour) to 190 Lph. A flow control element can be provided and associated with one or more cooling plates to control the flow of cooling fluid, e.g., starting or stopping the flow to a cooling plate for which it controls the flow. In some embodiments, the heat exchanging device can maintain an average temperature among the plurality of storage devices below a threshold, e.g., 35 degrees Celsius, and/or maintain a peak temperature among the plurality of storage devices below a threshold, e.g., 45 degrees Celsius. In many embodiments, the data storage system can be adapted such that the storage devices can be readily inserted into and removed from the enclosure. For example, one or more of the storage devices can be removably attached to a mounting element (e.g., via engaging tabs) that is adapted to slide along a cooling plate. An I/O connector, such as an electrical connector, can be provided in the enclosure so as to mate with a complementary I/O connector on a storage device when the storage device is inserted, e.g., by sliding it, into the enclosure. In yet other embodiments, the data storage system can include a controller that is coupled (e.g., electrically coupled) to the storage devices to maintain the storage devices normally in a power-off mode and effect transition of one or more of the storage devices from a power-off mode to the power-on mode upon receipt of a read-write request for those storage devices. The controller can effect transition of a storage device from a power-on mode to a power-off mode if no read/write request is pending for that storage device and a selected time period has elapsed since the last read/write request for that storage device. In other aspects, the present invention provides a cooling system for a data storage system. An exemplary cooling system can have an array of cooling plates mounted in an enclosure, where each cooling plate is thermally coupled to a heat exchanging device. The cooling system can also include a plurality of mounting elements that are configured to attach to a data storage device (e.g., a magnetic or optical storage device). Such a mounting element can be slidably coupled to one of the cooling plates so as to be movable between an inserted position in which it is disposed adjacent to a cooling plate and an extended position in which it extends out of the enclosure. In some embodiments, one or more cooling plates can have opposed cooling surfaces, and one mounting element can be slidably coupled to a first opposed cooling surface while a second mounting element is slidably coupled to a second opposed cooling surface. The cooling system can also have any of the characteristics previously described, including thermal coupling of the heat exchanging device to the cooling plates, fluid channels in the cooling plates, operating characteristics of the heat exchanging device, and/or adaptations for inserting and removing storage devices from the enclosure. In many embodiments, the cooling system can include a plurality of storage devices that can be thermally coupled, e.g., two to a cooling plate, so as to provide a storage density greater than about 100 Megabytes per cubic centimeter. In another aspect, the invention provides methods for regulating temperature in a data storage system. An exemplary method can include arranging a plurality of cooling plates in an enclosure and thermally coupling the cooling plates to a heat exchanging device. The method can further include inserting a storage device into an array of storage devices disposed in an enclosure, the array having a data storage density of greater than about 100 Megabytes per cubic centimeter. The storage device can be inserted adjacent to one of the cooling plates such that it is in thermal communication with it. In some embodiments, a second storage device can be inserted adjacent to the same cooling plate such that it is thermal communication with it as well. In some embodiments, the cooling plate can have two opposed cooling surfaces, and the first storage device can be inserted so as to be thermally coupled to a first cooling surface of the cooling plate while the second storage device can be inserted so as to thermally couple to a second cooling surface of the cooling plate. The method can also include electrically coupling a storage device to a data communication interface within the enclosure. In some embodiments, an exemplary method can also include operating the heat exchanging device so as to maintain an average temperature of the array of storage devices below a threshold, e.g., 35 degrees Celsius, or to maintain a peak temperature of the array of storage devices below a threshold, e.g., 45 degrees Celsius. In addition, a cooling fluid can be moved through the cooling plates and through the heat exchanging device to dissipate heat. The flow rate of the cooling fluid can be in the range of about 75 Lph to 190 Lph. Further understanding of the invention can be obtained by reference to the following detailed description in conjunction with associated drawing, which are described briefly below.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 schematically illustrates an exemplary data storage system according to the teachings of the invention, FIG. 2 is a block diagram depicting various steps in a method according to the teachings of the invention for managing power distribution to a plurality of storage devices, FIG. 3 is a diagram illustrating cost/performance characteristic of an exemplary data storage system of the invention relative to a number of conventional systems, FIG. 4 is a diagram schematically depicting an exemplary prototype data storage system built according to the teachings of the invention, FIG. 5 schematically depicts the storage devices of FIG. 4 housed in an enclosure, FIG. 6 illustrates an exemplary data storage system having a cooling system according to one embodiment of the invention, FIG. 7 illustrates another view of the data storage system shown in FIG. 6, FIG. 8 illustrates the data storage system shown in FIG. 6 in more detail, FIG. 9 illustrates an exemplary cooling plate utilized in the data storage system shown in FIG. 6 with two storage devices thermally coupled thereto, FIG. 10 illustrates a bottom view of the cooling plate shown in FIG. 9 and its associated storage devices, FIG. 11 illustrates an exemplary cooling plate suitable for use in the data storage system shown in FIG. 6, FIG. 12 illustrates an exemplary mounting plate suitable for use in the data storage system shown in FIG. 6, FIG. 13 illustrates an exemplary data storage system having a cooling system according to another embodiment of the invention, and FIG. 14 illustrates a bottom view of the data storage system shown in FIG. 13.
DETAILED DESCRIPTION The present invention provides systems and methods for cost-effective storage and retrieval of a large amount of data while minimizing physical space required for such storage. As discussed in more detail below, a system of the invention can include a plurality of selected storage media, e.g., disks, which can be, for example, packed in an enclosure in close proximity of one another. Each storage medium is normally in a power-off state in order to alleviate the thermal load of the system. A controller is utilized to transition a selected one of the storage media from a power-off mode into a power-on mode in order to read data from and/or write data to that storage medium. With reference to FIG. 1, an exemplary data storage system 10 according to the teachings of the invention includes a plurality of storage devices 12, for example, disks, provided in an enclosure 14, and a controller 16 that can communicate with the storage devices 12 via, for example, a bus 18. The controller 16 can be housed within the enclosure 14, or alternatively, it can be provided external to the enclosure. The controller 16 can effect the transition of each storage device 12 from a power-off mode, i.e., a mode in which the storage device is disconnected from power, to a power-on mode, i.e., a mode in which power is delivered to the storage device, upon receipt of a read/write request for that storage device. That is, an idle storage device, i.e., a storage device for which no read or write request has been received for a selected period of time and for which no request is pending, is maintained in a power-off mode, and is only powered up when a read/write request is received. The controller 16 can further effect the transition of a storage device 12 from a power-on mode to a power-off mode if no read/write request is received and/or pending for that storage device and a selected time period, for example, a time period in a selected range, e.g., in a range of a few seconds to a few hours, has elapsed since the last read/write request for that storage device. A method according to the teachings of the invention for managing power distribution to a plurality of storage devices, implemented by the exemplary data storage system 10, can be perhaps better understood by reference to a flow chart 20, shown in FIG. 2, that describes various steps of such a method. In particular, in step 22, an idle storage device for which a read/write request is received is effected to transition from a power-off mode to a power-on mode, and, in step 24, the read/write request is implemented. Further, any other pending request associated with that storage device is also implemented. With continuing reference to the flow chart 20, in the absence of any pending requests, and if the time elapsed since the receipt of the last implemented request exceeds a selected value, in step 26, the power to the storage device is disconnected, i.e., the storage device is effected to transition from a power-on mode to a power-off mode. Otherwise, the system awaits receipt of additional read/write requests, if any (step 26). A data storage system according to the teachings of the invention provides a number of advantages over conventional systems. For example, conventional RAID devices typically utilize about 10 drives per enclosure to meet the power and thermal limitations of fast disk drives. In contrast, a data storage system of the invention allows an order of magnitude more drives to be supported in the same enclosure by substantially reducing power dissipation of the drives. That is, a data storage system of the invention utilizes a policy for managing distribution of power to a plurality of storage devices, as described above, that reduces the overall power consumption of the system. This allows a more compact configuration for the storage system, and also allows more disk drives to share the same electronics control system, thereby lowering the cost of manufacturing. Further, an initial access latency to a storage device that is in a power-off mode in a data storage system of the invention can be approximately 10 seconds. This access latency is comparable to the best case, i.e., tape drive is empty and data is located at the beginning of the tape, access time for robotic tape libraries. Any additional access for performing read/write operations in data storage system of the invention will be at full random access speed. Moreover, as discussed above, in a system of the invention, the storage devices, e.g., disks, are normally in a power-off state. This advantageously reduces wear and tear experienced by each storage device if it is accessed infrequently, thereby lengthening its shelf life. For example, magnetic disks cease to spin when transitioned into a power-off state, and hence experience less wear and tear in this state. In some embodiments of the invention, techniques can be utilized to maintain the most frequently accessed drives highly available, for example, by lengthening the inactive period after which the device is transitioned to a power-off mode. A direct disk peripheral interface can enhance database performance by eliminating the software overhead associated with distributed networked storage. The expected data storage I/O rate can be supported using a high speed interface. FIG. 3 schematically depicts the cost/performance characteristics of an exemplary data storage system of the invention having an array of disks relative to those of a number of conventional storage systems. The graph of FIG. 3 plots performance versus cost (in a log-log scale). As shown in this figure, a data storage system of the invention can provide considerably enhanced performance relative to tape libraries or NAS devices at comparable or reduced cost. Further, a data storage system of invention can be less costly than a conventional RAID system. In order to demonstrate the feasibility of manufacturing a storage system according to the teachings of the invention, and the efficacy of such a system for storage and retrieval of a large amount of data, a prototype system was built and tested. FIG. 4 schematically illustrates that this prototype system includes a controller 16 that can communicate, via a bus 18, with a plurality of hard disk drive interfaces 30 a-30 f, herein collectively referred to as drives 30, operating based on Integrated Drive Electronics (IDE) interface standard. The drives 30 communicate and control a plurality of hard disks 32 via buses 34 a-34 f. More particularly, in this exemplary prototype, each hard disk drive 30 controls access to eight hard disks, each of which has a storage capacity of about 200 Gigabytes. The hard disks 30 are housed in an enclosure 36, schematically depicted in FIG. 5, having approximate dimensions of 24 inches by 19 inches by 6 inches (approximately 60 cm.times.50 cm.times.15 cm). Although only 48 drives are utilized in this exemplary prototype, it should be understood that a system of the invention can be constructed with hundreds of disks to provide a collective storage capacity in a range of about 25 Terabytes to about 50 Terabytes per chassis and a storage capacity in a range of about 250 to about 500 Terabytes per rack. Referring again to FIG. 4, the hard disks 32 are normally in a power-off mode. The controller 16 can cause the transition of one or more of the hard disks from a power-off mode to a power-on mode upon receipt of a request for accessing those hard disks. More particularly, the controller 16 can send signals to a relay board 38 for supplying power to one or more selected ones of the disks 32. Alternatively, the controller 16 can send signals to the relay board 38 for disconnecting one or more selected ones of the disks 32 from a source of power (not shown in this figure). For example, if a disk that is in a power-on mode is not accessed for a selected time period, e.g. a time period in a range of a few seconds to about a few minutes (e.g., 15 minutes), the controller can instruct the relay board to shut off power to that disk. In this exemplary prototype, the controller 16 implements a plurality of requests for accessing the hard disks on a FIFO (first-in-first-out) basis. Those having ordinary skill in the art will appreciate that any other suitable algorithm for processing the requests can also be utilized. While the available power is typically the primary factor that determines the maximum number of disks that can be simultaneously switched on, it is an acceptable level of thermal load that typically provides an upper limit for the maximum number of disks that can be simultaneously in a power-on state. This upper limit imposed by the thermal load depends in general not only on the number of disks that are in a power-on state but also on their distribution within the enclosure. For example, more disks can be in a power-on state if they are sparsely distributed. In this exemplary prototype, it is feasible to have about 25 percent of the disks in a power-on state without encountering any thermal overload. It should, however, be understood that this exemplary prototype is provided only as an example, and the 25 percent limit is not intended to indicate an absolute upper limit in other embodiments of the invention. In particular, various improvements, including providing better thermal insulation and/or cooling mechanisms (e.g., as discussed below), can be employed to increase the maximum number of disks that can be simultaneously in a power-on state. When the controller 16 receives a request for access to a disk that is in a power-off state while the number of other disks that are in the power-on state has reached an upper threshold imposed by the thermal load, the controller 16 can suspend access to one of the disks that is already in a power-on state, and transition that disk to a power-off state, in order to allow switching on the requested disk that is in a power-off state. The selection of a disk to be transitioned into a power-off state to allow transitioning a new disk from a power-off state to a power-on state can be performed based on a FIFO protocol, although other protocols can also be employed. In a FIFO protocol, a disk that has been in a power-on state for the longest time period is the first to be selected for being transitioned into a power-off state. If the selected disk is presently processing an input-output (I/O) request, the I/O processing can be blocked before transitioning the disk into a power-off state. The blocked I/O processing can, however, be scheduled to resume once the disk can be switched back on without causing thermal overload, for example, once one or more other disks have been switched off. A scheduler can manage the blocking and resumption of the I/O requests based on a selected scheduling protocol. Such a scheduler can be built, for example, as a kernel process or alternatively as a multithreaded user program. With continued reference to FIG. 4, the exemplary controller 16 is also in communication with a memory cache 40, which can in turn communicate with a disk cache 42 for storing selected data retrieved from any of the hard disks 32. The data stored on the memory cache or the disk cache can be subsequently retrieved, if desired, very rapidly. In this exemplary protocol, when the controller receives a request for retrieval of a portion of a file residing on one of the disks, the controller retrieves the entire file, or an entire directory in which the file resides. The requested portion is transmitted to the process requesting it, and the entire file or directory is stored on the cache 42. This allows rapid retrieval of any other portion of the file, or other files in the directory, upon future requests. In this exemplary prototype, the disks 32 are configured as a RAID system. For example, four disks are transitioned together from a power-off to a power-on mode, or vice versa, so as to allow maintaining data redundancy. It should be clear, however, that in an alternative embodiment, each of the disks can be accessed individually. Further, the controller 16 can include a network interface for linking the controller to a selected network, for example, a storage area network (SAN). In other embodiments of the invention, storage systems having cooling systems are provided. In some such embodiments, the cooling system can remove heat from a plurality of storage devices, which can be mounted so as to be in thermal coupling with a plurality of cooling plates in an enclosure. In many implementations, the cooling plates are configured to transfer heat generated by one or more of the storage devices to a heat exchanging device, which in turn dissipates the heat. Furthermore, each cooling plate can include one or more channels that allow the flow of a cooling fluid therethrough in order to facilitate the removal of heat, preferably via thermal conduction, from the storage devices. The cooling system can allow the storage system to be configured with a high storage density. By of way example, FIGS. 6-8 depict a data storage system 60 which has a cooling system according to one embodiment of the invention. As shown, the data storage system 60 can include an enclosure 61 in which a plurality of storage devices 62 (for simplicity, all storage devices are referred to herein as storage device(s) 62, although a variety of different storage devices, e.g., magnetic and optical, with different specifications can be used in a system). In many embodiments, the storage devices number between 48 and 128, but virtually any number can be used. The storage devices can be mounted in an enclosure so as to provide a data storage density, defined as the collective storage capacity of the storage devices divided by the volume of the enclosure, in a range of about 100 Mbytes per cubic centimeter to about 10 Gigabytes per cubic centimeter, and preferably in a range of about 0.5 Gigabytes per cubic centimeter to about 10 Gigabytes per cubic centimeter, and more preferably about 20 Gigabytes per cubic centimeter. In some embodiments the data storage system 60 provides an overall storage capacity (e.g., a data storage capacity) in a range of about 1 Terabytes to about 50 Terabytes, and in other embodiments the storage capacity can be about 100 Terabytes to a few hundred Terabytes. In some embodiments, the storage capacity of the system can be achieved using a plurality of storage devices, each with a storage capacity less than the storage capacity of the system, e.g., less than about 1 Terabyte. As shown in FIG. 6, the plurality of storage devices 62 can be thermally coupled to a plurality of cooling plates 63, which can be attached to the enclosure via a plurality of slots 64 (best seen in FIG. 7) provided in a printed circuit board (PCB) 65. (Again, for simplicity, all cooling plates are referred to herein as cooling plate(s) 63, although they need not be the same.) In other embodiments, a cooling plate forming the bottom of the enclosure can be adapted to remove heat from below the storage devices. The cooling plates 63 can be thermally coupled (e.g., via cooling fluid channels 79, 80 extending into the cooling plates 63 through the slots 64, as shown in FIG. 7 and discussed in more detail below) to heat exchanging devices 67, 68, such as radiators, or refrigeration units. The cooling plates 63 can be mounted in the enclosure 61 such that each cooling plate 63 is in thermal contact with a selected number of storage devices 62 (e.g., two storage devices 62 in this embodiment). More specifically, the storage devices 62 can be in thermal contact with a cooling surface of the cooling plate 63. As shown in FIG. 6, each cooling plate 63 has two opposed cooling surfaces 69, 70. A first storage device can be in thermal contact with a first cooling surface 69 and a second storage device can be in thermal contact with a second opposed cooling surface 70. (For illustrative purposes, FIGS. 6-8 show only one storage device 62 per cooling plate 63, although two storage devices can be used. FIG. 10 shows a cooling plate configuration having two storage devices in more detail.) A mounting element, such as a mounting plate 71, can be removably attached to a storage device 62. The mounting plate 71, along with the storage device 62 to which it is attached, can be slidably coupled to a cooling plate 63 (e.g., by sliding the mounting plate 71 and the storage device 62 vertically down along a cooling surface 69, 70 of the cooling plate 62), which can facilitate the thermal coupling of the storage device 62 to a cooling plate 63 and/or its cooling surfaces 69, 70. Such a configuration can allow the storage device 62 to be easily inserted and removed from the data storage system 60. In some embodiments, the data storage system 60 can be oriented such that the plurality of storage devices 62 can be inserted vertically down into the enclosure 61, such that gravity assists in seating and latching the storage devices 62. Further, an I/O connector 72, such as an electrical connector, can be disposed on the PCB board 65 such that, when the storage device 62 is inserted, it will mate with a complementary I/O connector 73 disposed on a storage device 62, e.g., for data communication. This electrical connector can allow communication with a system controller, e.g., for managing data communication and/or power management for the storage device 62 and/or the array of storage devices, such as the controller discussed above in connection with other embodiments. By way of further illustration, FIG. 9 schematically depicts an exemplary cooling plate 63 that is in thermal contact�concurrently�with two storage devices 62. A variety of configurations are possible, but as shown, the exemplary cooling plate 62 is in thermal contact at one surface 69 thereof with a storage device 62 and is in thermal contact at an opposed surface 70 thereof with another storage device 62. In many embodiments, the storage devices 62 are preferably thermally coupled to the cooling plate 63 so as to maximize the surface contact therebetween. In some implementations, a cooling plate can be in thermal contact, e.g., via conduction through physical contact, with at least 80%, and preferably 90%, or more preferably 100% of the area of a surface of at least one the storage devices. The mounting plates 71 can facilitate thermal coupling of the storage devices 62 to the cooling plate 63. In this embodiment, each mounting plate 62 includes a plurality of guiding tabs 75 configured to slidably engage with rails 78 on the sides of the cooling plate 63 to bring the storage device 62 in thermal contact with the cooling plate 63. Each mounting plate 71 can have a plurality of tabs 76 adapted to be removably attached to a storage device 62, e.g., via screws or an interference fit. A tab 77 at the top of the mounting plate 71 can contact the top surface of the cooling plate 63 when the cooling plate 63 is fully inserted into an enclosure 61 so as to ensure that a proper insertion depth is achieved, e.g., to ensure that the storage device 62 is properly positioned relative to the cooling plate 63 and that the I/O connector 73, if any, at the bottom of the storage device 62 (shown in FIG. 10) is properly engaged to the PCB 65. In this manner, the storage devices 62 can be removably and replaceably mounted to the enclosure 61 with each storage device 62 forming a thermal connection with one of the cooling plates 63 and an electrical connection with the PCB 65. As shown in FIG. 10, in this embodiment the cooling plate 63 has a plurality of internal fluid channels 79 and 80 through which a cooling fluid (e.g., water or other liquid or gas) can flow to transfer heat, extracted by the cooling plate 63 from the storage devices 62 to which it is thermally coupled, to a heat exchanging device. More specifically, and with reference to FIGS. 7 and 10, the internal fluid channels 79, 80 of the cooling plates 63 can be connected via fluid ports 81, 82, disposed below the PCB 65, to a plurality of tubes 83 (not shown in their entirety), which are also disposed below the PCB 65, to one of the two heat exchanging devices 67, 68. One of the fluid ports 81, 82 of each cooling plate 63 can function as an inlet port (e.g., port 81 shown in FIG. 7) to allow entry of the cooling fluid, e.g., from one of the heat exchanging devices or an upstream cooling plate, into the cooling plate 63. The other port can function as an outlet port (e.g., port 82 shown in FIG. 7) to allow the fluid to exit the cooling plate 63 after passage therethrough. The cooling plates 63 can be arranged in a plurality of rows such that the plates in each row are thermally coupled (via fluid flow) in series to one of the heat exchanging devices 67, 68 while the cooling plates 63 associated with different rows are coupled in parallel. Alternative coupling arrangements can be employed. For example, all of the cooling plates 63 in the enclosure 61 can be thermally coupled in series, or each cooling plate 63 can form a separate parallel thermal connection to a heat exchanging device. Flow control elements, such as valves or actuators, can be included in the tubes so that fluid flow through selected cooling plates can be stopped, regulated, or otherwise controlled, e.g., if they are not in use. In use, in many implementations, a continuous flow of a cooling fluid through the cooling plates removes heat from the storage devices so as to maintain an average temperature of the storage devices below a threshold, e.g., 35 degrees Celsius, and/or to maintain a peak temperature of the storage devices below a threshold, e.g., 45 degrees Celsius. The fluid can flow at virtually any rate. For example, in some embodiments the flow of the fluid through the cooling plates can be in the range of about 75 Lph to 190 Lph. In some embodiments, the flow rate can vary depending on the number of cooling plates 63 through which the cooling fluid is flowing. For example, the flow rate can be in a range of about 75 Lph to 115 Lph (e.g., if a relatively large number of cooling plates have fluid flowing through them) and in a range of about 150 Lph to 190 Lph (e.g., if relatively few of the cooling plates have fluid flowing through them). The efficient removal of heat from the storage devices allows packing a sufficient number of them in the enclosure so as to achieve a high storage density, e.g., in a range of about 100 Megabytes per cubic centimeter to about 1 Gigabytes per cubic centimeter, and preferably in a range of about 0.5 Gigabytes per cubic centimeter to about 10 Gigabytes per cubic centimeter, and more preferably 20 Gigabytes per cubic centimeter. FIGS. 11 and 12 depict an exemplary cooling plate 63 and mounting plate 71, respectively, in an isolation view, but with the same features previously described. The cooling plate 63 and the mounting plate 71 (as well as the enclosure 61) can be formed from a wide variety of materials, such as aluminum, copper, silver, gold, or alloys thereof, or any other material having suitable mechanical and thermal characteristics, e.g., a high thermal conductivity. Further, while both the cooling plate 63 and mounting plate 71 are illustrated as rectangular in shape, they can have virtually any shape, including shapes different than that of the storage device 62 (e.g., the cooling plate 63 need not extend to the edges of the storage device 62, or can wrap around the edges). The cooling plate 63 can have a thickness, meaning the dimension 84 shown in FIG. 11, of about 11 mm to 19 mm, or virtually any other thickness. The mounting plate 71 can have a minimal thickness, e.g., so as to transfer heat directly from the storage device to the cooling plate 63, but in some embodiments can have a thickness of about 0.8 mm to 1 mm. Another exemplary embodiment of a data storage system 90 is depicted in FIG. 13. In this embodiment, the data storage system 90 includes an enclosure 91 in which a plurality of storage devices 92 are mounted, two to a cooling plate 93. A heat exchanging device 94 can be provided inside a separate but attached enclosure 95. The heat exchanging device 94 can include one or more fluid pumps for circulating a cooling fluid, one or more cooling fluid reservoirs, and/or one or more radiators, any or all of which may be disposed in the enclosure 95. As previously discussed, the heat exchanging device 94 can be thermally coupled to the cooling plates 93 via a network of tubes and/or internal channels formed within the cooling plates 93 for circulation of a cooling fluid. FIG. 14 illustrates an exemplary arrangement of tubes 96 connecting two cooling plates 93, as seen from underneath the enclosure 91. The enclosure 91 of the data storage system 90 can also contain a controller 97, e.g., a system controller having processing circuitry, memory, and so on, for controlling and/or managing data communications and processing within the data storage system 90. Such a controller 97 can have any of the features previously described with respect to the controller 16 shown in FIGS. 1-5. Further, as shown in FIG. 14, the controller 97 can comprise one or more computer boards electrically coupled to the PCB 98 in the enclosure 91. In some embodiments, the controller 97 can be a single board computer, e.g., a Trenton Single Board Computer with an Intel Xeon processor supporting two x8 PCI Express and 2PCI-X slots. The controller 97 can include one or more input/output ports, such as a serial ATA ports, to support storage devices such as hard disks and CD-RW devices. In addition, the controller 97 can include high-speed data communication or network interfaces, e.g., one or more Gigabit Ethernet ports. In some embodiments the data storage system 90 can be configured as a RAID storage system, and the controller 97 can include one or more RAID controllers, such as an Areca serial ATARAID controller supporting up to 24 storage devices. In other embodiments, the data storage system 90 can include 48 storage devices and can have two RAID controllers. The use of multi-channel controller chips, e.g., the Marvell 4/8 channel SATA PCI-X controller chips, can allow for simultaneous communication with the controller system and with multiple storage devices. In addition, a power control board can be included for monitoring, conditioning, and/or controlling power signals for the controller 97 and the storage devices 93. In other aspects, the data storage system 90 shown in FIG. 13 can have any or all of the features previously described in connection with FIGS. 6-12. Those skilled in the art will appreciate that various modifications can be made to the above embodiments without departing from the scope of the invention. For example, the data storage capacity of each storage device utilized in a system of the invention can be different than those recited above.
Referenced byCiting PatentFiling datePublication dateApplicantTitleUS7840657 *Oct 31, 2006Nov 23, 2010Oracle America, Inc.Method and apparatus for power-managing storage devices in a storage poolUS7848106 *Apr 17, 2008Dec 7, 2010Teradyne, Inc.Temperature control within disk drive testing systemsUS7952882 *Oct 30, 2006May 31, 2011International Business Machines CorporationOn demand storage arrayUS8086816 *Oct 20, 2008Dec 27, 2011Dataram, Inc.Method for controlling performance aspects of a data storage and access routineUS8738936 *May 31, 2010May 27, 2014Fujitsu LimitedStorage apparatusUS8910234 *Aug 21, 2007Dec 9, 2014Schneider Electric It CorporationSystem and method for enforcing network device provisioning policyUS20090055897 *Aug 21, 2007Feb 26, 2009American Power Conversion CorporationSystem and method for enforcing network device provisioning policyUS20100325461 *May 31, 2010Dec 23, 2010Fujitsu LimitedStorage apparatusUS20110132579 *Aug 10, 2009Jun 9, 2011Green Revolution Cooling, Inc.Liquid Submerged, Horizontal Computer Server Rack and Systems and Method of Cooling such a Server RackEP1959334A2 *Jan 10, 2008Aug 20, 2008Hitachi, Ltd.Storage control device* Cited by examinerClassifications U.S. Classification361/679.33, G9B/33.038, G9B/33.034International ClassificationH05K7/20Cooperative ClassificationG11B33/142, G06F1/181, G06F1/20, G11B33/128, G06F1/3221, H05K7/20645European ClassificationG06F1/32P1C4, G11B33/12C2A, G06F1/18E, G11B33/14B2B, G06F1/20, H05K7/20R20CLegal EventsDateCodeEventDescriptionFeb 11, 2013FPAYFee paymentYear of fee payment: 4May 3, 2011ASAssignmentFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TEMPEST MICROSYSTEMS, INC.;REEL/FRAME:026214/0801Owner name: BIOTRONIX INC., CALIFORNIAEffective date: 20100715Oct 16, 2007ASAssignmentOwner name: TEMPEST MICROSYSTEMS, CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MOJAVER, MICHAEL;DONG, QUAN;FISK, IAN;AND OTHERS;REEL/FRAME:019968/0838;SIGNING DATES FROM 20070709 TO 20070821RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services

value: This website is a search engine provided by Google. Handling over 3.5 billion searches per day, it has a 92% share of the global search engine market.


text:
Mrs Ola Slaughter Montgomery (1882-1921) - Find A Grave Memorial
Mrs Ola Slaughter Montgomery
Birth 12 Feb 1882 Texas, USA
Death 17 Oct 1921 Dallas, Dallas County, Texas, USA
Memorial ID 64860696
Find A Grave Memorial 64860696
Find A Grave, database and images (https://www.findagrave.com : accessed ), memorial page for Mrs Ola Slaughter Montgomery (12 Feb 1882–17 Oct 1921), Find A Grave Memorial no. 64860696, citing Grove Hill Memorial Park, Dallas, Dallas County, Texas, USA ; Maintained by David Brasfield (contributor 47351842) .
Add Photos for Mrs Ola Slaughter Montgomery
your computer for Mrs Ola Slaughter Montgomery memorial.
I thought you might like to see a memorial for Mrs Ola Slaughter Montgomery I found on Findagrave.com.

type: global

value: This website is a website that allows the public to search and add to an online database of cemetery records. It is owned by Ancestry.com.


text:
dontsneeze comments on Best way to eat kratom - stir it into yoghurtjump to contentmy subredditsannouncementsArtAskRedditaskscienceawwblogbookscreepydataisbeautifulDIYDocumentariesEarthPornexplainlikeimfiveFitnessfoodfunnyFuturologygadgetsgamingGetMotivatedgifshistoryIAmAInternetIsBeautifulJokesLifeProTipslistentothismildlyinterestingmoviesMusicnewsnosleepnottheonionOldSchoolCoolpersonalfinancephilosophyphotoshopbattlespicsscienceShowerthoughtsspacesportstelevisiontifutodayilearnedTwoXChromosomesUpliftingNewsvideosworldnewsWritingPromptsedit subscriptionsfront-all-random | sports-gifs-history-photoshopbattles-food-Futurology-news-science-movies-books-explainlikeimfive-space-Showerthoughts-Art-EarthPorn-creepy-LifeProTips-pics-personalfinance-worldnews-Jokes-nottheonion-gadgets-IAmA-AskReddit-mildlyinteresting-OldSchoolCool-DIY-GetMotivated-philosophy-aww-askscience-Fitness-listentothis-tifu-gaming-nosleep-dataisbeautiful-UpliftingNews-Documentaries-TwoXChromosomes-WritingPrompts-todayilearned-television-funny-videos-Music-InternetIsBeautifulmore »reddit.com kratomcommentsrelatedwant to join? sign in or create an account in seconds|Englishlimit my search to /r/kratomuse the following search parameters to narrow your results:subreddit:subredditfind submissions in "subreddit"author:usernamefind submissions by "username"site:example.comfind submissions from "example.com"url:textsearch for "text" in urlselftext:textsearch for "text" in self post contentsself:yes (or self:no)include (or exclude) self postsnsfw:yes (or nsfw:no)include (or exclude) results marked as NSFWe.g. subreddit:aww site:imgur.com dogsee the search faq for details.advanced search: by author, subreddit...this post was submitted on 03 Feb 20137 points (74% upvoted)shortlink: remember mereset passwordloginSubmit a new linkSubmit a new text postkratomsubscribeunsubscribe4,787 readers~22 users here nowWe have added a resource guide that includes some of this community's most frequently asked questions. We are committed to keeping this updated and will include some of your best tips and suggestions to keep it relevant to you. Please feel free to share some of your expertise with us!
created by kevin143a community for 5 yearsmessage the moderatorsMODERATORSkevin143Ingenium13justbrown522AutoModeratorabout moderation team »678Best way to eat kratom - stir it into yoghurt (self.kratom)submitted 2 years ago by retronormative27 commentssharecancelsorry, this has been archived and can no longer be voted onloading...sorted by: besttopnewhotcontroversialoldrandomq & ayou are viewing a single comment's thread.view the rest of the comments →[–]dontsneeze 0 points1 point2 points 2 years ago (0 children)sorry, this has been archived and can no longer be voted onI prefer mixing it with a liquid instead of toss and wash. I've found that it's easiest to squirt a little lime juice in with the powder and mix it into a paste before adding the mixer (water, oj, whatever)
permalinkaboutblogaboutteamsource codeadvertisejobshelpwikiFAQreddiquetterulescontact ustoolsmobilefirefox extensionchrome extensionbuttonswidget<3reddit goldstoreredditgiftsreddit AMA appreddit.tvradio redditUse of this site constitutes acceptance of our User Agreement and Privacy Policy (updated). © 2015 reddit inc. All rights reserved.REDDIT and the ALIEN Logo are registered trademarks of reddit inc.create a new accountusername:password:verify password:email: (optional)remember mecreate accountsign inusername:password:remember mereset passwordsign inWe care about your privacy, and we never spam. By creating an account, you agree to reddit's User Agreement and Privacy Policy. We're proud of them, and you should read them.English [en]العربية [ar]Беларуская мова [be]български език [bg]Bosanski [bs]català [ca]česky [cs]dansk [da]Deutsch [de]Ελληνικά [el]English (Australia) [en-au]English (Canadian) [en-ca]English (Great Britain) [en-gb]English [en-us]Esperanto [eo]español [es]español [es-ar]eesti keel [et]Euskara [eu]فارسی [fa]suomi [fi]français [fr]Gàidhlig [gd]עברית [he]मानक हिन्दी [hi]hrvatski [hr]Magyar [hu]Հայերեն լեզու [hy]Bahasa Indonesia [id]íslenska [is] (*)italiano (Italy) [it]日本語 [ja]ಕನ್ನಡ [kn_IN]한국어 [ko]Latin [la]1337 [leet]LOL [lol]lietuvių kalba [lt]latviešu valoda [lv]Nederlands [nl]Nynorsk [nn]Norsk [no]Arrrrrrrr! [pir]polski [pl]português [pt] (*)português [pt-pt]português brasileiro [pt_BR]română [ro]русский [ru]slovenčina [sk]slovenščina [sl]српски језик [sr]Srpski [sr-la]Svenska [sv]தமிழ் [ta]ภาษาไทย [th]Türkçe [tr]українська мова [uk]Tiếng Việt [vi]中文 [zh] (*) incomplete volunteer to translateπ Rendered by PID 16990 on app-129 at 2015-02-27 17:11:00.354546+00:00 running 160e947 country code: US.

value: This website is an American social news aggregation, web content rating, and discussion website. Registered members submit content to the site such as links, text posts, images, and videos, which are then voted up or down by other members.


text:
Antique Mother of Pearl Opera Glasses Binoculars Victorian Theatre | eBay
Details about Antique Mother of Pearl Opera Glasses Binoculars Victorian Theatre
Antique Mother of Pearl Opera Glasses Binoculars Victorian Theatre
01 Dec, 2017 19:46:11 GMT
darcymorganinteriors (2594 )
Rare Antique French Floral Opera Glasses with Mother of Pearl Lorgnette Handle
ANTIQUE 1890’s MOTHER OF PEARL FRENCH OPERA GLASSES
ANTIQUE 1890’s LEATHER COVERED FRENCH OPERA GLASSES
Vintage Folding Opera Glasses 2.5x25mm By Sport Glass
Antique French Telescopic Mother of Pearl IRIS Opera glasses 1890
VINTAGE ANTIQUE OPERA GLASSES BINOCULARS, MILITARY
172992142479
Period: 1800 to 1900 Sub-Type: Lorgnettes/ Opera Glasses
Country/Region of Manufacture: Unknown Material: Mother of Pearl

value: This website is an American multinational e-commerce corporation based in San Jose, California, that facilitates consumer-to-consumer and business-to-consumer sales through its website.


text: Re: Source field add-in, as a favor Yes, it was a ghost of the past system, no longer updated and increasingly confusing to people now that there are 1000+ new shows since the switchover.

value: This website is an American digital library with the stated mission of "universal access to all knowledge". It provides free public access to collections of digitized materials, including websites, software applications/games, music, movies/videos, moving images, and millions of books.


text:
Environmental Costs and Benefits of Transgenic Crops: Springer 9781402032479 Hardcover - BuySomeBooks
ISBN 10: 1402032471 / ISBN 13: 9781402032479 Published by Springer
Hardcover. 269 pages. Dimensions: 9.4in. x 6.4in. x 0.8in.Concern about the environmental impacts of transgenic crops is one of the major reasons for the EUs quasi-moratorium on GMOs. This book shows that the economic implications of these concerns are far-reaching and complex, ranging from the farm to research and technology development to consumer reactions, and that they influence government response, international trade and public and private incentives for R and D. This item ships from multiple locations. Your book may arrive from Roseburg,OR, La Vergne,TN. Bookseller Inventory # 9781402032479
Title: Environmental Costs and Benefits of ...
Concern about the environmental impacts of transgenic crops is one of the major reasons for the EU?s quasi-moratorium on GMOs. This book shows that the economic implications of these concerns are far-reaching and complex, ranging from the farm to research and technology development to consumer reactions, and that they influence government response, international trade and public and private incentives for R & D. "About this title" may belong to another edition of this title.

value: This website is an e-commerce global online marketplace with seven websites that offer books, fine art, and collectables from sellers in over 50 countries. Launched in 1996, it specialises in used, rare and out-of-print books.


text:
.NET Internals and Native Compiling - CodeProject 11,477,625 members (74,853 online)
I discovered Qt (4) not long ago. It was an incredible relief coming from 6 or more years of MFC. I also believe that Qt4 beats Winforms in GUI programming (I'm not talking about WPF because I don't think it's a practical way for standard GUI programming). .NET has some good things when considering GUI programming, but the refreshing Qt approach is something new for me. Last Visit: 31-Dec-99 19:00 Last Update: 21-May-15 22:06Refresh1

value: This website is a community for computer programmers with articles on different topics and programming languages such as web development, software development, C++, Java, and other topics. Once a visitor registers a user account on the site, they can gain reputation which allows users to unlock different privileges such as the ability to store personal files in the user's account area, have live hyperlinks in their profile biography, and more.


text:
JoeFelice comments on What time is it when you're out of ice cream?jump to contentmy subredditsannouncementsArtAskRedditaskscienceawwblogbookscreepydataisbeautifulDIYDocumentariesEarthPornexplainlikeimfiveFitnessfoodfunnyFuturologygadgetsgamingGetMotivatedgifshistoryIAmAInternetIsBeautifulJokesLifeProTipslistentothismildlyinterestingmoviesMusicnewsnosleepnottheonionOldSchoolCoolpersonalfinancephilosophyphotoshopbattlespicsscienceShowerthoughtsspacesportstelevisiontifutodayilearnedTwoXChromosomesUpliftingNewsvideosworldnewsWritingPromptsedit subscriptionsfront-all-random | Art-listentothis-sports-AskReddit-LifeProTips-philosophy-books-tifu-news-nosleep-food-mildlyinteresting-WritingPrompts-photoshopbattles-askscience-worldnews-aww-nottheonion-videos-history-gadgets-Jokes-space-todayilearned-gifs-IAmA-DIY-Futurology-Fitness-gaming-Music-science-television-InternetIsBeautiful-UpliftingNews-OldSchoolCool-Showerthoughts-personalfinance-dataisbeautiful-creepy-movies-Documentaries-EarthPorn-funny-pics-GetMotivated-explainlikeimfive-TwoXChromosomesmore » picscommentsrelatedother discussions (1)want to join? sign in or create an account in seconds|Englishlimit my search to /r/picsuse the following search parameters to narrow your results:subreddit:subredditfind submissions in "subreddit"author:usernamefind submissions by "username"site:example.comfind submissions from "example.com"url:textsearch for "text" in urlselftext:textsearch for "text" in self post contentsself:yes (or self:no)include (or exclude) self postsnsfw:yes (or nsfw:no)include (or exclude) results marked as NSFWe.g. subreddit:aww site:imgur.com dogsee the search faq for details.advanced search: by author, subreddit...this post was submitted on 22 Nov 20111,656 points (94% upvoted)shortlink: remember mereset passwordloginSubmit a new linkpicsunsubscribesubscribe7,410,846 readers9,354 users here nowA place to share photographs and pictures. Feel free to post your own, but please read the rules first (see below), and note that we are not a catch-all for general images (of screenshots, comics, etc.)
a community for 6 yearsmessage the moderatorsMODERATORSqgyh2krispykrackersBritishEnglishPoliceTbluejamt9000nullrenGuitarFreak027roger_roger_botThe_watchdogamynoacid...and 12 more »165516561657What time is it when you're out of ice cream? (img267.imageshack.us)submitted 3 years ago by -Slade-326 commentssharecancelsorry, this has been archived and can no longer be voted onloading...sorted by: bestbesttopnewhotcontroversialoldrandomyou are viewing a single comment's thread.view the rest of the comments →[–]JoeFelice 16 points17 points18 points 3 years ago (0 children)sorry, this has been archived and can no longer be voted onCan I go now?
permalinkparentaboutblogaboutteamsource codeadvertisejobshelpwikiFAQreddiquetterulescontact ustoolsmobilefirefox extensionchrome extensionbuttonswidget<3reddit goldstoreredditgiftsreddit AMA appreddit.tvradio redditUse of this site constitutes acceptance of our User Agreement and Privacy Policy. © 2014 reddit inc. All rights reserved.REDDIT and the ALIEN Logo are registered trademarks of reddit inc.close this windowyou'll need to sign in or create an account to do thatcreate a new accountusername:password:verify password:email: (optional)remember mecreate accountsign inusername:password:remember mereset passwordsign inWe care about your privacy, and we never spam. By creating an account, you agree to reddit's User Agreement and Privacy Policy. We're proud of them, and you should read them.close this windowinterface languageEnglish [en]العربية [ar]Беларуская мова [be]български език [bg]Bosanski [bs]català [ca]česky [cs]dansk [da]Deutsch [de]Ελληνικά [el]English (Australia) [en-au]English (Canadian) [en-ca]English (Great Britain) [en-gb]English [en-us]Esperanto [eo]español [es]español [es-ar]eesti keel [et]Euskara [eu]فارسی [fa]suomi [fi]français [fr]Gàidhlig [gd]עברית [he]मानक हिन्दी [hi]hrvatski [hr]Magyar [hu]Հայերեն լեզու [hy]Bahasa Indonesia [id]íslenska [is] (*)italiano (Italy) [it]日本語 [ja]ಕನ್ನಡ [kn_IN]한국어 [ko]Latin [la]1337 [leet]LOL [lol]lietuvių kalba [lt]latviešu valoda [lv]Nederlands [nl]Nynorsk [nn]Norsk [no]Arrrrrrrr! [pir]polski [pl]português [pt] (*)português [pt-pt]português brasileiro [pt_BR]română [ro]русский [ru]slovenčina [sk]slovenščina [sl]српски језик [sr]Srpski [sr-la]Svenska [sv]தமிழ் [ta]ภาษาไทย [th]Türkçe [tr]українська мова [uk]Tiếng Việt [vi]中文 [zh] (*) incomplete volunteer to translateπ Rendered by PID 17468 on app-74 at 2014-12-27 08:03:19.047200+00:00 running 2f44fc3 country code: US.


text:
oorza comments on Making my own cart system and would like you guys to critique.jump to contentmy subredditsannouncementsArtAskRedditaskscienceawwblogbookscreepydataisbeautifulDIYDocumentariesEarthPornexplainlikeimfiveFitnessfoodfunnyFuturologygadgetsgamingGetMotivatedgifshistoryIAmAInternetIsBeautifulJokesLifeProTipslistentothismildlyinterestingmoviesMusicnewsnosleepnottheonionOldSchoolCoolpersonalfinancephilosophyphotoshopbattlespicsscienceShowerthoughtsspacesportstelevisiontifutodayilearnedTwoXChromosomesUpliftingNewsvideosworldnewsWritingPromptsedit subscriptionsfront-all-random | WritingPrompts-Documentaries-funny-tifu-TwoXChromosomes-Music-history-worldnews-movies-videos-pics-Jokes-books-gaming-space-Fitness-Showerthoughts-gifs-news-OldSchoolCool-Art-todayilearned-askscience-gadgets-AskReddit-IAmA-EarthPorn-UpliftingNews-nosleep-GetMotivated-LifeProTips-personalfinance-mildlyinteresting-InternetIsBeautiful-science-listentothis-Futurology-aww-nottheonion-television-sports-philosophy-explainlikeimfive-photoshopbattles-dataisbeautiful-creepy-food-DIYmore »reddit.com PHPcommentsrelatedwant to join? login or register in seconds|Englishlimit my search to /r/PHPuse the following search parameters to narrow your results:subreddit:subredditfind submissions in "subreddit"author:usernamefind submissions by "username"site:example.comfind submissions from "example.com"url:textsearch for "text" in urlselftext:textsearch for "text" in self post contentsself:yes (or self:no)include (or exclude) self postsnsfw:yes (or nsfw:no)include (or exclude) results marked as NSFWe.g. subreddit:aww site:imgur.com dogsee the search faq for details.advanced search: by author, subreddit...this post was submitted on 10 Oct 20118 points (75% upvoted)shortlink: remember mereset passwordloginSubmit a new linkSubmit a new text postPHPsubscribeunsubscribe31,683 readers~63 users here nowSubreddit FAQ
a community for 6 yearsmessage the moderatorsMODERATORSDaleeburgHattoriHanzofrozenfireDocsColonel-Rosa/r/php moderatorjtreminioDon't listen to medshafikAutoModerator789Making my own cart system and would like you guys to critique. (self.PHP)submitted 2 years ago * by Who_Needs_College33 commentssharecancelsorry, this has been archived and can no longer be voted onloading...sorted by: bestbesttopnewhotcontroversialoldrandomyou are viewing a single comment's thread.view the rest of the comments →[–]oorza 5 points6 points7 points 2 years ago (11 children)sorry, this has been archived and can no longer be voted on
You should not be writing your own eCommerce software. There are 10 trillion existing software packages and they're all better than something you're going to write yourself (or anyone, really). I'm going to assume you aren't actually planning on using this anywhere, but rather this is an exercise for you.
You use a dirty, dirty superglobal all over the place. The primary benefits to writing OOP code are data encapsulation and logic encapsulation. By directly accessing the superglobal like you are, you're removing both benefits - the data isn't encapsulated because it's in a superglobal variable and the logic isn't encapsulated because it will have to leak outside of the class, wherever you use the members you create in the session variable. You should clean this up so that an instance of this class is self-contained and keeps track of its own data. Later, when you are using an instance of this class somewhere, you can put that in the session variable if you'd like. Your object doesn't seem to keep track of any useful state of its own, why is it a class? This looks more like a collection of functions that operate on a dirty, dirty superglobal, rather than a well designed object.
Minor point, but capitalizing the first letter of keywords (Function, True, etc.) is pretty weird and you won't see it very often. I suggest switching to lowercase keywords (function, true, etc.) because they're more consistent with standard php practice and most other languages also have lowercase keywords.
if($_SESSION['cart'] ['itemcount'] < $_SESSION ['cart'] ['maxCartItems']){
return $_SESSION['cart'] ['itemcount'] < $_SESSION ['cart'] ['maxCartItems'];
There's really not much else to comment on.
permalink[–]gaoshan 2 points3 points4 points 2 years ago (0 children)sorry, this has been archived and can no longer be voted on
and they're all better than something you're going to write yourself
I take it you're not familiar with oscommerce? Here is a picture of its codebase.
permalinkparent[–]Who_Needs_College[S] 0 points1 point2 points 2 years ago (1 child)sorry, this has been archived and can no longer be voted on
Correct this is just practice.
So how should I be storing the values? Should they remain in the session and pull the entire cart into the class and do what I need to do and then export it back out to the session?
permalinkparent[–]oorza 0 points1 point2 points 2 years ago (0 children)sorry, this has been archived and can no longer be voted onI'd store the values as members of the instance itself, e.g. $this->items or $this->initialized and then put the entire $cart instance in $_SESSION...
$cart->addItem("foo", 12); //buy 12 foos
This allows you to keep track of the cart itself (everything would be encapsulated) without losing any functionality - instead, you'd gain some, as you could very easily change the backing storage of your cart from $_SESSION to a database or something else. And because everything would be encapsulated, you've more closely adhered to best practice and your code is more "correct."
permalinkparent[–]Jack9 0 points1 point2 points 2 years ago (7 children)sorry, this has been archived and can no longer be voted on
Minor point, but capitalizing the first letter of keywords (Function, True, etc.) is pretty weird and you won't see it very often. The reason you don't want to do this is that it causes an extra substitution by the compiler/interpreter. True has to get converted to TRUE.
if($_SESSION['cart'] ['itemcount'] < $_SESSION ['cart'] ['maxCartItems']){
What anti-pattern is this?
permalinkparent[–][deleted] 0 points1 point2 points 2 years ago (1 child)sorry, this has been archived and can no longer be voted onToo many curly brackets antipattern? :)
permalinkparent[–]rich97 0 points1 point2 points 2 years ago (0 children)sorry, this has been archived and can no longer be voted onSome style guidelines (like the ones I follow) enforce it.
permalinkparent[–]oorza 0 points1 point2 points 2 years ago* (4 children)sorry, this has been archived and can no longer be voted onI don't know if there's a name for it, but it's basically:
Also, at the point where you care about the compiler doing text transformations, your performance requirements have far exceeded anything you should be doing with an interpreted language.
permalinkparent[–]Jack9 0 points1 point2 points 2 years ago (3 children)sorry, this has been archived and can no longer be voted on
I don't know if there's a name for it, but it's basically:
You're probably looking for "Gold Plating". However, that's not accurate, for this case or any case of using a ternary or inline boolean evaluation. It makes a (bad) pre-optimized assumption that your boolean test will not change. It's much less likely the case (context) will change than the terms being evaluated or the actions necessary to prepare the terms. The expanded form is always more readable and ultimately better for maintenance, in my experience.
permalinkparent[–]oorza 2 points3 points4 points 2 years ago (2 children)sorry, this has been archived and can no longer be voted onI'm not sure if I agree with your assertion that the long form is more maintainable than the short form. Take some statement stmt that is a boolean statement - just something that returns a boolean (comparison, function call, whatever), can you explain how this:
is somehow more maintainable than:
Unless you have to do something with the result of your statement prior to returning (in which case we wouldn't be talking about it), what does the extra cruft actually add? If you have to change stmt, you have to change it, doesn't matter if it's wrapped with an if or part of a return statement.
permalinkparent[–]Jack9 0 points1 point2 points 2 years ago (1 child)sorry, this has been archived and can no longer be voted on
permalinkparent[–]oorza 5 points6 points7 points 2 years ago (0 children)sorry, this has been archived and can no longer be voted onI don't agree that it's a good idea to add unnecessary noise to your source code on the unlikely chance that you're going to have to add functionality in the future. I try not to write code under the assumption that it's insufficient (or will become insufficient) and without that assumption, I can't see how this decision is logical. How frequently do you wind up actually inserting things into the if and else blocks? You're talking about expecting to refactor every boolean return statement you make! And even if you did - the handful of keystrokes you save from having to expand the shorter return statement, imo, is not worth the decrease in readability and the increase in source clutter. Furthermore, for someone who mentions text transformation in PHP... given that PHP is a non-optimizing language, the expanded form is actually more opcodes to be executed than the short form.
username:try anotheravailable!account recovery email: (optional)we only send email at your requestpassword:verify password:remember mecreate accountis it really that easy? only one way to find out...loginalready have an account and just want to login?username:password:remember merecover passwordloginclose this windowinterface languageEnglish [en]العربية [ar]Беларуская мова [be]български език [bg]Bosanski [bs]català [ca]česky [cs]dansk [da]Deutsch [de]Ελληνικά [el]English (Australia) [en-au]English (Canadian) [en-ca]English (Great Britain) [en-gb]English [en-us]Esperanto [eo]español [es]español [es-ar]eesti keel [et]Euskara [eu]فارسی [fa]suomi [fi]français [fr]Gàidhlig [gd]עברית [he]मानक हिन्दी [hi]hrvatski [hr]Magyar [hu]Հայերեն լեզու [hy]Bahasa Indonesia [id]íslenska [is] (*)italiano (Italy) [it]日本語 [ja]ಕನ್ನಡ [kn_IN]한국어 [ko]Latin [la]1337 [leet]LOL [lol]lietuvių kalba [lt]latviešu valoda [lv]Nederlands [nl]Nynorsk [nn]Norsk [no]Arrrrrrrr! [pir]polski [pl]português [pt] (*)português [pt-pt]português brasileiro [pt_BR]română [ro]русский [ru]slovenčina [sk]slovenščina [sl]српски језик [sr]Srpski [sr-la]Svenska [sv]தமிழ் [ta]ภาษาไทย [th]Türkçe [tr]українська мова [uk]Tiếng Việt [vi]中文 [zh] (*) incomplete volunteer to translateπ Rendered by PID 30304 on app-13 at 2014-09-20 14:53:11.425692+00:00 running c7be8f7 country code: US.


text:
L431 Classic Large Square Plastic Reading Glasses Metal Decoration Designed Arms | eBay
L443 Superb Quality Reading Glasses/ Spring Hinges & Double Bridge Classic Style
L44 Classic Square Metal Frame Reader With Hard Case/Designed Bridge/Spring Arms
L35 Metal Reading glasses/Spring Hinges/Classic Style Designed
L36 Unisex Metal Frame Reading Glasses & Spring Hinges & Classic Style Designed
gorblefashion (117029 )
Details about L431 Classic Large Square Plastic Reading Glasses Metal Decoration Designed Arms
-Select- Black Demi Grey Demi Inner Black Grey Black X 3Pairs Demi X 3Pairs Grey Demi X 3Pairs Inner Black X 3Pairs Grey X 3Pairs Black+Demi+Grey Demi Black+Demi+Inner Black Black+Demi+Grey Black+Grey Demi+Inner Black Black+Grey Demi+Grey Black+Inner Black+Grey Demi+Grey Demi+Inner Black Demi+Inner Black+Grey Grey Demi+Demi+Grey Grey Demi+Inner Black+Grey
-Select- +0.50 +0.75 +1.00 +1.25[out of stock] +2.00 +2.25 +2.50 +2.75 +3.00 +3.25 +3.50 +3.75 +4.00
221251902811
Last updated on 16 Dec, 2019 02:02:32 AEDST View all revisions
There are 46,782 items available. Please enter a number less than or equal to 46,782.
Fantastic, many thanks! !
Quite simply OUTSTANDING.SERVICE !
Not large actually small
items arrived today , Thank You


text:
Search results for Map, Mali, Image, Available Online | Library of Congress
Results: 1-5 of 5 | Refined by: Original Format: Map Remove Online Format: Image Remove Access Condition: Available Online Remove

value: This website is the research library that officially serves the United States Congress and is the de facto national library of the United States. It is the oldest federal cultural institution in the United States.


text:
bbadgett: User review threads: Digital Photography Review
bbadgett has not written any reviews.
Features2.98KUpdated with studio testsCanon EOS 5DS / 5DS R First Impressions ReviewWhat's that Noise?Shedding some light on the sources of noise443real world samplesCanon EOS 5DS R Gallery268Hands-onOlympus Pro 8mm and 7-14mm lenses60Readers' ShowcaseSheila Murphy500Speed BoostSony SLT-A77 II Review87VideoTamron SP 15-30mm F2.8 Field Test1.24KIn a Class of its ownSamsung NX1 Review342Touch and goNikon D5500 Review303Can we get much wider?Canon EF 11-24mm F4 L USM gallery65Real-world Sample GallerySony SLT-A77 IIIn-depth reviewOM sweet OM: Olympus OM-D E-M10Tips from travel photographer Steve Davey More accurate color with camera calibration 50MP medium-format beastPentax 645Z hands on 244Real-world sample gallerySony Alpha 7 II137Light Field Cameras Focusing on the Future30Readers' ShowcaseNature and WildlifeShow me the lightPhottix Mitros flash for Canon reviewIn-depth reviewFor starters: Nikon D3300263Hands-onFujifilm's XF 16-55mm F2.8 R LM WR

value: This website is a website about digital cameras and digital photography, established in November 1998. The website provides comprehensive reviews of digital cameras, lenses and accessories, buying guides, user reviews, and forums for individual cameras, as well as general photography forums.


text:
Protein Links for Nucleotide (Select 28212469) - Protein - NCBI
Select item 1550302111.major histocompatibility complex, class II, DR beta 1 precursor [Homo sapiens]266 aa proteinAccession: NP_002115.2 GI: 155030211 GenPeptIdentical ProteinsFASTAGraphicsSelect item 186413752.major histocompatibility complex, class II, DR beta 5 precursor [Homo sapiens]266 aa proteinAccession: NP_002116.2 GI: 18641375 GenPeptIdentical ProteinsFASTAGraphics
Turn Off Turn On Protein Links for Nucleotide (Select 28212469) (2)

value: This website is part of the United States National Library of Medicine , a branch of the National Institutes of Health . It is approved and funded by the government of the United States.


text:
The Buddha in the Attic and over one million other books are available for Amazon Kindle. Learn more Enter your mobile number below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.Getting the download link through email is temporarily not available. Please check back later.
Buy the selected items togetherThis item:The Buddha in the Attic (Pen/Faulkner Award - Fiction) by Julie Otsuka Paperback $9.68 In Stock.Ships from and sold by Amazon.com.FREE Shipping on orders over $25. DetailsWhen the Emperor Was Divine by Julie Otsuka Paperback $8.01 In Stock.Ships from and sold by Amazon.com.FREE Shipping on orders over $25. DetailsThe Great Gatsby by F. Scott Fitzgerald Paperback $11.64 In Stock.Ships from and sold by Amazon.com.FREE Shipping on orders over $25. Details
Average Customer Review: 3.7 out of 5 stars See all reviews (833 customer reviews)
Amazon Best Sellers Rank: #9,548 in Books (See Top 100 in Books)
Loved it. Quick read. The only reason it isn't a 5-star is because I felt like it ended too quickly/abruptly
Published 4 days ago by Kristy Snow
5.0 out of 5 starsPoetic.
This book is one beautiful poem that depicts such injustice done to he Japanese people. Beautifully crafted historical insight. Loved it.
Did not like the way this story was written.
I liked this booked.
Published 15 days ago by Shaine S.
1.0 out of 5 starsand great literature is not about the average
Using the "We" voice seems to have excited some readers who think that by doing so, the author manages to speak for all immigrant women.
Published 23 days ago by M. R. Paulsen
4.0 out of 5 starsVery interesting in narrative style, in first-person plural...
Very interesting in narrative style, in first-person plural mostly--"we" did many things, occadionally switching to third-person "they.
Published 28 days ago by Lindon
4.0 out of 5 starsGood perspective on treatment of Japanese Americans.
This book provides good insight into the plight of Japanese Americans during WWII.
Published 1 month ago by C J Schloetzer
3.0 out of 5 starsSome of us felt cheated
This book was a book club choice, and again, I feel like its focus was for an elitist group. Another book that received accolades, yet failed to deliver for me.
Published 1 month ago by Denise Baer
2.0 out of 5 starsI found the writing style a little tedious. I kept waiting for a real...
Even though I was eager to keep reading the book, I found the writing style a little tedious. I kept waiting for a real story to emerge.

value: This website is an American multinational technology company which focuses on e-commerce, cloud computing, digital streaming, and artificial intelligence.


text:
. >> in world knows. egypt republican guard has ordered protesters supporting and opposing president mohammed morsi to leave the area all around the presidential palace that has been the site of fierce clashes. the guard a protesters on both sides time to clear up. at least five people were killed in fighting between islamic supporters of morsi and opponents. thursday's ultimatum comes then an official statement that also announced a ban on protests outside any of the nation's presidential palaces. >> the death toll from the typhoon that hit the southern philippines has climbed to a 350 people today in nearly four as a people are still missing. the typhoon hit hardest in the southern philippine area. government officials say entire families were washed away. >> nato has called on north korea to cancel its plans for a second rocket launch. ambassador said yesterday that the launch would violate you in resolutions and could dast to belies the korean peninsula. north korea's state news agency announced their decision to launch a space satellite on saturday. russia and china both urged north kore KRON 4 Morning News
mohamed morsi and bill and hillary clinton. >> at this as for the past 85 years, time and then select the person or persons if editors didn't have the single greatest impact during the past year. >> let us take a look at a heavenly. we have jim mcalpine their. conditions are top-notch we sketched squaw yesterday's we are heading to alpine. the cold is bring amazingly good stow. we have is moderate with some sunshine than what every skier bucks to hear multiple power days ahead. >> a quick check of a 7 day for cash on a sponsor coming here it will be snow in the sierras respecting rain thursday, friday, saturday, and sunday will range hours on christmas eve. >> we will see you back here tomorrow morning. the letter. >> dr. Search Results 0 to 1 of about 2


text:
Yao Weixing - Semantic Scholar
Yao Weixing
On the fatigue notch factor, Kf
Yao Weixing, Xia Kaiquan, Gu Yi
Abstract This paper reviews the fatigue notch factor, K f , and some expressions for it that are in current use. All the expressions for K f can be classified into one of three types: the average… (More)
Abstract In this paper a new design approach for predicting fatigue life—the stress field intensity approach—is presented from the point of view of macromechanics on the basis of the mechanism of… (More)
XVII International Colloquium on Mechanical Fatigue of Metals (ICMFM17) Synergistic Damage Mechanic Model for Stiffness Properties of Early Fatigue Damage in Composite Laminates
Shen Haojie, Yao Weixing, Wu Yitao
In the initial period of the life in the composite laminates, the principal types of damage are diffused ones, such as matrix crack, diffused fiber breaking and local delamination. On account of… (More)
WEIGHTED LEAST SQUARE METHOD FOR S-N CURVE FITTING
An S-N curve fitting approach is proposed based on the weighted least square method, and the weights are inversely proportional to the length of mean confidence intervals of experimental data sets.… (More)
Equivalent bending stiffness method for stacking sequence optimization of composite stiffened panel
A stacking sequence optimization design approach of composite stiffened panel was built up based on equivalent bending stiffness method and Genetic Algorithms(GA).Very well known the fact that one… (More)
The use of fractal dimensions in the prediction of residual fatigue life of pre-corroded aluminum alloy specimens
Zhang Hua Chuan, Chen Yanhui, Yao Weixing
Abstract The method of using fractal dimension of corroded surface to predict residual lives of pre-corroded specimens is illustrated in this paper. A new technique to calculate 3D fractal dimension… (More)
RESEARCH ON FATIGUE PROPERTIES OF GLASS FIBER REINFORCED RESIN COMPOSITE
The fatigue properties of glass fiber reinforced resin laminates were investigated by using MTS809 servo-hydraulic fatigue testing machine to test laminate specimens of varied lamina designs. The… (More)
Numerical Simulation of Electromagnetic Scattering for Wing Structures with Low Observability
The low observable structure is a type of the structures which consist of skin and various internal materials, and have low radar cross section (RCS) together with the considerations of their stress… (More)
Residual stiffness-residual strength coupled model of composite laminates
A coupled model of residual stiffness-residual strength was presented under the assumption that the strength and stiffness of the laminates are degraded in fatigue process due to the same damage… (More)
PROGRESS IN RESEARCH ON FEA MODELS OF ADHESIVELY BONDED COMPOSITE JOINTS
The strength analysis methods of adhesive bonded structure can be classified into two types, i.e., analytical method and numerical method, and the numerical method is mainly finite element method. In… (More)

value: This website is an artificial-intelligence backed search engine for academic publications developed at the Allen Institute for AI and publicly released in November 2015. It uses advances in natural language processing to provide summaries for scholarly papers.