IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0452163
(2003-05-30)
|
등록번호 |
US-7421541
(2008-09-02)
|
발명자
/ 주소 |
- Long,David J.
- Pitfield,David B.
|
출원인 / 주소 |
- Oracle International Corporation
|
대리인 / 주소 |
Hickman Palermo Truong & Becker LLP
|
인용정보 |
피인용 횟수 :
3 인용 특허 :
40 |
초록
▼
Techniques are provided for performing transaction-aware caching of metadata in an electronic file system. A mechanism is described for providing transaction-aware caching that uses a cache hierarchy, where the cache hierarchy includes uncommitted caches associated with sessions in an application an
Techniques are provided for performing transaction-aware caching of metadata in an electronic file system. A mechanism is described for providing transaction-aware caching that uses a cache hierarchy, where the cache hierarchy includes uncommitted caches associated with sessions in an application and a committed cache that is shared among the sessions in that application. Techniques are described for caching document metadata, access control metadata and folder path metadata. Also described is a technique for using negative cache entries to avoid unnecessary communications with a server when applications repeatedly request non-existent data.
대표청구항
▼
What is claimed is: 1. A method for maintaining information about a file managed by a database system comprising the computer-implemented steps of: storing within a first cache a first version of an entry that includes only changes made by a first transaction associated with said first cache; where
What is claimed is: 1. A method for maintaining information about a file managed by a database system comprising the computer-implemented steps of: storing within a first cache a first version of an entry that includes only changes made by a first transaction associated with said first cache; wherein said entry is for permissions metadata that is associated with said file managed by said database system; storing within a second cache a second version of said entry that does not include said changes made by said first transaction; and invalidating said second version of said entry when said first transaction successfully terminates. 2. The method of claim 1 wherein said first cache is only accessible by said first transaction. 3. The method of claim 2 wherein said first cache is a session cache. 4. The method of claim 1 wherein said first transaction is nested in a second transaction wherein said first cache is associated with said first transaction and said second cache is associated with said second transaction. 5. The method of claim 4 wherein said second cache is only accessible by said second transaction. 6. The method of claim 5 wherein said second cache is a session cache. 7. The method of claim 1 further comprising the computer-implemented step of: maintaining outside of said database system said first cache, said second cache, and a third cache; wherein said first cache stores said first version of said entry for said permissions metadata, wherein said first version reflects modifications made by said first transaction during a first session and does not reflect modifications made during a second session; wherein said third cache stores a third version of said entry for said permissions metadata, wherein said third version reflects modifications made by a second transaction during said second session and does not reflect modifications made during said first session; and wherein said second cache stores said second version of said entry for said permissions metadata, wherein said second version reflects all modifications of said permissions metadata that have been committed by said database system; wherein the step of invalidating said second version of said entry further comprises invalidating said second version of said entry when any one of said first transaction and said second transaction successfully terminates. 8. The method of claim 7 wherein said permissions metadata, that is stored in any one of said first cache and said third cache, is modified directly. 9. The method of claim 7 wherein said permissions metadata, that is stored in any one of said first cache and said third cache, is modified indirectly. 10. The method of claim 7 wherein said permissions metadata is for one or more users. 11. The method of claim 10 wherein said one or more users is associated with one or more groups. 12. The method of claim 10 wherein a particular user of said one or more users is associated with more than one group, and the method further comprises the computer-implemented step of: merging together all permissions metadata for said particular user from said more than one group. 13. A method for maintaining information about a file managed by a database system comprising the computer-implemented steps of: storing within a first cache a first version of an entry that includes only changes made by a first transaction associated with said first cache; wherein said entry is for permissions metadata that is associated with said file managed by said database system; storing within a second cache a second version of said entry that does not include said changes made by said first transaction; and when said first transaction successfully terminates: patching up, within said second cache, said second version of said entry to include said changes made by said first transaction; and committing said first version of said entry with said changes made by said first transaction. 14. The method of claim 13, wherein prior to patching up said second version of said entry, said second version of said entry has been committed by said database system. 15. The method of claim 13, wherein: said first cache is a session cache; and said second cache is a committed cache associated with said session cache. 16. The method of claim 13, wherein: said first cache is only accessible by said first transaction; and said first transaction is nested in a second transaction. 17. A computer-readable storage device storing one or more sequences of instructions for maintaining information about a file managed by a database system, which instructions, when executed by one or more processors, cause the one or more processors to perform the steps of: storing within a first cache a first version of an entry that includes only changes made by a first transaction associated with said first cache; wherein said entry is for permissions metadata that is associated with said file managed by said database system; storing within a second cache a second version of said entry that does not include said changes made by said first transaction; and invalidating said second version of said entry when said first transaction successfully terminates. 18. The computer-readable storage device of claim 17 wherein said first cache is only accessible by said first transaction. 19. The computer-readable storage device of claim 18 wherein said first cache is a session cache. 20. The computer-readable storage device of claim 17 wherein said first transaction is nested in a second transaction wherein said first cache is associated with said first transaction and said second cache is associated with said second transaction. 21. The computer-readable storage device of claim 20 wherein said second cache is only accessible by said second transaction. 22. The computer-readable storage device of claim 21 wherein said second cache is a session cache. 23. The computer-readable storage device of claim 17 wherein the one or more sequences of instructions further comprise instructions which, when executed by the one or more processors, cause the one or more processors to perform the step of: maintaining outside of said database system said first cache, said second cache, and a third cache; wherein said first cache stores said first version of said entry for said permissions metadata, wherein said first version reflects modifications made by said first transaction during a first session and does not reflect modifications made during a second session; wherein said third cache stores a third version of said entry for said permissions metadata, wherein said third version reflects modifications made by a second transaction during said second session and does not reflect modifications made during said first session; and wherein said second cache stores said second version of said entry for said permissions metadata, wherein said second version reflects all modifications of said permissions metadata that have been committed by said database system; wherein the instructions that cause the one or more processors to perform step of invalidating said second version of said entry further comprise instructions which, when executed by the one or more processors, cause the one or more processors to perform the step of invalidating said second version of said entry when any one of said first transaction and said second transaction successfully terminates. 24. The computer-readable storage device of claim 23 wherein said permissions metadata, that is stored in any one of said first cache and said third cache, is modified directly. 25. The computer-readable storage device of claim 23 wherein said permissions metadata, that is stored in any one of said first cache and said third cache, is modified indirectly. 26. The computer-readable storage device of claim 23 wherein said permissions metadata is for one or more users. 27. The computer-readable storage device of claim 26 wherein said one or more users is associated with one or more groups. 28. The computer-readable storage device of claim 26 wherein a particular user of said one or more users is associated with more than one group, and the one or more sequences of instructions further comprise instructions which, when executed by the one or more processors, cause the one or more processors to perform the step of: merging together all permissions metadata for said particular user from said more than one group. 29. A computer-readable storage device storing one or more sequences of instructions for maintaining information about a file managed by a database system, which instructions, when executed by one or more processors, cause the one or more processors to perform the steps of: storing within a first cache a first version of an entry that includes only changes made by a first transaction associated with said first cache; wherein said entry is for permissions metadata that is associated with said file managed by said database system; storing within a second cache a second version of said entry that does not include said changes made by said first transaction; and when said first transaction successfully terminates; patching up, within said second cache, said second version of said entry to include said changes made by said first transaction; and committing said first version of said entry with said changes made by said first transaction. 30. The computer-readable storage device of claim 29 wherein prior to patching up said second version of said entry, said second version of said entry has been committed by said database system. 31. The computer-readable storage device of claim 29, wherein: said first cache is a session cache; and said second cache is a committed cache associated with said session cache. 32. The computer-readable storage device of claim 29, wherein: said first cache is only accessible by said first transaction; and said first transaction is nested in a second transaction.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.