Podrobná bibliografie
| Název: |
HIGH PERFORMANCE, DISTRIBUTED, SHARED, DATA GRID FOR DISTRIBUTED JAVA VIRTUAL MACHINE RUNTIME ARTIFACTS |
| Document Number: |
20140359043 |
| Datum vydání: |
December 4, 2014 |
| Appl. No: |
13/904843 |
| Application Filed: |
May 29, 2013 |
| Abstrakt: |
A server and/or a client stores a metadata hash map that includes one or more entries associated with keys for data records stored in a cache on a server, wherein the data records comprise Java Virtual Machine (JVM) artifacts or monitoring information. Each of the entries stores metadata for a corresponding data record, wherein the metadata comprises a server-side remote pointer that references the corresponding data record stored in the cache, as well as a version identifier for the key. A selected data record is accessed using a provided key by: (1) identifying potentially matching entries in the metadata hash map using the provided key; (2) accessing data records stored in the cache using the server-side remote pointers from the potentially matching entries; and (3) determining whether the accessed data records match the selected data record using the provided key and the version identifiers from the potentially matching entries. |
| Assignees: |
International Business Machines Corporation (Armonk, NY, US) |
| Claim: |
1. An apparatus for accessing data stored in a cache on a server, comprising: (a) a server or a client storing a metadata hash map that is associated with a cache stored on the server, wherein: (1) the cache stores one or more data records that comprise an artifact or monitoring information; (2) the metadata hash map includes one or more entries associated with the data records stored in the cache, each of the entries are associated with a key for a corresponding data record in the cache, each of the entries store metadata for the corresponding data record, and the metadata comprises a server-side remote pointer that references the corresponding data record stored in the cache on the server, as well as a version identifier for the key; and (b) the client accessing a selected data record stored in the cache on the server using a provided key by: (1) identifying one or more potentially matching entries in the metadata hash map using the provided key; (2) accessing one or more data records stored in the cache on the server using the server-side remote pointers from the potentially matching entries in the metadata hash map; and (3) determining whether the accessed data records match the selected data record using the provided key and the version identifiers from the potentially matching entries in the metadata hash map. |
| Claim: |
2. The apparatus of claim 1, wherein the artifact is a Java virtual machine (JVM) artifact and the client shares the artifact with other applications in a shared classes JVM environment. |
| Claim: |
3. The apparatus of claim 2, wherein the Java virtual machine (JVM) artifact comprises generated code, user classes or system classes, that the client shares with other applications in the shared classes JVM environment. |
| Claim: |
4. The apparatus of claim 1, wherein the client creates or updates the selected data record comprising the artifact and stores the selected data record in the cache on the server. |
| Claim: |
5. The apparatus of claim 1, wherein the selected data record comprises monitoring information and the client stores the monitoring information in the cache stored on the server. |
| Claim: |
6. The apparatus of claim 5, wherein the monitoring information comprises run-time information from a Java virtual machine (JVM) and the monitoring information is used to tune the JVM. |
| Claim: |
7. The apparatus of claim 1, wherein the metadata hash map on the client is updated when a create, read, update or delete operation performed by the server at the client's direction results in the metadata hash map on the being updated. |
| Claim: |
8. The apparatus of claim 1, wherein the accessing (2) comprises performing one or more remote direct memory access (RDMA) operations on the client using the server-side remote pointer to directly access the data record stored in the cache on the server via an RDMA network interface controller. |
| Claim: |
9. A method for accessing data stored in a cache on a server, comprising: (a) storing a metadata hash map on a server or a client that is associated with a cache stored on the server, wherein: (1) the cache stores one or more data records that comprise an artifact or monitoring information; (2) the metadata hash map includes one or more entries associated with the data records stored in the cache, each of the entries are associated with a key for a corresponding data record in the cache, each of the entries store metadata for the corresponding data record, and the metadata comprises a server-side remote pointer that references the corresponding data record stored in the cache on the server, as well as a version identifier for the key; and (b) the client accessing a selected data record stored in the cache on the server using a provided key by: (1) identifying one or more potentially matching entries in the metadata hash map using the provided key; (2) accessing one or more data records stored in the cache on the server using the server-side remote pointers from the potentially matching entries in the metadata hash map; and (3) determining whether the accessed data records match the selected data record using the provided key and the version identifiers from the potentially matching entries in the metadata hash map. |
| Claim: |
10. The method of claim 9, wherein the artifact is a Java virtual machine (JVM) artifact and the client shares the artifact with other applications in a shared classes JVM environment. |
| Claim: |
11. The method of claim 10, wherein the Java virtual machine (JVM) artifact comprises generated code, user classes or system classes, that the client shares with other applications in the shared classes JVM environment. |
| Claim: |
12. The method of claim 9, wherein the client creates or updates the selected data record comprising the artifact and stores the selected data record in the cache on the server. |
| Claim: |
13. The method of claim 9, wherein the selected data record comprises monitoring information and the client stores the monitoring information in the cache stored on the server. |
| Claim: |
14. The method of claim 13, wherein the monitoring information comprises run-time information from a Java virtual machine (JVM) and the monitoring information is used to tune the JVM. |
| Claim: |
15. The method of claim 9, wherein the metadata hash map on the client is updated when a create, read, update or delete operation performed by the server at the client's direction results in the metadata hash map on the being updated. |
| Claim: |
16. The method of claim 9, wherein the accessing (2) comprises performing one or more remote direct memory access (RDMA) operations on the client using the server-side remote pointer to directly access the data record stored in the cache on the server via an RDMA network interface controller. |
| Claim: |
17. A computer program product for accessing data stored in a cache on a server, said computer program product comprising: a computer readable storage medium having stored or encoded thereon: program instructions executable by one or more computers to cause the computers to perform the steps of: (a) storing a metadata hash map on a server or a client that is associated with a cache stored on the server, wherein: (1) the cache stores one or more data records that comprise an artifact or monitoring information; (2) the metadata hash map includes one or more entries associated with the data records stored in the cache, each of the entries are associated with a key for a corresponding data record in the cache, each of the entries store metadata for the corresponding data record, and the metadata comprises a server-side remote pointer that references the corresponding data record stored in the cache on the server, as well as a version identifier for the key; and (b) the client accessing a selected data record stored in the cache on the server using a provided key by: (1) identifying one or more potentially matching entries in the metadata hash map using the provided key; (2) accessing one or more data records stored in the cache on the server using the server-side remote pointers from the potentially matching entries in the metadata hash map; and (3) determining whether the accessed data records match the selected data record using the provided key and the version identifiers from the potentially matching entries in the metadata hash map. |
| Current U.S. Class: |
709/212 |
| Current International Class: |
06 |
| Přístupové číslo: |
edspap.20140359043 |
| Databáze: |
USPTO Patent Applications |