Abstract:
Described herein is a flash remapping (FR) layer in a storage operating system for utilizing flash memory as a secondary permanent storage device in a storage system. The FR layer collects particular information (specified by collection parameters) of received access requests for data stored on primary storage devices of the storage system. Based on the collected information and a predetermined access pattern (specified by pattern parameters), the FR layer selects data sets on the primary storage devices to be transferred permanently to flash memory, whereby subsequent access requests to the selected data sets are redirected to flash memory. New parameters may be received by the FR layer (from a user or program) to dynamically reconfigure the functions of the FR layer. The FR layer may be implemented in the operating system without requiring other code of the storage operating system to be modified.
Abstract:
Described herein are systems and methods for providing a message UI engine for accessing messages on a message system. The message system may comprise a message storage system (that store messages of varying types and formats, such as fax, text, voice/audio, video, and picture messages) and a message access system. The message UI engine is configured by a Flash media UI file for accessing messages and associated message information by interacting with the message access system. The Flash media UI file does not comprise any markup language and comprises only Flash® instructions. The Flash media UI file also comprises a plurality of embedded applications for presenting the plurality of different message types, each embedded application comprising only Flash instructions. The associated message information may be stored and transmitted in a non-markup language format, such as comma-delimited format. The messages and message information may be transmitted using a non-HTTP protocol.
Abstract:
Described herein is a high-availability storage system having hierarchical levels of storage functions. The storage system may comprise one or more hierarchical levels, each hierarchical level comprising physical servers and be assigned to perform a particular set of storage functions. Each physical server may implement one or more VMs configured to perform only the set of storage functions assigned to the hierarchical level on which the VM executes. VMs of a first hierarchical level may be configured to organize the VMs of a second hierarchical level into a redundant array of storage access servers for providing data reliability and high-availability of the storage system. VMs of a first hierarchical level are configured to produce and route sub-requests to the VMs of a second hierarchical level. Failure of a sub-request is detected and remedied by a VM of the first hierarchical level.
Abstract:
Described herein are a system and method for remote mirroring of data and metadata from a local node to a remote node using out-of-order delivery (OOD), while also providing data integrity at the remote node. OOD may utilize increased throughput of multiple connection paths between nodes. A mirroring layer/engine executing on the local node may receive related groups of data and metadata for storing to the remote node, each related group comprising one or more data sets and one metadata set that describes and is associated with each of the one or more data sets in the related group. The mirroring layer provides data integrity at the remote node by ensuring that the metadata set of a related group is stored to the remote node only after all the data sets in the related group are stored to the remote node, thus ensuring data consistency at the remote node.
Abstract:
A method of targeting receives several granular events and preprocesses the received granular events thereby generating preprocessed data to facilitate construction of a model based on the granular events. The method generates a predictive model by using the preprocessed data. The predictive model is for determining a likelihood of a user action. The method trains the predictive model. A system for targeting includes granular events, a preprocessor for receiving the granular events, a model generator, and a model. The preprocessor has one or more modules for at least one of pruning, aggregation, clustering, and/or filtering. The model generator is for constructing a model based on the granular events, and the model is for determining a likelihood of a user action. The system of some embodiments further includes several users, a selector for selecting a particular set of users from among the several users, a trained model, and a scoring module.
Abstract:
A system and method are provided for auto-committing files of a storage system to immutable status based on a change log of file system activity. The system is configured for producing and analyzing the change log. Producing the change log involves generating change log entries associated with changes made to files of the storage system and organizing the change log entries from the oldest to newest entries. Analyzing the change log involves processing the change log beginning with the oldest entry to determine whether any entries have met the auto-commit time period, and if so, to set the files associated with such entries to immutable status. If a change log entry is found not to have met the auto-commit time period, a resting time period is determined based on the oldest change log entry, and processing of the change log proceeds after expiration of the resting time period.
Abstract:
A method for calibrating an apparatus for ellipsometric measurements performed on an arbitrarily large or continuously moving sample, using a visible sample reference frame, and one or more laser sources in order to calibrate the ellipsometer for variations in the distance between the ellipsometer apparatus and the sample of interest. Included are techniques for projecting a first laser beam spot from an incident laser source onto a sample, then analyzing the position of the first laser beam spot relative to the center of the sample reference frame using human-aided measurements and confirmations and/or computer vision techniques. Then adjusting pivot points and/or apparatus-to-sample distance to achieve a first beam spot being located about the center of the sample reference frame, and concurrently intersecting the plane of the sample. Other techniques include changing the incidence and reflectance angle using a semi-circular track arc design with a stepping motor activating each goniometer arm.
Abstract:
A method of providing advertising services selects a finite set of topics, and arranges the selected set of topics into a hierarchical structure. The method classifies impression items into the nodes within the hierarchical structure, and allows bidding against the nodes within the hierarchical structure. Some embodiments allow a bidder to request a refinement of the hierarchical structure. These embodiments receive such a request, and compare the request to a set of criteria. If the request meets the set of criteria, the method divides a first node in the hierarchical structure to at least a second and third node. The method allows bidders to bid on each of the first, second, and third nodes. The method optionally measures a performance for the nodes within the hierarchical structure. Based on the measure of performance for the nodes, the method preferably removes an under-performing node from the hierarchical structure.
Abstract:
Remote office deduplication comprises calculating one or more fingerprints of one or more data blocks, sending the one or more fingerprints to one or more backup servers via a network interface, receiving from the one or more backup servers an indication of which one or more data blocks corresponding to the one or more fingerprints should be sent to the one or more backup servers, and if the indication indicates one or more data blocks to be sent to the one or more backup servers, sending the one or more data blocks to the one or more backup servers via the network interface.
Abstract:
A cluster system comprises a plurality of nodes that provides data-access service to a shared storage, each node having at least one failover partner node for taking over services of a node if the node fails. Each node may produce write logs for the shared storage and periodically send write logs at predetermined time intervals to a global device which stores write logs from each node. The global device may detect failure of a node by monitoring time intervals of when write logs are received from each node. Upon detection of a node failure, the global device may provide the write logs of the failed node to one or more partner nodes for performing the write logs on the shared storage. Write logs may be transmitted only between nodes and the global device to reduce data exchanges between nodes and conserving I/O resources of the nodes.