You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/system_overview/data_objects.md
+48-1Lines changed: 48 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,6 +45,53 @@ $ ils -l /tempZone/home/rods/foo
45
45
rods 1 resc_1 284 2022-07-20.17:31 ? foo
46
46
```
47
47
48
+
### Access Time
49
+
50
+
iRODS tracks access times for all replicas to help administrators and users better understand data access patterns. This feature is designed for performance and efficiency, using a background queue mechanism.
51
+
52
+
Each replica of a data object maintains its own independent access time.
53
+
54
+
---
55
+
56
+
#### When are access times updated?
57
+
58
+
- Access time updates are triggered when a replica is opened for reading
59
+
- An update is queued only if:
60
+
- The replica’s last access time is earlier than its modification time, or
61
+
- The last access time is older than a configured threshold
62
+
63
+
Access time updates are processed in the background using a shared memory message queue. Queued updates do not persist across server restarts.
64
+
65
+
!!! Tip
66
+
You can use [GenQuery](../system_overview/genquery.md) to retrieve replica access times and build custom reports or queries.
67
+
68
+
---
69
+
70
+
#### Configuration Options
71
+
72
+
Access time tracking is controlled by four zone-wide configuration options. These are stored in the catalog (`R_GRID_CONFIGURATION`) and can be modified using the [`iadmin`](../icommands/administrator.md#iadmin) tool.
73
+
74
+
!!! Warning
75
+
All changes require a full server restart to take effect.
76
+
77
+
| Namespace | Option Name | Description | Default |
78
+
|---|---|---|---|
79
+
| access_time | queue_name_prefix | Prefix for the shared memory queue file name (not the directory). | irods_access_time_queue_|
80
+
| access_time | queue_size | Max number of entries the queue can hold. If the queue is full, new entries will be dropped.<br>**Maximum allowed:** 500000 | 20000 |
81
+
| access_time | batch_size | Maximum number of updates processed in a single batch. | 20000 |
82
+
| access_time | resolution_in_seconds | Minimum number of seconds between access time updates for a given replica (if its access time is already newer than its modification time). | 86400 _(24 hours)_|
83
+
84
+
---
85
+
86
+
#### Notes for Administrators
87
+
88
+
- This feature is zone-wide and affects all replicas
89
+
- Each replica's access time is tracked independently of other replicas of the same data object
90
+
- Designed to be lightweight and efficient, with deferred updates
91
+
- Enables better usage auditing and can inform data management policies
92
+
93
+
Tune the configuration values based on your system’s usage patterns and performance goals.
94
+
48
95
## Logical Locking
49
96
50
97
### Overview
@@ -407,4 +454,4 @@ The following are all of the columns representing the system metadata in the tab
407
454
-`modify_ts`: Timestamp which indicates the most recent time that this replica was modified, represented as seconds since the epoch. This will be updated every time this replica is opened for write and modified.
408
455
-`resc_hier`: This column is no longer used by iRODS. The value `EMPTY_RESC_HIER` is used to discourage legacy queries.
409
456
-`resc_id`: Identifier unique to the storage resource which hosts this replica. The identifiers are defined in `R_RESC_MAIN` which contains all of the information about the resources in a given zone.
410
-
457
+
-`access_ts`: Timestamp which indicates the last time that this replica was accessed, represented as seconds since the epoch. See [Access Time](#access-time) for more information.
0 commit comments