Concurrent Read/write Management Using Locks Patents (Class 707/704)
  • Patent number: 9922097
    Abstract: A system that enables a user to configure alert actions based on search results generated by a query is disclosed. During operation, the system presents an alert user interface (UI) to a user, wherein the alert UI enables the user to configure one or more alert actions to be performed based on the search results. Next, the system receives alert configuration information from the user through the alert UI, wherein the alert configuration information includes tokens representing parameters associated with the query and the search results. Then, while generating an alert associated with the search results, the system performs a token substitution operation that substitutes tokens in the alert configuration information with corresponding parameters from the search results to generate a payload that is communicated to alert-generating functionality. This token substitution allows the parameters to be used by the alert-generating functionality while performing the one or more alert actions.
    Type: Grant
    Filed: April 28, 2015
    Date of Patent: March 20, 2018
    Assignee: Splunk Inc.
    Inventors: Nicholas J. Filippi, Siegfried Puchbauer-Schnabel, Carl S. Yestrau, Vivian Shen, J. Mathew Elting
  • Patent number: 9916360
    Abstract: An approach for joining operations on document-oriented databases. The approach consists of receiving database identifiers, common attributes and results attributes for core and target databases being joined. Common attributes are searched for in the databases. The searches performed include string, expansive, character and nested. Common attribute join conflicts are identified and input is received to resolve attribute join conflicts. Resolved join conflicts are updated in a join substitution database for subsequent use and joined data results are output to virtual table(s).
    Type: Grant
    Filed: December 13, 2016
    Date of Patent: March 13, 2018
    Assignee: International Business Machines Corporation
    Inventors: Phani Kumar V U Ayyagari, Manish A. Bhide, Bhavani K. Eshwar, Purnachandra R. Jasti
  • Patent number: 9881080
    Abstract: An electronic document analysis method receiving N electronic documents pertaining to a case encompassing a set of issues including at least one issue and establishing relevance of at least the N documents to at least one individual issue in the set of issues, the method comprising, for at least one individual issue from among the set of issues, receiving an output of a categorization process applied to each document in training and control subsets of the at least N documents, the output including, for each document in the subsets, one of a relevant-to-the-individual issue indication and a non-relevant-to-the-individual issue indication; building a text classifier simulating the categorization process using the output for all documents in the training subset of documents; and running the text classifier on the at least N documents thereby to obtain a ranking of the extent of relevance of each of the at least N documents to the individual issue.
    Type: Grant
    Filed: July 15, 2016
    Date of Patent: January 30, 2018
    Assignee: MICROSOFT ISRAEL RESEARCH AND DEVELOPMENT (2002) LTD
    Inventor: Yiftach Ravid
  • Patent number: 9870378
    Abstract: A computer-implemented method for improving database management includes selecting one or more database records that are requested based on a query statement. The one or more database records are read from a first database file. The one or more database records are copied from the first database file and stored to a memory. The one or more database records are deleted from the first database file at substantially the same time as the reading the one or more database records. The reading and the deleting occur through a single read and delete input/output (I/O) operation.
    Type: Grant
    Filed: November 18, 2014
    Date of Patent: January 16, 2018
    Assignee: International Business Machines Corporation
    Inventors: Rafal P. Konik, Roger A. Mittelstadt, Brian R. Muras, Mark W. Theuer
  • Patent number: 9852225
    Abstract: Features that may be used to represent relevance information (e.g., properties, characteristics, etc.) of an entity, such as a document or concept for example, may be associated with the document by accepting an identifier that identifies a document; obtaining search query information (and/or other serving parameter information) related to the document using the document identifier, determining features using the obtained query information (and/or other serving parameter information), and associating the features determined with the document. Weights of such features may be similarly determined. The weights may be determined using scores. The scores may be a function of one or more of whether the document was selected, a user dwell time on a selected document, whether or not a conversion occurred with respect to the document, etc. The document may be a Web page. The features may be n-grams. The relevance information of the document may be used to target the serving of advertisements with the document.
    Type: Grant
    Filed: April 23, 2015
    Date of Patent: December 26, 2017
    Assignee: Google Inc.
    Inventors: Ross Koningstein, Stephen Lawrence, Valentin Spitkovsky
  • Patent number: 9852207
    Abstract: A method for transporting relational data from one relational database to another such database. The data transported may be a subset of data in the entire database and the relations between the root of this data and other data entities are preserved in a way allowing their reconstruction in the target database. This preservation, itself further directed through configuration, is able to recreate new data identifiers without collision, yet also without requiring maintenance of the original identifiers.
    Type: Grant
    Filed: August 25, 2016
    Date of Patent: December 26, 2017
    Assignee: IFWIZARD CORPORATION
    Inventor: Dominic Samuel Sellers-Blais
  • Patent number: 9824134
    Abstract: A plurality of transactions is handled in a database. Each transaction includes a plurality of operations on at least one record in the database with at least two of the transactions being handled concurrently. Thereafter, a temporary timestamp is assigned to each record. The temporary timestamp are based, at least in part, on the corresponding transaction. Further, a final timestamp is assigned to each record with a commit operation. It can later be determined, using a visibility function and based on the assigned temporary timestamps and final timestamps, which of the records are visible in a consistent view for a first transaction. Based on such determination, access can be provided to those records determined to be visible to be accessed to the first transaction.
    Type: Grant
    Filed: November 25, 2014
    Date of Patent: November 21, 2017
    Assignee: SAP SE
    Inventors: Ivan Schreter, Juchang Lee, Mihnea Andrei, Changgyoo Park
  • Patent number: 9779127
    Abstract: Example systems and methods for integrating a primary data store (e.g., a source-of-truth relational database management system) and a secondary data store (e.g., external cache) are described. The approach implements a modified read-through/write-through data access pattern that integrates read and write flows in order to support high-concurrency environments while maintaining immediate consistency between stores. Writes are handled using a three-phase flow that avoids concurrency-related race conditions and the need to block in the secondary store in order to maintain cross-store consistency. Reads are never dirty and will repair the secondary store as needed without conflicting with repairs that may have been initiated by other sessions.
    Type: Grant
    Filed: March 31, 2014
    Date of Patent: October 3, 2017
    Assignee: WAL-MART STORES, INC.
    Inventors: Jason Sardina, Alexei Olkhovskii, Robert P. Lowell, Michael Machado
  • Patent number: 9769150
    Abstract: An example method for migrating communication data from a source server to a target server includes obtaining, using a computing device, a set of credentials to access the source server, and accessing the source server using the set of credentials. The method also includes requesting, automatically by the computing device, a directory structure associated with communication data from the source server, populating, by the computing device, the target server using the directory structure, requesting the communication data from the source server, and populating the target server with the communication data.
    Type: Grant
    Filed: January 14, 2011
    Date of Patent: September 19, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Kutlay Topatan, Maxim Ivanov, Victor Boctor, Palash Biswas, Bernard Luke Gallagher
  • Patent number: 9754008
    Abstract: A method for scaling out database information may include creating second database instantiation. The method may include configuring one or more partitions of a first database for transfer to the second database and configuring the second database for receiving the one or more first database partitions. The method may also include transferring the one or more first database partitions to the second database.
    Type: Grant
    Filed: November 2, 2015
    Date of Patent: September 5, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Goksel Genc, Humberto Lezama Guadarrama, Gary Chang, Andrew Sean Watson
  • Patent number: 9753977
    Abstract: A database management method generates an execution plan with respect to a factorized character string generated by factoring an execution value list of a query and storing the factorized character string and an execution plan identifier associated with the factorized character string. The method includes receiving a factorized character string generated from a query; determining whether the factorized character string is stored in a memory; transmitting an execution plan identifier matching the factorized character string stored in the memory when the factorized character string is stored in the memory; generating and transmitting an execution plan identifier with respect to an execution plan of the factorized character string when the factorized character string is not stored in the memory; receiving a query request consisting of the execution plan identifier and an execution value list included in the query; and providing a query result obtained using the query request.
    Type: Grant
    Filed: January 23, 2014
    Date of Patent: September 5, 2017
    Assignee: Naver Corporation
    Inventors: Kyung Sik Seo, Ki Eun Park
  • Patent number: 9747293
    Abstract: A method, a system, and a computer program product for storing and retrieving information are provided. The system receives information. Thereafter, the system organizes the information for optimal storage and retrieval based on qualities of a storage medium. The organizing may include optimizing the information for sequential read and/or write access. The information may be organized in an append-only manner. Once the information has been organized, the apparatus presents and/or stores the organized information.
    Type: Grant
    Filed: February 28, 2013
    Date of Patent: August 29, 2017
    Assignee: DEEP INFORMATION SCIENCES, INC.
    Inventors: Thomas Hazel, Jason P. Jeffords, Gerard L. Buteau
  • Patent number: 9740755
    Abstract: An event limited field picker for a search user interface is described. In one or more implementations, a service may operate to collect and store data as events each of which includes a portion of the data correlated with a point in time. Clients may use a search user interface perform searches by input of search criteria. Responsive to receiving search criteria, the service may operate to apply a late binding schema to extract events that match the search criteria and provide search results for display via the search user interface. The search user interface exposes an event limited field picker operable to make selections of fields with respect to individual events in a view of the search results. In response to receiving an indication of a fields selected via the picker, visibility of selected fields may be updated to control which field and values are included in different views.
    Type: Grant
    Filed: January 29, 2016
    Date of Patent: August 22, 2017
    Assignee: SPLUNK, INC.
    Inventors: Divanny I. Lamas, Marc Vincent Robichaud, Carl Sterling Yestrau
  • Patent number: 9734183
    Abstract: A method of data-oriented approach for performing view updates in database systems includes: processing one or more source databases of views to generate at least one summarization of the one or more source databases; utilizing the at least one summarization of the one or more source databases to determine one or more side effects associated with the view updates; and where upon the view updates have one or more side effects, preventing the view updates from being performed.
    Type: Grant
    Filed: August 5, 2014
    Date of Patent: August 15, 2017
    Assignee: Hong Kong Baptist University
    Inventors: Koon Kau Choi, Yun Peng
  • Patent number: 9733834
    Abstract: A system comprises a plurality of computing devices that are communicatively coupled via a network and have a file system distributed among them, and comprises one or more file system request buffers residing on one or more of the plurality of computing devices. File system choking management circuitry that resides on one or more of the plurality of computing devices is operable to separately control: a first rate at which a first type of file system requests (e.g., one of data requests, data read requests, data write requests, metadata requests, metadata read requests, and metadata write requests) are fetched from the one or more buffers, and a second rate at which a second type of file system requests (e.g., another of data requests, data read requests, data write requests, metadata requests, metadata read requests, and metadata write requests) are fetched from the one or more buffers.
    Type: Grant
    Filed: February 11, 2016
    Date of Patent: August 15, 2017
    Assignee: Weka.iO Ltd.
    Inventors: Maor Ben Dayan, Omri Palmon, Liran Zvibel, Kanael Arditti, Tomer Filiba
  • Patent number: 9715438
    Abstract: Provided are techniques for static execution of statements. Information from an execution file that describes statements that have been bound to a database during a previous execution of those statements dynamically and describes metadata about the statements is loaded. While executing a program that includes statements, for each of the statements, it is determined whether that statement is bound to the database. In response to determining that the statement is bound to the database, the statement is executed statically using the loaded information. In response to determining that the statement is not bound to the database, the statement is executed dynamically.
    Type: Grant
    Filed: June 29, 2007
    Date of Patent: July 25, 2017
    Assignee: International Business Machines Corporation
    Inventors: William Robert Bireley, Stephen Andrew Brodsky, Jaijeet Chakravorty, Anshul Dawra, Swaminathan Gounder
  • Patent number: 9678983
    Abstract: Aspects of the present disclosure involve systems and methods for passing optimization information, which may be used to optimize input/output (“I/O”) requests, from a database management system to a file system, using various protocols of a network file system. The optimization information provided by the database management system may relate to various aspects of an I/O request that may be optimized.
    Type: Grant
    Filed: October 19, 2012
    Date of Patent: June 13, 2017
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Brian Lee Wong, Chunli Zhang, Gerald Thornbrugh, Siddheshwar Mahesh
  • Patent number: 9672220
    Abstract: In one embodiment, a method includes determining a data node corresponding to a data record to be inserted/updated in an index structure of a record-oriented file system, creating a lock on a corresponding data node, splitting the corresponding data node sequentially into two data nodes and storing the data record in one of the two data nodes in response to the corresponding data node not having free space sufficient to store/update the data record, storing a high key of the first of the two data nodes to a parent index node, splitting the parent index node sequentially into two index nodes in response to the parent index node not having free space sufficient to store/update the high key of the first of the two data nodes, and storing the high key of the first of the two data nodes in one of the two index nodes.
    Type: Grant
    Filed: May 9, 2016
    Date of Patent: June 6, 2017
    Assignee: International Business Machines Corporation
    Inventors: Debra J. Benjamin-Deckert, Lawrence L. T. Law, Terri A. Menendez
  • Patent number: 9672077
    Abstract: Access to a shareable resource between threads is controlled by a lock having shared, optimistic and exclusive modes and maintaining a list of threads requesting ownership of said lock. A shared optimistic mode is provided. A lock state descriptor is provided for each desired change of mode comprising a current mode in which a thread has already acquired the lock. When a thread acquires the lock in shared optimistic mode, other threads are allowed to acquire the lock in shared or optimistic mode. When a thread which acquired the lock in shared optimistic mode wants to acquire the lock in exclusive mode, other threads which have acquired the lock in shared or optimistic mode are prevented from acquiring the lock in exclusive mode until the thread which acquired the lock in shared optimistic mode and requested to acquire the lock in exclusive mode releases the lock.
    Type: Grant
    Filed: May 5, 2016
    Date of Patent: June 6, 2017
    Assignee: International Business Machines Corporation
    Inventor: Marco Greco
  • Patent number: 9665394
    Abstract: The present invention discloses a method and system for sharing application objects among multiple tenants, wherein the method comprises: identifying objects that can be shared by multiple tenants; merging the objects that can be shared by the multiple tenants; and updating references of the tenants to the shared objects prior to the merging so as to cause the references to point at a merged shared object. The method of the present invention enables the tenants to share application data more efficiently.
    Type: Grant
    Filed: March 21, 2014
    Date of Patent: May 30, 2017
    Assignee: International Business Machines Corporation
    Inventors: Snehal S. Antani, Junjie Cai, Jia Fei, Wei Wei Gao, Heng Wang, Yan R. Wu
  • Patent number: 9646044
    Abstract: Technology for applying locks to memory pages. More specifically, a sticky lock is chosen by matching observed usage patterns with predetermined patterns associated with various sticky locks and/or types of stick locks increase database performance by reducing required communications and information transfers.
    Type: Grant
    Filed: November 26, 2014
    Date of Patent: May 9, 2017
    Assignee: International Business Machines Corporation
    Inventors: Ronen Grosman, Matthew A. Huras, Bret R. Olszewski, Keriley K. Romanufa, Aamer U. Sachedina, Xun Xue
  • Patent number: 9639544
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for a distributed parallel processing database system that persists table data in memory to a distributed file system. A distributed parallel processing database system persists table data in memory to a distributed file system. A parameter of creating a database table specifies that data records in the database table and history of changes to the data records can be stored in memory as well as in the distributed file system. When the database table is populated or otherwise modified, data records and the history in memory are evicted to the distributed file system as log files and removed from memory. The log files can be designated as write-only, where the data records, once written, cannot be read by structured query language (SQL) queries, or as read-write, where the data records, once written, can be read by SQL queries.
    Type: Grant
    Filed: October 28, 2014
    Date of Patent: May 2, 2017
    Assignee: Pivotal Software, Inc.
    Inventors: Daniel Allen Smith, Anthony M. Baker, Sumedh Wale, Hemant Bhanawat, Jagannathan Ramnarayanan, Swapnil Prakash Bawaskar, Ashvin Agrawal, Neeraj Kumar
  • Patent number: 9633070
    Abstract: According to embodiments of the present invention, one or more computer processors determine that a predetermined workload threshold associated with an invalidated object is not exceeded and transmits an invalidation command associated with the invalidated object to the owner of the invalidated object. The one or more computer processors instruct the modifier of the invalidated object to retain possession of a first lock on the object beyond the transaction. The one or more computer processors determine that a usage pattern associated with the invalidated object matches a predetermined usage pattern for selecting a lock that can be retained beyond an associated transaction and transmits a second lock a requestor. The one or more computer processors instruct the modifier to release possession of the first lock to the owner and transmit a first image of the current version of the invalidated object to the owner for subsequent transmission to the requestor.
    Type: Grant
    Filed: March 31, 2014
    Date of Patent: April 25, 2017
    Assignee: International Business Machines Corporation
    Inventors: Ronen Grosman, Matthew A. Huras, Bret R. Olszewski, Keriley K. Romanufa, Aamer U. Sachedina, Xun Xue
  • Patent number: 9632843
    Abstract: A method and system for allocating memory in a RAID system. A RAID system requires the use of shared memory to store processed data related to operations of different mass storage devices. Certain RAID algorithms require different sizes of memory regions of the memory, and multiple requests to lock the required memory regions are therefore required. As multiple requests are made in parallel for different operations, the multiple requests for each operation are sorted in a predetermined order. This ensures that all memory regions for one operation can be locked. Requests for memory regions locked by a second operation are held in a pending state to wait for release of those memory regions by a first operation, at which point they are locked again by the second operation.
    Type: Grant
    Filed: April 20, 2015
    Date of Patent: April 25, 2017
    Assignee: Microsemi Storage Solutions (U.S.), Inc.
    Inventors: Jesslly Wong, Raymond Lam, Tao Zhong
  • Patent number: 9633035
    Abstract: A method and system for storage of a data block for time continuum back-in-time data retrieval. The method comprises receiving a data block from a user node; updating an index stored in a memory respective of a time that the data block was received, wherein the time is a past time for retrieval of the data block; generating a hash number respective of contents of the data block; updating the index with the generated hash number; checking for existence of the generated hash number in a database; upon determination that the generated hash number does not exist in the database saving the data block in a storage device; increasing monotonously a transaction number respective of the generated hash number; and updating the index with the transaction number.
    Type: Grant
    Filed: January 13, 2014
    Date of Patent: April 25, 2017
    Assignee: Reduxio Systems Ltd.
    Inventors: Nir Peleg, Amnon Arthur Strasser, Or Sagi
  • Patent number: 9619281
    Abstract: Particular techniques for improving the scalability of concurrent programs (e.g., lock-based applications) may be effective in some environments and for some workloads, but not others. The systems described herein may automatically choose appropriate ones of these techniques to apply when executing lock-based applications at runtime, based on observations of the application in the current environment and with the current workload. In one example, two techniques for improving lock scalability (e.g., transactional lock elision using hardware transactional memory, and optimistic software techniques) may be integrated together. A lightweight runtime library built for this purpose may adapt its approach to managing concurrency by dynamically selecting one or more of these techniques (at different times) during execution of a given application.
    Type: Grant
    Filed: November 9, 2015
    Date of Patent: April 11, 2017
    Assignee: Oracle International Corporation
    Inventors: David Dice, Alex Kogan, Yosef Lev, Timothy M. Merrifield, Mark S. Moir
  • Patent number: 9589029
    Abstract: The present application is directed towards systems and methods for selecting a database from a plurality of databases to forward a SQL query request based on a property of the SQL request. A device intermediary to a plurality of clients and databases may establish a plurality of connections to the plurality of databases. The device may receive, from a client of the plurality of clients, a request to execute a SQL query. The device may evaluate one or more properties of the request to execute the SQL query responsive to a policy. The device may select a database from the plurality of databases based on a result of evaluation of the one or more properties of the request to execute the SQL query. The device may forward the request to execute the SQL query to the selected database via a connection of the plurality of connections.
    Type: Grant
    Filed: December 15, 2011
    Date of Patent: March 7, 2017
    Assignee: Citrix Systems, Inc.
    Inventors: Akshat Choudhary, Pratap Ramachandra
  • Patent number: 9588796
    Abstract: Examples perform live migration of virtual machines (VM) from a source host to a destination host. The live migration performs time-consuming operations before the source host is stunned, reducing the downtime apparent to users. Some examples contemplate pre-copying memory from the source VM to the destination VM, and the opening of disks on the destination VM before stunning the source VM.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: March 7, 2017
    Assignee: VMware, Inc.
    Inventors: Gabriel Tarasuk-Levin, Patrick William Penzias Dirks, Haripriya Rajagopal, Sujay Shrikant Godbole, Derek Uluski
  • Patent number: 9558432
    Abstract: An image forming apparatus having a second storage device such as an HDD mounted thereon, when it receives an input of a job, determines a necessity of an input processing of image data into the second storage device, a necessity of an output processing of image data from the secondary storage device, and a timing of the input processing and the output processing in the job. Then, the image forming apparatus switches an output buffer, which is an area set in a primary storage of the image forming apparatus and is used for the output processing of image data from the secondary storage device, to a buffer for use in the input processing or to a buffer for use in the output processing in accordance with a result of the determination.
    Type: Grant
    Filed: March 16, 2015
    Date of Patent: January 31, 2017
    Assignee: KONICA MINOLTA, INC.
    Inventor: Kazuto Tanaka
  • Patent number: 9547604
    Abstract: Data operations, requiring a lock, are batched into a set of operations to be performed on a per-core basis. A global lock for the set of operations is periodically acquired, the set of operations is performed, and the global lock is freed so as to avoid excessive duty cycling of lock and unlock operations in the computing storage environment.
    Type: Grant
    Filed: October 2, 2014
    Date of Patent: January 17, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Lokesh M. Gupta, David B. Whitworth
  • Patent number: 9542406
    Abstract: A method for verifying data consistency between update-in-place data structures and append-only data structures containing change histories associated with the update-in-place data structures is provided. The method includes loading data from an update-in-place data structure to a first set of hash buckets in a processing platform, loading data from append-only data structures to a second set of hash buckets in the processing platform, performing a bucket-level comparison between the data in the first set of hash buckets and the data in the second set of has buckets, and generating a report based on the bucket-level comparison.
    Type: Grant
    Filed: March 25, 2016
    Date of Patent: January 10, 2017
    Assignee: International Business Machines Corporation
    Inventors: Serge Bourbonnais, Si Bin Fan, Xiao Li, Jonathan W. Wierenga, Mai Zeng
  • Patent number: 9535925
    Abstract: File link migration is described. A method may include identifying a first file link referencing a file residing at a first computer system, and identifying, at the first computer system, a first inode data structure referenced by the first file link, the first inode data structure comprising a first link count. The method may also include creating a second inode data structure at a second computer system, wherein the second data structure comprises a second link count, and creating a second file link to reference the second inode data structure at the second computer system. The method may also include, responsive to determining that the first link count matches the second link count, migrating file data referenced by the first data structure to the second computer system.
    Type: Grant
    Filed: February 11, 2015
    Date of Patent: January 3, 2017
    Assignee: Red Hat, Inc.
    Inventors: Shishir Nagaraja Gowda, Anand Vishweswaran Avati, Amar Tumballi Suryanarayan
  • Patent number: 9535688
    Abstract: The deployment of application revisions and performing of application rollbacks across multiple application servers is streamlined by reducing the number of files that are communicated to the application servers to perform updates and rollbacks. An application service is provided by multiple application servers each executing a plurality of compiled code files associated with the application service. Each application server receives a compiled code file corresponding to an update for one of the plurality of compiled code files associated with the application service. The one compiled code file is replaced with the received compiled code file corresponding to the update. The application servers then provide an updated version of the application service by executing the plurality of compiled code files including the replacement compiled code file corresponding to the update. Application rollback is performed using compiled code files stored in a local repository of each application server.
    Type: Grant
    Filed: July 23, 2014
    Date of Patent: January 3, 2017
    Assignee: Verizon Patent and Licensing Inc.
    Inventors: Janak U. Dani, Krishna Reddy
  • Patent number: 9495376
    Abstract: The instant disclosure describes techniques and devices for facilitating migration of files between a source system and a target system. A system for facilitating migration of files between a source system and a target system includes an extraction component and an injection component. The extraction component includes at least one extraction handler and a profile engine operative to parse a profile specification, execute the at least one extraction handler, and provide a batch specification. The injection component includes a batch handler for obtaining pulled data from a source system, and a batch engine is operative to parse a batch specification and to create at least one file structure in the target system based on extracted structure information in the batch specification. Methods and GUIs for facilitating migration of files are also described.
    Type: Grant
    Filed: September 3, 2014
    Date of Patent: November 15, 2016
    Assignee: ACCENTURE GLOBAL SERVICES LIMITED
    Inventors: Sai V. Nagarajan, Sudhakar Kanakaraj, Sachin Yambal
  • Patent number: 9489407
    Abstract: Systems, methods, and machine-readable memories are provided for partitioning a multi-tenant database between tenants. A first level partition of data in a table within the database is defined. A second level partition of the data in the table within the database is defined. A request is received from an entity associated with a tenant to access a first datum stored in the database. The tenant is determined to be assigned to one or both of the first level partition and the second level partition. Access to the first datum is granted to a first entity where the tenant corresponds to the first tenant and the first datum corresponds to the first level partition parameter value. Access to the first datum is granted to a second entity where the tenant corresponds to the second tenant and the first datum corresponds to the second level partition parameter value.
    Type: Grant
    Filed: January 30, 2014
    Date of Patent: November 8, 2016
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: John Neil Thuringer, Simon Jones, Neil Bristow, Ram Razdan, Himavantha Rao Sajja
  • Patent number: 9465856
    Abstract: Systems and methods are disclosed for suggesting relevant documents to a local user. In one embodiment, a method is disclosed comprising determining, at a local device, a set of selection criteria for suggestion of relevant documents to the local user, the suggestion criteria including at least one of keywords and document metadata; retrieving a plurality of file statistics from a remote server, wherein at least one of the file statistics has been created by a remote user; creating a table of suggestions from the plurality of file statistics and from the set of suggestion criteria; and suggesting at least one file to the local user based on the table of suggestion criteria.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: October 11, 2016
    Assignee: APPSENSE LIMITED
    Inventors: Paul Keith Branton, Hannah Curtis
  • Patent number: 9460174
    Abstract: A method for transporting relational data from one relational database to another such database. The data transported may be a subset of data in the entire database and the relations between the root of this data and other data entities are preserved in a way allowing their reconstruction in the target database. This preservation, itself further directed through configuration, is able to recreate new data identifiers without collision, yet also without requiring maintenance of the original identifiers.
    Type: Grant
    Filed: May 20, 2014
    Date of Patent: October 4, 2016
    Assignee: IFWizard Corporation
    Inventor: Dominic Samuel Sellers-Blais
  • Patent number: 9460144
    Abstract: A method for locking resources, including: receiving, by an accelerator, a first request from a first client to lock a first resource; evaluating, by a computer processor of a server, a hash function using an identifier of the first resource as an input to the hash function; identifying, by the computer processor and based on evaluating the hash function, a first hash bucket in a shared memory residing in a physical memory of the server; detecting that the first hash bucket is occupied; and sending the first request to a master lock monitor residing in a user space of the server based at least on detecting that the first hash bucket is occupied.
    Type: Grant
    Filed: January 13, 2012
    Date of Patent: October 4, 2016
    Assignee: Oracle International Corporation
    Inventors: David Brower, Angelo Pruscino, Wilson Chan, Tak Fung Wang
  • Patent number: 9400818
    Abstract: A tree-based trylock technique for reducing contention on a root trylock includes attempting to acquire a trylock at each node of a tree-based hierarchical node structure while following a traversal path that begins at a leaf node, passes through one or more of internal nodes, and ends at a root node having the root trylock. The trylock acquisition operation succeeds if each trylock on the traversal path is acquired, and fails if any trylock on the traversal path cannot be acquired. A trylock housekeeping operation releases all non-root trylocks visited by the trylock acquisition operation, such that if the trylock acquisition operation succeeds, only the root trylock will be remain acquired at the end of the operation, and if the trylock acquisition operation fails, none of the trylocks will be remain acquired at the end of the operation.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: July 26, 2016
    Assignee: International Business Machines Corporation
    Inventor: Paul E. McKenney
  • Patent number: 9400829
    Abstract: A system for managing a cluster of databases that process shared data, the system including a cluster of database nodes, each node including a memory, and a processor configured to, when it is determined that: (i) a lock on a resource is required by a particular node or process, and (ii) no other lock conflicts with this particular lock, send an asynchronous lock taken (ALT) message to a distributed lock manager (DLM); and without receiving a response or permission from the DLM, taking the lock for a resource for the particular node or process.
    Type: Grant
    Filed: October 31, 2014
    Date of Patent: July 26, 2016
    Assignee: ORI SOFTWARE DEVELOPMENT LTD.
    Inventor: Moshe Shadmon
  • Patent number: 9400799
    Abstract: Techniques and mechanisms are provided for migrating data blocks around a cluster during node addition and node deletion. Migration requires no downtime, as a newly added node is immediately operational while the data blocks are being moved. Blockmap files and deduplication dictionaries need not be updated.
    Type: Grant
    Filed: June 10, 2011
    Date of Patent: July 26, 2016
    Assignee: Dell Products L.P.
    Inventors: Vinod Jayaraman, Abhijit Dinkar, Mark Taylor, Goutham Rao, Michael E. Root, Murali Bashyam
  • Patent number: 9390131
    Abstract: A server system having one or more processors and memory stores a plurality of entities in one or more databases, where the one or more databases do not guarantee strong consistency of the stored entities. The server system executes a first query against at least a first portion of the one or more databases to generate a first set of results that is not guaranteed to be strongly consistent. The server system also executes a second query, where executing the second query includes performing a consistency operation, the consistency operation guaranteeing that a second portion of the one or more databases is strongly consistent. After performing the consistency operation, the server system generates a second set of results from the second portion and merges the first set of one or more results and the second set of one or more results.
    Type: Grant
    Filed: February 5, 2013
    Date of Patent: July 12, 2016
    Assignee: GOOGLE INC.
    Inventor: Alfred R. K. Fuller
  • Patent number: 9378225
    Abstract: A processor-implemented method for designing, developing, implementing and maintaining a core service related to a database is provided. The processor-implemented method may include displaying a graphical user interface and identifying, from the graphical user interface, the core service. Then the processor-implemented method may include determining, from the graphical user interface, a type of folder request based on the identified core service and accessing a folder based on the determining of the type of folder request. The processor-implemented method may further include determining a lock order based on the accessed folder; and manipulating the accessed folder based on the determining of the lock order.
    Type: Grant
    Filed: August 6, 2013
    Date of Patent: June 28, 2016
    Assignee: International Business Machines Corporation
    Inventors: Daniel S. Gritter, Glenn I. Katzen, Colette A. Manoni
  • Patent number: 9378149
    Abstract: A method for rebuilding an in-memory data structure. The method includes selecting a table of contents (TOC) entry of a TOC page in persistent storage, where the TOC entry includes an object identifier (ID) of an object, an offset ID, and a birth time. The method further includes determining, based on the object ID, that the in-memory data structure includes object metadata for the object including a mod time and an object map pointer to an object map tree. The method further includes that the birth time in the TOC entry is greater than the mod time, updating a stored physical address in the object map tree based on the offset ID to a physical address derived from the TOC entry; and updating the mod time stored in the object metadata to the birth time.
    Type: Grant
    Filed: August 29, 2014
    Date of Patent: June 28, 2016
    Assignee: EMC Corporation
    Inventor: Jeffrey S. Bonwick
  • Patent number: 9342549
    Abstract: Techniques of implementing partition level operations with concurrent activities are disclosed. A first operation can be performed on a first partition of a table of data. The first partition can be one of a plurality of partitions of the table, where each partition has a plurality of rows. A first partition level lock can be applied to the first partition for a period in which the first operation is being performed on the first partition, thereby preventing any operation other than the first operation from being performed on the first partition during the period the first partition level lock is being applied to the first partition. A second operation can be performed on a second partition of the table at a point in time during which the first operation is being performed on the first partition.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: May 17, 2016
    Assignee: SAP SE
    Inventors: Amit Pathak, Paresh Rathod, Swati Sharma, Nikhil Jamadagni
  • Patent number: 9336098
    Abstract: A method for use in a database cluster is provided. A given transaction is executed at a first given node of the database cluster. The first given node identifies one or more keys referenced by the given transaction. The first given node then assigns a key type to each of the one or more keys referenced by the given transaction. Accordingly, the key type is selected from a group including: exclusive; semi-exclusive; and/or shared.
    Type: Grant
    Filed: March 19, 2014
    Date of Patent: May 10, 2016
    Assignee: Codership Oy
    Inventors: Alexey Yurchenko, Seppo Jaakola, Teemu Ollakka
  • Patent number: 9286111
    Abstract: The described embodiments include a processor that handles operations during transactions. In these embodiments, the processor comprises one or more cores. During operation, at least one core is configured to monitor the acquisition of time stamps during transactions. The at least one core is further configured to prevent the acquisition of time stamps that meet predetermined conditions.
    Type: Grant
    Filed: April 25, 2013
    Date of Patent: March 15, 2016
    Assignee: ADVANCED MICRO DEVICES, INC.
    Inventors: Martin T. Pohlack, Stephan Diestelhorst
  • Patent number: 9275148
    Abstract: A system and method to present global and local context sensitive augmented content in accordance with multiple criteria, including one or more user's preferences, and present the augmented content via a transparent layer on top of the original content for less obtrusive and more efficient browsing, knowledge discovery and exploration experience. The original content remains visible to the user while the augmented content is being viewed or interacted with. The global context sensitive augmented content is generated using metrics based on the overall document or content being viewed, while the local context sensitive augmented content is generated using metrics based on the currently viewed or selected object within the document or content being viewed. Real-time and theme based augmentation are used to further enhance the user's experience.
    Type: Grant
    Filed: September 24, 2012
    Date of Patent: March 1, 2016
    Assignee: Shauki Elassaad
    Inventor: Shauki Elassaad
  • Patent number: 9256607
    Abstract: A two-level cache to facilitate resolving resource path expressions for a hierarchy of resources is described, which includes a system-wide shared cache and a session-level cache. The shared cache is organized as a hierarchy of hash tables that mirrors the structure of a repository hierarchy. A particular hash table in a shared cache includes information for the child resources of a particular resource. A database management system that manages a shared cache may control the amount of memory used by the cache by implementing a replacement policy for the cache based on one or more characteristics of the resources in the repository. The session-level cache is a single level cache in which information for target resources of resolved path expressions may be tracked. In the session-level cache, the resource information is associated with the entire path expression of the associated resource.
    Type: Grant
    Filed: December 3, 2012
    Date of Patent: February 9, 2016
    Assignee: Oracle International Corporation
    Inventors: Sam Idicula, Sabina Petride, Bhushan Khaladkar, Nipun Agarwal
  • Patent number: 9240954
    Abstract: A resource delivery network and method for distributing content in the network is disclosed herein. The network comprises a plurality of servers arranged in tiers and partitioned. Each server includes a resource store with a set of resources for distribution to a successive tier. Updates to each successive tier are provided by a pull-forward client on servers in the tier. This forward propagation mechanism maximizes resource availability at edge servers in the network. Resources transmitted to the edge tier servers may be transformed, combined, and rendered without taxing lower tier servers. Transformation and pre-rendering of data can be performed by low priority CPU tasks at each layer of the system.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: January 19, 2016
    Assignee: Amazon Technologies, Inc.
    Inventors: Joseph L. Ellsworth, Brandon W. Porter, Chris A. Suver, Christopher R. Newcombe