scispace - formally typeset
Search or ask a question

Showing papers by "Amazon.com published in 2009"


Proceedings ArticleDOI
16 Aug 2009
TL;DR: VL2 is a practical network architecture that scales to support huge data centers with uniform high capacity between servers, performance isolation between services, and Ethernet layer-2 semantics, and is built on a working prototype.
Abstract: To be agile and cost effective, data centers should allow dynamic resource allocation across large server pools. In particular, the data center network should enable any server to be assigned to any service. To meet these goals, we present VL2, a practical network architecture that scales to support huge data centers with uniform high capacity between servers, performance isolation between services, and Ethernet layer-2 semantics. VL2 uses (1) flat addressing to allow service instances to be placed anywhere in the network, (2) Valiant Load Balancing to spread traffic uniformly across network paths, and (3) end-system based address resolution to scale to large server pools, without introducing complexity to the network control plane. VL2's design is driven by detailed measurements of traffic and fault data from a large operational cloud service provider. VL2's implementation leverages proven network technologies, already available at low cost in high-speed hardware implementations, to build a scalable and reliable network architecture. As a result, VL2 networks can be deployed today, and we have built a working prototype. We evaluate the merits of the VL2 design using measurement, analysis, and experiments. Our VL2 prototype shuffles 2.7 TB of data among 75 servers in 395 seconds - sustaining a rate that is 94% of the maximum possible.

2,350 citations


Journal ArticleDOI
Werner Vogels1
TL;DR: Building reliable distributed systems at a worldwide scale demands trade-offs between consistency and availability.
Abstract: Building reliable distributed systems at a worldwide scale demands trade-offs between consistency and availability.

1,060 citations


Patent
02 Sep 2009
TL;DR: In this paper, a user interface for a touch-screen display of a dedicated handheld electronic book reader device is described, which detects human gestures manifest as pressure being applied by a finger or stylus to regions on the touch screen display.
Abstract: A user interface for a touch-screen display of a dedicated handheld electronic book reader device is described. The user interface detects human gestures manifest as pressure being applied by a finger or stylus to regions on the touch-screen display. In one implementation, the touch-screen user interface enables a user to turn one or more pages in response to applying a force or pressure to the touch-screen display. In another implementation, the touch-screen user interface is configured to bookmark a page temporarily by applying a pressure to the display, then allowing a user to turn pages to a new page, but reverting back to a previously-displayed page when the pressure is removed. In another implementation, the touch-screen user interface identifies and filters electronic books based on book size and/or a time available to read a book. In another implementation, the touch-screen user interface converts text to speech in response to a user touching the touch-screen display.

506 citations


Patent
Jeffrey P. Bezos1
20 Nov 2009
TL;DR: In this paper, the detection of relative motion or orientation between a user and a computing device can be used to control aspects of the device, such as position, shape, separation, and orientation.
Abstract: The detection of relative motion or orientation between a user and a computing device can be used to control aspects of the device. For example, the computing device can include an imaging element and software for locating positions, shapes, separations, and/or other aspects of a user's facial features relative to the device, such that an orientation of the device relative to the user can be determined. A user then can provide input to the device by performing actions such as tilting the device, moving the user's head, making a facial expression, or otherwise altering an orientation of at least one aspect of the user with respect to the device. Such an approach can be used in addition to, or as an alternative to, conventional input devices such as keypads and touch screens.

374 citations


Journal ArticleDOI
TL;DR: It is found that soil fertility to be the most important predictor, influencing all leaf nutrient concentrations and δ13C and reducing MA, and species that tend to occupy higher fertility soils are characterised by a lower MA and have a higher intrinsic [N], [P], [K], [Mg] and ε13C than their lower fertility counterparts.
Abstract: . We analysed 1040 individual trees, located in 62 plots across the Amazon Basin for leaf mass per unit area (MA), foliar carbon isotopic composition (δ13C) and leaf level concentrations of C, N, P, Ca, Mg, K and Al. All trees were identified to the species level with the dataset containing 58 families, 236 genera and 508 species, distributed across a wide range of soil types and precipitation regimes. Some foliar characteristics such as MA, [C], [N] and [Mg] emerge as highly constrained by the taxonomic affiliation of tree species, but with others such as [P], [K], [Ca] and δ13C also strongly influenced by site growing conditions. By removing the environmental contribution to trait variation, we find that intrinsic values of most trait pairs coordinate, although different species (characterised by different trait suites) are found at discrete locations along a common axis of coordination. Species that tend to occupy higher fertility soils are characterised by a lower MA and have a higher intrinsic [N], [P], [K], [Mg] and δ13C than their lower fertility counterparts. Despite this consistency, different scaling patterns were observed between low and high fertility sites. Inter-relationships are thus substantially modified by growth environment. Analysing the environmental component of trait variation, we found soil fertility to be the most important predictor, influencing all leaf nutrient concentrations and δ13C and reducing MA. Mean annual temperature was negatively associated with leaf level [N], [P] and [K] concentrations. Total annual precipitation positively influences MA, [C] and δ13C, but with a negative impact on [Mg]. These results provide a first basis for understanding the relationship between the physiological functioning and distribution of tree species across Amazonia.

318 citations


Journal Article
TL;DR: Details of an algorithm using tree-based ensembles to generate a compact subset of non-redundant features that can uncover masking and detect features of secondary effect are described.
Abstract: Predictive models benefit from a compact, non-redundant subset of features that improves interpretability and generalization. Modern data sets are wide, dirty, mixed with both numerical and categorical predictors, and may contain interactive effects that require complex models. This is a challenge for filters, wrappers, and embedded feature selection methods. We describe details of an algorithm using tree-based ensembles to generate a compact subset of non-redundant features. Parallel and serial ensembles of trees are combined into a mixed method that can uncover masking and detect features of secondary effect. Simulated and actual examples illustrate the effectiveness of the approach.

305 citations


Journal ArticleDOI
TL;DR: In this paper, the authors provide a comparative analysis and synthesis of the expansion of beef cattle production and its regional and global environmental impacts for Queensland (Australia), Colombia and Brazil, and propose four policy imperatives to help mitigate escalating environmental impacts of beef: stop subsidising beef production and promoting beef consumption; control future expansion of soybeans and extensive grazing; protect and restore regrowth forests in grazing lands; and allocate resources to less environmentally damaging alternative land uses.
Abstract: While the global community is seeking to reduce fossil fuel consumption, a parallel but equally important issue is the environmental impacts of increased world consumption of beef. We provide a comparative analysis and synthesis of the expansion of beef cattle production and its regional and global environmental impacts for Queensland (Australia), Colombia and Brazil. Evidence assembled indicates that rising beef consumption is a major driver of regional and global change, and warrants greater policy attention. We propose four policy imperatives to help mitigate escalating environmental impacts of beef: stop subsidising beef production and promoting beef consumption; control future expansion of soybeans and extensive grazing; protect and restore regrowth forests in grazing lands; and allocate resources to less environmentally damaging alternative land uses.

245 citations


Journal ArticleDOI
12 Jun 2009-Science
TL;DR: A boom-and-bust pattern in levels of human development across the deforestation frontier is found, indicating a pattern of boom and bust in the Brazilian Amazon.
Abstract: The Brazilian Amazon is globally important for biodiversity, climate, and geochemical cycles, but is also among the least developed regions in Brazil. Economic development is often pursued through forest conversion for cattle ranching and agriculture, mediated by logging. However, on the basis of an assessment of 286 municipalities in different stages of deforestation, we found a boom-and-bust pattern in levels of human development across the deforestation frontier. Relative standards of living, literacy, and life expectancy increase as deforestation begins but then decline as the frontier evolves, so that pre- and postfrontier levels of human development are similarly low. New financial incentives and policies are creating opportunities for a more sustained development trajectory that is not based on the depletion of nature and ecosystem services.

241 citations


Journal ArticleDOI
TL;DR: A systematic sparsification scheme is proposed, which can drastically reduce the time and space complexity without harming the performance of kernel adaptive filters.
Abstract: This paper discusses an information theoretic approach of designing sparse kernel adaptive filters. To determine useful data to be learned and remove redundant ones, a subjective information measure called surprise is introduced. Surprise captures the amount of information a datum contains which is transferable to a learning system. Based on this concept, we propose a systematic sparsification scheme, which can drastically reduce the time and space complexity without harming the performance of kernel adaptive filters. Nonlinear regression, short term chaotic time-series prediction, and long term time-series forecasting examples are presented.

216 citations


Patent
25 Jun 2009
TL;DR: In this article, the authors describe techniques for providing virtual networking functionality for managed computer networks, where a user may configure or otherwise specify one or more virtual local area networks (VLANs) for a managed computer network being provided for the user, such as with each VLAN including multiple computing nodes of the network.
Abstract: Techniques are described for providing virtual networking functionality for managed computer networks. In some situations, a user may configure or otherwise specify one or more virtual local area networks (“VLANs”) for a managed computer network being provided for the user, such as with each VLAN including multiple computing nodes of the managed computer network. Networking functionality corresponding to the specified VLAN(s) may then be provided in various manners, such as if the managed computer network itself is a distinct virtual computer network overlaid on one or more other computer networks, and communications between computing nodes of the managed virtual computer network are handled in accordance with the specified VLAN(s) of the managed virtual computer network by emulating functionality that would be provided by networking devices of the managed virtual computer network if they were physically present and configured to support the specified VLAN(s).

201 citations


Journal ArticleDOI
TL;DR: A kernelized version of the extended recursive least squares (EX-KRLS) algorithm which implements for the first time a general linear state model in reproducing kernel Hilbert spaces (RKHS) which only requires inner product operations between input vectors, thus enabling the application of the kernel property.
Abstract: This paper presents a kernelized version of the extended recursive least squares (EX-KRLS) algorithm which implements for the first time a general linear state model in reproducing kernel Hilbert spaces (RKHS), or equivalently a general nonlinear state model in the input space. The center piece of this development is a reformulation of the well known extended recursive least squares (EX-RLS) algorithm in RKHS which only requires inner product operations between input vectors, thus enabling the application of the kernel property (commonly known as the kernel trick). The first part of the paper presents a set of theorems that shows the generality of the approach. The EX-KRLS is preferable to 1) a standard kernel recursive least squares (KRLS) in applications that require tracking the state-vector of general linear state-space models in the kernel space, or 2) an EX-RLS when the application requires a nonlinear observation and state models. The second part of the paper compares the EX-KRLS in nonlinear Rayleigh multipath channel tracking and in Lorenz system modeling problem. We show that the proposed algorithm is able to outperform the standard KRLS and EX-RLS in both simulations.

Patent
18 Aug 2009
TL;DR: In this paper, the authors describe techniques for facilitating interactions between computing systems, such as by performing transactions between parties that are automatically authorized via a third-party transaction authorization system, where the transactions are programmatic transactions involving the use of fee-based Web services by executing application programs.
Abstract: Techniques are described for facilitating interactions between computing systems, such as by performing transactions between parties that are automatically authorized via a third-party transaction authorization system. In some situations, the transactions are programmatic transactions involving the use of fee-based Web services by executing application programs, with the transaction authorization system authorizing and/or providing payments in accordance with private authorization instructions previously specified by the parties. The authorization instructions may include predefined instruction rule sets that regulate conditions under which a potential transaction can be authorized, with the instruction rule sets each referenced by an associated reference token. After one or more of the parties to a potential transaction supply reference tokens for the parties, the transaction authorization system can determine whether to authorize the transaction based on whether the instruction rule sets associated with the reference tokens are compatible or otherwise satisfied.

Patent
18 Jun 2009
TL;DR: In this article, a DNS server at a content delivery network service provider obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier.
Abstract: A system, method and computer-readable medium for request routing. A DNS server at a content delivery network service provider obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier. The first resource identifier includes a first portion with DNS information and a second portion with path information. The DNS server selects a network computing component for processing the requested resource based on the DNS portion of the resource identifier and transmits information identifying the selected network computing component to the client computing device.

Patent
28 May 2009
TL;DR: In this paper, the authors describe techniques for providing load balancing functionality among multiple computing nodes, such as dynamically scaling a group of multiple nodes for which the load balancing is performed, and defined criteria used for the dynamic scaling may be determined in various manners and based on various factors.
Abstract: Techniques are described for providing load balancing functionality among multiple computing nodes. In some situations, the provided load balancing functionality includes dynamically scaling a group of multiple computing nodes for which the load balancing is performed, such as to dynamically expand and/or shrink the quantity of computing nodes in the group based on predefined criteria. At least some of the computing nodes of a group may be part of one or more physical computer networks in one or more geographical locations under control of a user or other entity, and at least some of the dynamic scaling of the group may use one or more other computing nodes that are part of a remote computer network (e.g., a virtual computer network provided under the control of a network-accessible service). The defined criteria used for the dynamic scaling may be determined in various manners and based on various factors.

Journal ArticleDOI
TL;DR: Three chemokines, KC/CXCL1, MIP‐2/C XCL2 and LIX/CxCL5, which are ligands for chemokine receptor 2 (CXCR2), are evaluated in mediating neutrophil recruitment in immune inflammation induced by antigen in immunized mice.
Abstract: Background and purpose: Chemokines orchestrate neutrophil recruitment to inflammatory foci. In the present study, we evaluated the participation of three chemokines, KC/CXCL1, MIP-2/CXCL2 and LIX/CXCL5, which are ligands for chemokine receptor 2 (CXCR2), in mediating neutrophil recruitment in immune inflammation induced by antigen in immunized mice. Experimental approach: Neutrophil recruitment was assessed in immunized mice challenged with methylated bovine serum albumin, KC/CXCL1, LIX/CXCL5 or tumour necrosis factor (TNF)-α. Cytokine and chemokine levels were determined in peritoneal exudates and in supernatants of macrophages and mast cells by elisa. CXCR2 and intercellular adhesion molecule 1 (ICAM-1) expression was determined using immunohistochemistry and confocal microscopy. Key results: Antigen challenge induced dose- and time-dependent neutrophil recruitment and production of KC/CXCL1, LIX/CXCL5 and TNF-α, but not MIP-2/CXCL2, in peritoneal exudates. Neutrophil recruitment was inhibited by treatment with reparixin (CXCR1/2 antagonist), anti-KC/CXCL1, anti-LIX/CXCL5 or anti-TNF-α antibodies and in tumour necrosis factor receptor 1-deficient mice. Intraperitoneal injection of KC/CXCL1 and LIX/CXCL5 induced dose- and time-dependent neutrophil recruitment and TNF-α production, which were inhibited by reparixin or anti-TNF-α treatment. Macrophages and mast cells expressed CXCR2 receptors. Increased macrophage numbers enhanced, while cromolyn sodium (mast cell stabilizer) diminished, LIX/CXCL5-induced neutrophil recruitment. Macrophages and mast cells from immunized mice produced TNF-α upon LIX/CXCL5 stimulation. Methylated bovine serum albumin induced expression of ICAM-1 on mesenteric vascular endothelium, which was inhibited by anti-TNF-α or anti-LIX/CXCL5. Conclusion and implications: Following antigen challenge, CXCR2 ligands are produced and act on macrophages and mast cells triggering the production of TNF-α, which synergistically contribute to neutrophil recruitment through induction of the expression of ICAM-1.

Patent
31 Mar 2009
TL;DR: In this paper, the authors describe techniques for managing distributed execution of programs on a cluster of multiple computing nodes, such as automatically determining the status of execution of the program on each of the multiple nodes and/or automatically determining aggregate usage of one or more types of computing resources across the cluster of many computing nodes by the program execution.
Abstract: Techniques are described for managing distributed execution of programs. In some situations, the techniques include dynamically monitoring the ongoing distributed execution of a program on a cluster of multiple computing nodes, and may include automatically determining the status of execution of the program on each of the multiple computing nodes and/or automatically determining the aggregate usage of one or more types of computing resources across the cluster of multiple computing nodes by the distributed program execution. The information obtained from the dynamic monitoring may be used in various manners, including to facilitate dynamically modifying the ongoing distributed program execution in various manners, such as to temporarily throttle usage of computing resources by the distributed program execution (e.g., to remove or reduce one or more bottlenecks).

Patent
31 Mar 2009
TL;DR: In this article, a content delivery network service provider receives a DNS query from a client computing device, and the DNS query corresponds to a requested resource from the client computing devices, and based on routing information for the cluster, the CPN routes the query.
Abstract: A system and method for management and processing of resource requests is provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a requested resource from the client computing device. The content delivery network service provider associates the client computing device with a cluster of other client computing devices. Based on routing information for the cluster, the content delivery network service provider routes the DNS query. The process can further include monitoring performance data associated with the delivery of the requested resource and updating the routing information for the cluster based on the performance data for use in processing subsequent requests from client computing devices in the cluster.

Patent
31 Mar 2009
TL;DR: In this article, the scaling of storage capacity can be performed automatically, or as authorized by a customer, without affecting the availability of the data store, and a workflow can be instantiated that includes tasks necessary to perform the scaling.
Abstract: Aspects of a data environment, such as various capacities of data stores and instances, can be managed using a separate control environment. A monitoring component of the control environment can periodically communicate with the data environment to obtain performance information. The information is analyzed, using algorithms such as trending and extrapolation algorithms, to determine any recommended scaling of resources in the data environment. The scaling can be performed automatically, or as authorized by a customer. A workflow can be instantiated that includes tasks necessary to perform the scaling. The scaling of storage capacity can be performed without affecting the availability of the data store.

Patent
08 Dec 2009
TL;DR: In this article, the authors describe techniques for providing users with access to computer networks, such as to enable users to interact with a remote configurable network service in order to create and configure computer networks that are provided by the service for use by the users.
Abstract: Techniques are described for providing users with access to computer networks, such as to enable users to interact with a remote configurable network service in order to create and configure computer networks that are provided by the configurable network service for use by the users. Computer networks provided by the configurable network service may be configured to be private computer networks that are accessible only by the users who create them, and may each be created and configured by a client of the configurable network service to be an extension to an existing computer network of the client, such as a private computer network extension to an existing private computer network of the client. If so, secure private access between an existing computer network and new computer network extension that is being provided may be enabled using one or more VPN connections or other private access mechanisms.

Journal ArticleDOI
TL;DR: This work constructs near-optimal heuristics for the reassignment for a large set of customer orders to minimize the total number of shipments and presents evidence of significant saving opportunities by testing the heuristic on order data from a major online retailer.
Abstract: When a customer orders online, an online retailer assigns the order to one or more of its warehouses and/or drop-shippers to minimize procurement and transportation costs based on the available current information. However, this assignment is necessarily myopic because it cannot account for any subsequent customer orders or future inventory replenishment. We examine the benefits of periodically reevaluating these real-time assignments. We construct near-optimal heuristics for the reassignment for a large set of customer orders to minimize the total number of shipments. Finally, we present evidence of significant saving opportunities by testing the heuristics on order data from a major online retailer.

Patent
20 Jul 2009
TL;DR: In this article, a networked computer system provides various services for assisting users in locating, and establishing contact relationships with, other users For example, users can identify other users based on their affiliations with particular schools or other organizations, and grant permissions for such other users to view personal information of the user.
Abstract: A networked computer system provides various services for assisting users in locating, and establishing contact relationships with, other users For example, in one embodiment, users can identify other users based on their affiliations with particular schools or other organizations The system also provides a mechanism for a user to selectively establish contact relationships or connections with other users, and to grant permissions for such other users to view personal information of the user The system may also include features for enabling users to identify contacts of their respective contacts In addition, the system may automatically notify users of personal information updates made by their respective contacts

Patent
Jonathan David Hay1
22 Dec 2009
TL;DR: In this paper, the air channeling sub-systems are operated in an adiabatic mode and a hybrid mode, where the mechanical cooling section removes heat from the cooling air and the direct evaporative cooling section evapates water into the room.
Abstract: A air channeling sub-system may include a mechanical cooling section and a direct evaporative cooling section. The direct evaporative cooling section may be downstream from the mechanical cooling section. Cooling air is channeled through the air channeling sub-system and into the room. If a first set of control conditions is met, the air channeling sub-systems is operated in an adiabatic mode. The adiabatic mode includes channeling cooling air through the direct evaporative cooling section to evaporate water into the cooling air. If a second set of control conditions is met, the air channeling sub-system is operated in a hybrid mode. The hybrid mode includes channeling cooling air through the mechanical cooling section to remove heat from the cooling air and channeling the cooling air through the direct evaporative cooling section to evaporate water into the cooling air.

Patent
20 Nov 2009
TL;DR: In this article, a decentralized performance monitoring of host systems is described, where a client system collects metrics from multiple different host systems and aggregates such metrics on the client system, without utilizing a centralized repository of metrics.
Abstract: Various embodiments of a system and method for decentralized performance monitoring of host systems are described. Embodiments may include one or more client systems, each of which may monitor the performance of one or more host systems. In some embodiments, at least some of the host systems may be members of a cloud computing environment. A given client system may collect metrics from multiple different host systems and aggregate such metrics on the client system. In various embodiments, metrics may be collected by the client system directly from the multiple different host systems without utilizing a centralized repository of metrics. In various embodiments, the given client's receipt of the metrics from the multiple different hosts systems may be an initial aggregation of those metrics together on the same computer system. The client system may generate a graphical representation of the metrics collected from multiple hosts systems.

Patent
31 Mar 2009
TL;DR: In this article, the authors describe techniques for managing distributed execution of programs, such as dynamically modifying the distributed program execution in various manners, based on monitored status information, which may include adding and/or removing computing nodes from a cluster that is executing the program.
Abstract: Techniques are described for managing distributed execution of programs. In some situations, the techniques include dynamically modifying the distributed program execution in various manners, such as based on monitored status information. The dynamic modifying of the distributed program execution may include adding and/or removing computing nodes from a cluster that is executing the program, modifying the amount of computing resources that are available for the distributed program execution, terminating or temporarily suspending execution of the program (e.g., if an insufficient quantity of computing nodes of the cluster are available to perform execution), etc.

Patent
19 Mar 2009
TL;DR: In this article, a method for facilitating the updating of a language model includes receiving, at a client device via a microphone, an audio message corresponding to speech of a user; communicating the audio message to a first remote server; receiving, that the client device, a result, transcribed at the first Remote Server using an automatic speech recognition system (ASR) from the audio messages; receiving from the user, an affirmation of the result; storing, at the client devices, the result in association with an identifier corresponding to audio message; and communicating, to a second remote server
Abstract: A method for facilitating the updating of a language model includes receiving, at a client device, via a microphone, an audio message corresponding to speech of a user; communicating the audio message to a first remote server; receiving, that the client device, a result, transcribed at the first remote server using an automatic speech recognition system (“ASR”), from the audio message; receiving, at the client device from the user, an affirmation of the result; storing, at the client device, the result in association with an identifier corresponding to the audio message; and communicating, to a second remote server, the stored result together with the identifier.

Patent
17 Nov 2009
TL;DR: In this article, a system, method, and computer-readable medium for updating request routing information associated with client location information are provided, where a content delivery network service provider receives a DNS query from a client computing device The DNS query corresponds to a resource identifier for requested content from the client computing devices.
Abstract: A system, method, and computer-readable medium for updating request routing information associated with client location information are provided. A content delivery network service provider receives a DNS query from a client computing device The DNS query corresponds to a resource identifier for requested content from the client computing device The content delivery network service provider obtains a query IP address corresponding to the client computing device Based on routing information associated with the query IP address, the content delivery network service provider routes the DNS query The process further includes monitoring performance data associated with the transmission of the requested resource and updating routing information associated with the query IP address based on the performance data for use in processing subsequent requests from the client computing device

Patent
18 Feb 2009
TL;DR: In this article, an apparatus and method for constructing a data unit that includes a buffer status report (BSR) such that when BSR triggering is performed, the size(s) of the necessary sub-header (s) are also to be considered together in addition to the BSR size.
Abstract: An apparatus and method for constructing a data unit that includes a buffer status report (BSR) such that when BSR triggering is performed, the size(s) of the necessary sub-header(s) are also to be considered together in addition to the BSR size. There is a checking unit that checks whether any padding region is available in a MAC PDU that was constructed, a comparing unit that compares the number of padding bits with the size of a buffer status report (BSR) plus its sub-header, and a processing unit that cooperates with the checking unit and the comparing unit to trigger a buffer status report (BSR) procedure if the number of padding bits is larger than the size of the BSR plus its sub-header, including the BSR and its sub-header in the MAC PDU, and setting an LCID in the sub-header to indicate a BSR is included, the BSR having been triggered due to padding. Using such apparatus allows the sub-header(s) to be inserted (included) into the MAC PDU (or transport block (TB) or other data unit).

Patent
14 Jan 2009
TL;DR: In this article, a system and method for electronically searching a personalized library of content includes, in at least one embodiment, receiving one or more search terms and automatically searching a text searchable database to produce search results.
Abstract: A system and method for electronically searching a personalized library of content includes, in at least one embodiment, receiving one or more search terms and electronically searching a text searchable database to produce search results. After receiving a search result selection, a page image in a page image database corresponding to the search result selection is identified. A substitute image of the identified page image is prepared, wherein a portion of the content in the identified page image is suppressed in the substitute image. The substitute image is then provided for computer display, wherein the one or more search terms in the substitute image are highlighted when the substitute image is displayed. The substitute image appears substantially the same as the identified page image except for the portion that is suppressed. Information identifying the location of the search terms in the substitute image may be provided for highlighting.

Patent
06 Mar 2009
TL;DR: In this paper, a computer-implemented method is proposed to route service requests to services in a service framework provided by a plurality of hosts, based on measured latencies for the plurality of candidate hosts and routing the service request to the selected candidate host.
Abstract: A computer-implemented method routes service requests to services in a service framework provided by a plurality of hosts. The method comprises receiving a service request for a service in the service framework and discovering a plurality of candidate hosts that host the service. The plurality of candidate hosts are a subset of the plurality of hosts. The method further comprises selecting a candidate host from the plurality of candidate hosts based on measured latencies for the plurality of candidate hosts and routing the service request to the selected candidate host.

Patent
07 Aug 2009
TL;DR: In this paper, the authors describe techniques for managing access of executing programs to non-local block data storage, such as a group of multiple server block storage systems that store block data volumes may in some situations be co-located at a data center.
Abstract: Techniques are described for managing access of executing programs to non-local block data storage. In some situations, a block data storage service uses multiple server storage systems to reliably store block data that may be accessed over one or more networks by programs executing on other physical computing systems. Users may create block data storage volumes that are each stored by at least two of the server block data storage systems, and may initiate use of such volumes by one or more executing programs, such as in a reliable manner by enabling an automatic switch to a second volume copy if a first volume copy becomes unavailable. A group of multiple server block data storage systems that store block data volumes may in some situations be co-located at a data center, and programs that use volumes stored there may execute on other physical computing systems at that data center.