Address level log-based synchronization of shared data
    31.
    发明授权
    Address level log-based synchronization of shared data 有权
    地址级基于日志的共享数据同步

    公开(公告)号:US08037476B1

    公开(公告)日:2011-10-11

    申请号:US11263439

    申请日:2005-10-31

    摘要: A method of address-level log-based synchronization comprises a thread attempting to acquire a lock on an object. If its lock attempt fails, a thread logs, at a synchronization log, data access operations directed at the shared data object, and waits for a notification from the lock-owning thread indicating whether the logged operations succeeded. If its lock attempt succeeds, the lock-owning thread performs data access operations on the shared data object, and arbitrates among requests logged by other threads in the synchronization log, applying the modifications logged in the requests that do not conflict with other modification operations, and rejecting the requests that conflict. The master sends a success notification to the logging threads whose requests were accepted, and a failure notification to the logging threads whose requests were rejected.

    摘要翻译: 地址级基于日志的同步的方法包括尝试获取对象上的锁的线程。 如果其锁尝试失败,则线程在同步日志中记录针对共享数据对象的数据访问操作,并等待来自锁拥有线程的通知,指示所记录的操作是否成功。 如果锁定尝试成功,则锁拥有线程对共享数据对象执行数据访问操作,并在同步日志中的其他线程记录的请求之间进行仲裁,应用不与其他修改操作冲突的请求中记录的修改, 并拒绝发生冲突的请求。 主机向接受请求的日志记录线程发送成功通知,以及对请求被拒绝的日志记录线程的失败通知。

    METHOD OF STORING LOGICAL DATA OBJECTS AND SYSTEM THEREOF

    公开(公告)号:US20110179228A1

    公开(公告)日:2011-07-21

    申请号:US13006371

    申请日:2011-01-13

    IPC分类号: G06F12/08

    摘要: Various embodiments for storing a logical object are provided. In one such embodiment, by way of example only, incoming data is divided corresponding to a logical data object into a plurality of independent streams, associating each data chunk of a plurality of obtained data chunks with a corresponding stream among the plurality of independent streams. At least one of the obtained data chunks and derivatives thereof is sequentially accommodated in accordance with an order the obtained chunks are received, while keeping the association with the corresponding streams. A global index is generated as a single meta-data stream accommodated in the logical data object and comprising information common to the plurality of independent streams and related to mapping between data in the logical data object and the obtained data chunks.

    Methods and apparatus to implement parallel transactions
    33.
    发明申请
    Methods and apparatus to implement parallel transactions 有权
    实现并行交易的方法和设备

    公开(公告)号:US20070198519A1

    公开(公告)日:2007-08-23

    申请号:US11475814

    申请日:2006-06-27

    IPC分类号: G06F17/30

    摘要: The present disclosure describes a unique way for each of multiple processes to operate in parallel using (e.g., reading, modifying, and writing to) the same shared data without causing corruption to the shared data. For example, each of multiple processes utilizes current and past data values associated with a global counter or clock for purposes of determining whether any shared variables used to produce a respective transaction outcome were modified (by another process) when executing a respective transaction. If a respective process detects that shared data used by respective process was modified during a transaction, the process can abort and retry the transaction rather than cause data corruption by storing locally maintained results associated with the transaction to a globally shared data space.

    摘要翻译: 本公开描述了使用(例如,读取,修改和写入)相同的共享数据而不会对共享数据造成损坏的多个进程中的每一个进行并行操作的独特方式。 例如,当执行相应的交易时,多个过程中的每个利用与全局计数器或时钟相关联的当前和过去的数据值来确定用于产生相应的交易结果的任何共享变量(通过另一个进程)被修改。 如果相应的进程检测到在处理期间修改了相应进程使用的共享数据,则该进程可以中止并重试事务,而不是通过将与事务相关联的本地维护的结果存储到全局共享的数据空间来导致数据损坏。

    Intercepting, transforming, and grouping data objects for storage
    34.
    发明授权
    Intercepting, transforming, and grouping data objects for storage 有权
    截取,转换和分组数据对象进行存储

    公开(公告)号:US09104337B2

    公开(公告)日:2015-08-11

    申请号:US13117911

    申请日:2011-05-27

    摘要: Systems capable of transformation of logical data objects for storage and methods of operating thereof are provided. One method includes identifying among a plurality of requests addressed to the storage device two or more “write” requests addressed to the same logical data object, deriving data chunks corresponding to identified “write” requests and transforming the derived data chunks, grouping the transformed data chunks in accordance with the order the requests have been received and in accordance with a predefined criteria, generating a grouped “write” request to the storage device, and providing mapping in a manner facilitating one-to-one relationship between the data in the obtained data chunks and the data to be read from the transformed logical object. The method further includes obtaining an acknowledging response from the storage device, multiplying the obtained acknowledging response, and sending respective acknowledgements to each source that initiated each respective “write” request.

    摘要翻译: 提供了能够转换用于存储的逻辑数据对象的系统及其操作方法。 一种方法包括在寻址到存储设备的多个请求中识别寻址到相同逻辑数据对象的两个或多个“写入”请求,导出与所识别的“写入”请求相对应的数据块,并变换导出的数据块,对经变换的数据进行分组 根据请求的顺序根据预定义的标准块,生成分组的“写入”请求到存储设备,并以促进所获得的数据中的数据之间的一对一关系的方式提供映射 数据块和从变换的逻辑对象读取的数据。 该方法还包括从存储设备获得确认响应,将获得的确认响应相乘,并向发起每个相应“写入”请求的每个源发送相应的确认。

    Intercepting, transforming, and grouping transformed data objects for storage
    35.
    发明授权
    Intercepting, transforming, and grouping transformed data objects for storage 有权
    拦截,转换和分组转换的数据对象进行存储

    公开(公告)号:US09104336B2

    公开(公告)日:2015-08-11

    申请号:US13117836

    申请日:2011-05-27

    摘要: Systems capable of transformation of logical data objects for storage and methods of operating thereof are provided. One method includes identifying among a plurality of requests addressed to the storage device two or more “write” requests addressed to the same logical data object, deriving data chunks corresponding to identified “write” requests and transforming the derived data chunks, grouping the transformed data chunks in accordance with the order the requests have been received and in accordance with a predefined criteria, generating a grouped “write” request to the storage device, and providing mapping in a manner facilitating one-to-one relationship between the data in the obtained data chunks and the data to be read from the transformed logical object. The method further includes obtaining an acknowledging response from the storage device, multiplying the obtained acknowledging response, and sending respective acknowledgements to each source that initiated each respective “write” request.

    摘要翻译: 提供了能够转换用于存储的逻辑数据对象的系统及其操作方法。 一种方法包括在寻址到存储设备的多个请求中识别寻址到相同逻辑数据对象的两个或多个“写入”请求,导出与所识别的“写入”请求相对应的数据块,并变换导出的数据块,对经变换的数据进行分组 根据请求的顺序根据预定义的标准块,生成分组的“写入”请求到存储设备,并以促进所获得的数据中的数据之间的一对一关系的方式提供映射 数据块和从变换的逻辑对象读取的数据。 该方法还包括从存储设备获得确认响应,将获得的确认响应相乘,并向发起每个相应“写入”请求的每个源发送相应的确认。

    Transforming logical data objected for storage includes identifying multiple write request to the same logical object and grouping transformed data chunks
    36.
    发明授权
    Transforming logical data objected for storage includes identifying multiple write request to the same logical object and grouping transformed data chunks 有权
    转换对象存储的逻辑数据包括识别对同一逻辑对象的多个写入请求并对转换后的数据块进行分组

    公开(公告)号:US09098207B2

    公开(公告)日:2015-08-04

    申请号:US12730297

    申请日:2010-03-24

    摘要: There is provided a system capable of transformation of logical data objects for storage and method of operating thereof. The method comprises: a) identifying among a plurality of requests addressed to the storage device two or more “write” requests addressed to the same logical data object; b) deriving data chunks corresponding to identified “write” requests and transforming the derived data chunks; c) grouping the transformed data chunks in accordance with the order the requests have been received and in accordance with a predefined criteria; d) generating a grouped “write” request to the storage device; and e) providing mapping in a manner facilitating one-to-one relationship between the data in the obtained data chunks and the data to be read from the transformed logical object. The method further comprises obtaining an acknowledging response from the storage device; multiplying the obtained acknowledging response, and sending respective acknowledgements to each source which initiated respective “write” request.

    摘要翻译: 提供了能够转换用于存储的逻辑数据对象的系统和其操作方法。 该方法包括:a)在寻址到存储设备的多个请求中识别寻址到同一逻辑数据对象的两个或多个“写入”请求; b)导出对应于所识别的“写入”请求的数据块并变换导出的数据块; c)根据已经接收到的请求的顺序并根据预定义的标准对经变换的数据块进行分组; d)向所述存储设备生成分组的“写入”请求; 以及e)以促进获得的数据块中的数据与要从变换的逻辑对象读取的数据之间的一对一关系的方式提供映射。 该方法还包括从存储设备获取确认响应; 将获得的确认响应相乘,并将各自的确认发送到发起各个“写入”请求的每个源。

    Real-time compression of tabular data
    37.
    发明授权
    Real-time compression of tabular data 失效
    表格数据的实时压缩

    公开(公告)号:US08560508B2

    公开(公告)日:2013-10-15

    申请号:US13189327

    申请日:2011-07-22

    IPC分类号: G06F17/30

    CPC分类号: H03M7/30

    摘要: Exemplary method, system, and computer program product embodiments for real-time column compression of data are provided. In one embodiment, by way of example only, a data structure is estimated for an initially unknown structured data. The estimated data structure is placed in a stream. A columnar compression operation is applied to the stream to generate an achieved compression ratio. The stream is compressed. Feedback of the achieved compression ratio is analyzed from the stream to determine if an optimal one of the columnar compression operations has been applied. If the optimal one of the columnar compression operations has been applied, the actual data structure of the initially unknown structured data is determined.

    摘要翻译: 提供了用于数据的实时列压缩的示例性方法,系统和计算机程序产品实施例。 在一个实施例中,仅作为示例,针对最初未知的结构化数据估计数据结构。 估计的数据结构被放置在流中。 将柱状压缩操作应用于流以产生实现的压缩比。 流被压缩。 从流中分析实现的压缩比的反馈,以确定是否应用了最佳的一个柱状压缩操作。 如果已经应用了最佳的一个柱状压缩操作,则确定最初未知结构化数据的实际数据结构。

    Predictive log synchronization
    38.
    发明授权
    Predictive log synchronization 有权
    预测日志同步

    公开(公告)号:US08060879B2

    公开(公告)日:2011-11-15

    申请号:US11442870

    申请日:2006-05-30

    IPC分类号: G06F9/46

    CPC分类号: G06F9/526

    摘要: A method for coordinating shared access to data objects comprises applying modification operations to a data object from a first thread of a plurality of threads on behalf of all the other threads during a session in which the first thread owns a lock on the data object. Each modification operation corresponds to a respective entry recorded in a log associated with the data object by a respective thread. The method may further comprise predicting, for a second thread, a result of a particular operation requested by the second thread on the data object. The result may be predicted using log entries corresponding to modification operations that have not yet been applied to the data object. In addition, the method includes performing one or more other operations in a non-blocking manner from the second thread during the session, where at least one other operation is dependent on the predicted result.

    摘要翻译: 用于协调对数据对象的共享访问的方法包括在第一线程拥有数据对象上的锁定的会话期间,代表所有其他线程从多个线程的第一线程向数据对象应用修改操作。 每个修改操作对应于通过相应线程记录在与数据对象相关联的日志中的相应条目。 该方法还可以包括针对第二线程预测第二线程在数据对象上请求的特定操作的结果。 可以使用对应于尚未应用于数据对象的修改操作的日志条目来预测结果。 此外,该方法包括在会话期间以非阻塞方式从第二线程执行一个或多个其他操作,其中至少一个其他操作取决于预测结果。

    METHOD AND SYSTEM FOR TRANSFORMATION OF LOGICAL DATA OBJECTS FOR STORAGE
    39.
    发明申请
    METHOD AND SYSTEM FOR TRANSFORMATION OF LOGICAL DATA OBJECTS FOR STORAGE 有权
    用于存储的逻辑数据对象转换的方法和系统

    公开(公告)号:US20100250891A1

    公开(公告)日:2010-09-30

    申请号:US12730297

    申请日:2010-03-24

    IPC分类号: G06F12/02 G06F12/00 G06F12/10

    摘要: There is provided a system capable of transformation of logical data objects for storage and method of operating thereof. The method comprises: a) identifying among a plurality of requests addressed to the storage device two or more “write” requests addressed to the same logical data object; b) deriving data chunks corresponding to identified “write” requests and transforming the derived data chunks; c) grouping the transformed data chunks in accordance with the order the requests have been received and in accordance with a predefined criteria; d) generating a grouped “write” request to the storage device; and e) providing mapping in a manner facilitating one-to-one relationship between the data in the obtained data chunks and the data to be read from the transformed logical object. The method further comprises obtaining an acknowledging response from the storage device; multiplying the obtained acknowledging response, and sending respective acknowledgements to each source which initiated respective “write” request.

    摘要翻译: 提供了能够转换用于存储的逻辑数据对象的系统和其操作方法。 该方法包括:a)在寻址到存储设备的多个请求中识别寻址到同一逻辑数据对象的两个或多个“写入”请求; b)导出对应于所识别的“写入”请求的数据块并变换导出的数据块; c)根据已经接收到的请求的顺序并根据预定义的标准对经变换的数据块进行分组; d)向所述存储设备生成分组的“写入”请求; 以及e)以促进获得的数据块中的数据与要从变换的逻辑对象读取的数据之间的一对一关系的方式提供映射。 该方法还包括从存储设备获取确认响应; 将获得的确认响应相乘,并将各自的确认发送到发起各个“写入”请求的每个源。

    Scalable method for producer and consumer elimination
    40.
    发明授权
    Scalable method for producer and consumer elimination 有权
    消除生产者和消费者的可扩展方法

    公开(公告)号:US07779165B2

    公开(公告)日:2010-08-17

    申请号:US11325150

    申请日:2006-01-04

    IPC分类号: G06F3/00

    摘要: Producers and consumer processes may synchronize and transfer data using a shared data structure. After locating a potential transfer location that indicates an EMPTY status, a producer may store data to be transferred in the transfer location. A producer may use a compare-and-swap (CAS) operation to store the transfer data to the transfer location. A consumer may subsequently read the transfer data from the transfer location and store, such as by using a CAS operation, a DONE status indicator in the transfer location. The producer may notice the DONE indication and may then set the status location back to EMPTY to indicate that the location is available for future transfers, by the same or a different producer. The producer may also monitor the transfer location and time out if no consumer has picked up the transfer data.

    摘要翻译: 生产者和消费者流程可以使用共享数据结构来同步和传输数据。 在找到指示EMPTY状态的潜在转移位置之后,生产者可以将要传送的数据存储在传送位置。 生产者可以使用比较和交换(CAS)操作来将转移数据存储到传送位置。 消费者随后可以从传送位置读取传送数据,例如通过使用CAS操作存储传送位置中的DONE状态指示符。 生产者可以注意到DONE指示,然后可以将状态位置设置回EMPTY,以指示该位置可用于由相同或不同的生产者进行将来的转移。 如果没有消费者拿起传输数据,生产者也可以监控传送位置和超时。