Patents by Inventor Juan R. Loaiza

Juan R. Loaiza has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20180060378
    Abstract: A minimum value (MV) is computed for start timestamps that each correspond to an uncommitted transaction. In an embodiment, the MV is computed for a pluggable database that is open on at least first and second instances of a database. The MV is computed for the first instance as of a first current timestamp (CT). The MV and the first CT are communicated to a second instance that has a second CT. If the first and second CTs are equal, the second instance store the MV. If the first CT is bigger, the second CT also becomes equal to the first CT. If the first CT is smaller, the MV is discarded, and the first CT becomes equal to the second CT. In an embodiment, if the MV remains unchanged for a predetermined time period, a start timestamp corresponding to the MV is advanced to a current or future timestamp.
    Type: Application
    Filed: August 31, 2016
    Publication date: March 1, 2018
    Inventors: Kartik Kulkarni, Juan R. Loaiza, Vivekanandhan Raja, Kothanda Umamageswaran, Sanket Hase, Vasudha Krishnaswamy, Tirthankar Lahiri
  • Patent number: 9697253
    Abstract: A method, system, and computer program product is disclosed for caching results in a client-side cache. Embodiments of a method, a system, and a computer program product are disclosed that associate a first snapshot of a database with a client that indicates a state of the database after a last database request by the client, and indicate any number of invalid cached results in the client cache for the client based upon the first snapshot. In some embodiments, the method further includes receiving a second snapshot that indicates a state of the database upon receipt of a database server request by the client, and updating the first snapshot with the second snapshot.
    Type: Grant
    Filed: October 19, 2007
    Date of Patent: July 4, 2017
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Lakshminarayanan Chidambaran, Mehul Dilip Bastawala, Srinath Krishnaswamy, Tirthankar Lahiri, Juan R. Loaiza, Bipul Sinha, Srinivas S. Vemuri
  • Publication number: 20170116269
    Abstract: Techniques are provided for storing in in-memory unit (IMU) in a lower-storage tier and copying the IMU to DRAM when needed for query processing. Techniques are also provided for copying IMUs to lower tiers of storage when evicted from the cache of higher tiers of storage. Techniques are provided for implementing functionality of IMUs within a storage system, to enable database servers to push tasks, such as filtering, to the storage system where the storage system may access IMUs within its own memory to perform the tasks. Metadata associated with a set of data may be used to indicate whether an IMU for the data should be created by the database server machine or within the storage system.
    Type: Application
    Filed: October 21, 2016
    Publication date: April 27, 2017
    Inventors: Roger D. Macnicol, Viral Shah, Xia Hua, Jesse Kamp, Shasank K. Chavan, Maria Colgan, Tirthankar Lahiri, Adrian Tsz Him Ng, Krishnan Meiyyappan, Amit Ganesh, Juan R. Loaiza, Kothanda Umamageswaran, Yiran Qin
  • Patent number: 9405694
    Abstract: Techniques are provided for using an intermediate cache between the shared cache of an application and the non-volatile storage of a storage system. The application may be any type of application that uses a storage system to persistently store data. The intermediate cache may be local to the machine upon which the application is executing, or may be implemented within the storage system. In one embodiment where the application is a database server, the database system includes both a DB server-side intermediate cache, and a storage-side intermediate cache. The caching policies used to populate the intermediate cache are intelligent, taking into account factors that may include which object an item belongs to, the item type of the item, a characteristic of the item, or the type of operation in which the item is involved.
    Type: Grant
    Filed: September 16, 2014
    Date of Patent: August 2, 2016
    Assignee: Oracle Internation Corporation
    Inventors: Kiran Badrinarain Goyal, Neil J. S. Macnaughton, Eugene Ho, Adam Y. Lee, Vipin Gokhale, Wei-Ming Hu, Juan R. Loaiza, Kothanda Umamageswaran, Bharat C. V. Baddepudi, Boris Erlikhman, Alexander Tsukerman, Selcuk Aya, Roger Hansen, Adrian Ng
  • Patent number: 9361232
    Abstract: Techniques are provided for using an intermediate cache to provide some of the items involved in a scan operation, while other items involved in the scan operation are provided from primary storage. Techniques are also provided for determining whether to service an I/O request for an item with a copy of the item that resides in the intermediate cache based on factors such as a) an identity of the user for whom the I/O request was submitted, b) an identity of a service that submitted the I/O request, c) an indication of a consumer group to which the I/O request maps, or d) whether the intermediate cache is overloaded. Techniques are also provided for determining whether to store items in an intermediate cache in response to the items being retrieved, based on logical characteristics associated with the requests that retrieve the items.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: June 7, 2016
    Assignee: Oracle International Corporation
    Inventors: Kothanda Umamageswaran, Juan R. Loaiza, Umesh Panchaksharaiah, Alexander Tsukerman, Timothy L. Shetler, Bharat C. V. Baddepudi, Boris Erlikhman, Kiran B. Goyal, Nilesh Choudhury, Susy Fan, Poojan Kumar, Selcuk Aya, Sue-Kyoung Lee
  • Publication number: 20160085834
    Abstract: To prioritize repopulation of in-memory compression units (IMCU), a database server compresses, into an IMCU, a plurality of data units from a database table. In response to changes to any of the plurality of data units within the database table, the database server performs the steps of: (a) invalidating corresponding data units in the IMCU; (b) incrementing an invalidity counter of the IMCU that reflects how many data units within the IMCU have been invalidated; (c) receiving a data request that targets one or more of the plurality of data units of the database table; (d) in response to receiving the data request, incrementing an access counter of the IMCU; and (e) determining a priority for repopulating the IMCU based, at least in part, on the invalidity counter and the access counter.
    Type: Application
    Filed: August 11, 2015
    Publication date: March 24, 2016
    Inventors: Michael J. Gleeson, Jesse Kamp, Vineet Marwah, Tirthankar Lahiri, Juan R. Loaiza, Sanket Hase, Niloy Mukherjee, Sujatha Muthulingam, Atrayee Mullick, Allison L. Holloway
  • Patent number: 9146934
    Abstract: A method and system for replicating database data is provided. One or more standby database replicas can be used for servicing read-only queries, and the amount of storage required is scalable in the size of the primary database storage. One technique is described for combining physical database replication to multiple physical databases residing within a common storage system that performs de-duplication. Having multiple physical databases allows for many read-only queries to be processed, and the de-duplicating storage system provides scalability in the size of the primary database storage. Another technique uses one or more diskless standby database systems that share a read-only copy of physical standby database files. Notification messages provide consistency between each diskless system's in-memory cache and the state of the shared database files.
    Type: Grant
    Filed: November 5, 2013
    Date of Patent: September 29, 2015
    Assignee: Oracle International Corporation
    Inventors: Wei-Ming Hu, Juan R. Loaiza, Yunrui Li, Vinay H. Srihari
  • Patent number: 9063908
    Abstract: Dirty data in a storage device is made current through rapid re-silvering, which uses a mirrored and up-to-date version of the dirty data from another storage device to recover the data. Because under rapid re-silvering cache metadata in volatile memory survives the failure of the cache, the cache metadata is used to determine which subset of data from the other storage device needs to be copied to the storage device being re-silvered. During re-silvering, cache metadata is used to determine which I/O requests from clients are requests for data that is not stale.
    Type: Grant
    Filed: May 31, 2012
    Date of Patent: June 23, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Juan R. Loaiza, Kothanda Umamageswaran, Boris Erlikhman, David Friedman, Jia Shi, Zuoyu Tao, Alex Tsukerman
  • Publication number: 20150088805
    Abstract: Approaches, techniques, and mechanisms are disclosed for improved caching in database systems that deal with multiple data access patterns, such as in database systems that interface with both OLTP and Data Warehouse clients. A cache is deployed between a database server and a storage system that stores data units. Some of the data units accessed by the database server are buffered within the cache. The data units may be associated with data access patterns, such as a random data access pattern or a scan data access pattern, in accordance with which the database server is or appears to be accessing the data units. A processor selects when to cache data units accessed by the database server, based at least on the associated data access patterns. Recent access counts may also be stored for the data units, and may further be utilized to select when to cache data units.
    Type: Application
    Filed: September 17, 2014
    Publication date: March 26, 2015
    Inventors: Sarat B. Kakarla, Jia Shi, Selcuk Aya, Kothanda Umamageswaran, Juan R. Loaiza
  • Patent number: 8977597
    Abstract: Techniques for maintaining a cascading index are provided. In one approach, one or more branch node compression techniques are applied to the main index of a cascading index. In an approach, a Bloom filter is generated and associated with, e.g., a branch node in the main index. The Bloom filter is used to determine whether, without accessing any leaf blocks, a particular key value exists, e.g., in leaf blocks associated with the branch node. In an approach, a new redo record is generated in response to a merge operation between two levels of the cascading index. The new redo record comprises (a) one or more addresses of blocks that are affected by the merge operation, (b) data is that being “pushed down” to a lower level of the cascading index, and (c) one or more addresses of blocks that are written to storage as a result of the merge operation.
    Type: Grant
    Filed: November 6, 2013
    Date of Patent: March 10, 2015
    Assignee: Oracle International Corporation
    Inventors: Amit Ganesh, Juan R. Loaiza, Krishna Kunchithapadam
  • Patent number: 8935227
    Abstract: In a consumer-producer distributed model of computing, consumers request data from producers and perform computing work on the data received from the producers, thereby transforming the data. At least some of the computing work performed by a consumer on data provided by the producer is commutable between the consumer and producer, that is, either the producer as well as the consumer can perform the computing work on the data. A producer redistributes commutable based on the work load of the producer and consumer as well as other factors.
    Type: Grant
    Filed: April 17, 2012
    Date of Patent: January 13, 2015
    Assignee: Oracle International Corporation
    Inventors: Johnny Quan Zhou, Nilesh Choudhury, Juan R. Loaiza, Dmitry Mikhailovich Potapov, Alexander Tsukerman, Kothanda Umamageswaran
  • Publication number: 20150006813
    Abstract: Techniques are provided for using an intermediate cache between the shared cache of an application and the non-volatile storage of a storage system. The application may be any type of application that uses a storage system to persistently store data. The intermediate cache may be local to the machine upon which the application is executing, or may be implemented within the storage system. In one embodiment where the application is a database server, the database system includes both a DB server-side intermediate cache, and a storage-side intermediate cache. The caching policies used to populate the intermediate cache are intelligent, taking into account factors that may include which object an item belongs to, the item type of the item, a characteristic of the item, or the type of operation in which the item is involved.
    Type: Application
    Filed: September 16, 2014
    Publication date: January 1, 2015
    Inventors: Kiran Badrinarain Goyal, Neil J.S. Macnaughton, Eugene Ho, Adam Y. Lee, Vipin Gokhale, Wei-Ming Hu, Juan R. Loaiza, Kothanda Umamageswaran, Bharat C.V. Baddepudi, Boris Erlikhman, Alexander Tsukerman, Selcuk Aya, Roger Hansen, Adrian Ng
  • Patent number: 8909996
    Abstract: Methods, computer-readable media, and computer systems are provided for initiating storage of data on multiple storage devices and confirming storage of the data after the data has been stored on one but not necessarily all of the devices. A storage server receives, from a client, a request to store data. In response to the request, the storage server initiates, in parallel, storage of the data on multiple storage systems. The storage server detects that the data has been stored on any one of the storage systems, such as an auxiliary system, and, in response, indicates, to the client, that the data has been stored. The storage server may flush or discard data on the auxiliary storage system upon detecting that the data has been successfully stored on a target storage system, where the data persists.
    Type: Grant
    Filed: January 9, 2012
    Date of Patent: December 9, 2014
    Assignee: Oracle International Corporation
    Inventors: Kesavan P. Srinivasan, Boris Erlikhman, Juan R. Loaiza, Jia Shi, Alexander Tsukerman, Kothanda Umamageswaran
  • Patent number: 8892905
    Abstract: One embodiment of the present invention provides a system for performing selective encryption/decryption in a data storage system. During operation, the system receives a data block from a storage medium at an input/output layer, wherein the input/output layer serves as an interface between the storage medium and a buffer cache. Next, the system determines whether the data block is an encrypted data block. If not, the system stores the data block in the buffer cache. Otherwise, if the data block is an encrypted data block, the system retrieves a storage-key, wherein the storage-key is associated with a subset of storage, which is associated with the encrypted data block. Using the storage-key, the system then decrypts the encrypted data block to produce a decrypted data block. Finally, the system stores the decrypted data block in the buffer cache, wherein the data block remains encrypted in the storage medium.
    Type: Grant
    Filed: March 21, 2007
    Date of Patent: November 18, 2014
    Assignee: Oracle International Corporation
    Inventors: Adam Y. Lee, Varun Malhotra, Daniel ManHung Wong, Tirthankar Lahiri, Kiran Goyal, Juan R. Loaiza, Paul Youn
  • Patent number: 8874807
    Abstract: Techniques are provided for managing, within a storage system, the sequence in which I/O requests are processed by the storage system based, at least in part, on one or more logical characteristics of the I/O requests. The logical characteristics may include, for example, the identity of the user for whom the I/O request was submitted, the service that submitted the I/O request, the database targeted by the I/O request, an indication of a consumer group to which the I/O request maps, the reason why the I/O request was issued, a priority category of the I/O request, etc. Techniques are also provided for automatically establishing a scheduling policy within a storage system, and for dynamically changing the scheduling policy in response to changes in workload.
    Type: Grant
    Filed: August 20, 2013
    Date of Patent: October 28, 2014
    Assignee: Oracle International Corporation
    Inventors: Sue K. Lee, Vivekananda C. Kolla, Akshay D. Shah, Sumanta Chatterjee, Margaret Susairaj, Juan R. Loaiza, Alexander Tsukerman, Sridhar Subramaniam
  • Patent number: 8868831
    Abstract: Techniques are provided for using an intermediate cache between the shared cache of a database server and the non-volatile storage of a storage system. The intermediate cache may be local to the machine upon which the database server is executing, or may be implemented within the storage system. In one embodiment, the database system includes both a DB server-side intermediate cache, and a storage-side intermediate cache. The caching policies used to populate the intermediate cache are intelligent, taking into account factors that may include which database object an item belongs to, the item type of the item, a characteristic of the item; or the database operation in which the item is involved.
    Type: Grant
    Filed: December 7, 2009
    Date of Patent: October 21, 2014
    Assignee: Oracle International Corporation
    Inventors: Kiran Badrinarain Goyal, Neil J. S. Macnaughton, Eugene Ho, Adam Y. Lee, Vipin Gokhale, Wei-Ming Hu, Juan R. Loaiza, Kothanda Umamageswaran, Bharat C. V. Baddepudi, Boris Erlikhman, Alexander Tsukerman, Selcuk Aya, Roger Hansen, Adrian Ng
  • Publication number: 20140281272
    Abstract: No-loss rapid recovery performs resynchronization efficiently while concurrently allowing availability to mirrored data on the storage device. No-loss rapid recovery has two stages and involves storage devices that have both a non-volatile cache and primary storage and that operate as mirror buddies. The first stage is referred to herein as the buddy-retention stage. During the buddy-retention stage, writes to mirrored data are not performed on the offline mirror buddy but are performed on the online mirror buddy. The mirrored data changed in the online mirrored buddy is retained in the non-volatile cache of the retention buddy. The next stage is referred to herein as the rapid resynchronization stage. In this stage, the changed mirrored data retained by the retention buddy for no-loss rapid recovery is used to resynchronize the offline buddy. The storage device is resynchronized using the changed mirrored data retained in the cache of the mirror buddy.
    Type: Application
    Filed: March 13, 2013
    Publication date: September 18, 2014
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Juan R. Loaiza, Kothanda Umamageswaran, David Friedman, Jia Shi, Zuoyu Tao, Alex Tsukerman
  • Publication number: 20140067767
    Abstract: Techniques for maintaining a cascading index are provided. In one approach, one or more branch node compression techniques are applied to the main index of a cascading index. In an approach, a Bloom filter is generated and associated with, e.g., a branch node in the main index. The Bloom filter is used to determine whether, without accessing any leaf blocks, a particular key value exists, e.g., in leaf blocks associated with the branch node. In an approach, a new redo record is generated in response to a merge operation between two levels of the cascading index. The new redo record comprises (a) one or more addresses of blocks that are affected by the merge operation, (b) data is that being “pushed down” to a lower level of the cascading index, and (c) one or more addresses of blocks that are written to storage as a result of the merge operation.
    Type: Application
    Filed: November 6, 2013
    Publication date: March 6, 2014
    Applicant: Oracle International Corporation
    Inventors: Amit Ganesh, Juan R. Loaiza, Krishna Kunchithapadam
  • Publication number: 20140059020
    Abstract: A method and system for replicating database data is provided. One or more standby database replicas can be used for servicing read-only queries, and the amount of storage required is scalable in the size of the primary database storage. One technique is described for combining physical database replication to multiple physical databases residing within a common storage system that performs de-duplication. Having multiple physical databases allows for many read-only queries to be processed, and the de-duplicating storage system provides scalability in the size of the primary database storage. Another technique uses one or more diskless standby database systems that share a read-only copy of physical standby database files. Notification messages provide consistency between each diskless system's in-memory cache and the state of the shared database files.
    Type: Application
    Filed: November 5, 2013
    Publication date: February 27, 2014
    Applicant: Oracle International Corporation
    Inventors: Wei-Ming Hu, Juan R. Loaiza, Yunrui Li, Vinay H. Srihari
  • Patent number: 8615578
    Abstract: Detecting an operating condition in a multi-server data storage system. One or more of the data storage servers are designated with a status within the cluster. The designating may be performed by at least one of the data storage servers. The status is encoded into log data having records that report changes to the primary data storage performed by the cluster of data storage servers. The log data is transmitted from the primary data storage to the standby data storage system. The standby data storage system determines an operating condition of the cluster of data storage servers based, at least in part, on the status.
    Type: Grant
    Filed: October 7, 2005
    Date of Patent: December 24, 2013
    Assignee: Oracle International Corporation
    Inventors: Wei Hu, Yunrui Li, Juan R. Loaiza