pgupta
February 16, 2017, 5:46am
7
For a record UDF, when operating on a record, the lock will be on that record which is isolated to the node on which the record is, the namespace that record is in and the partition that record is in. There are 4K partitions.
Ver 3.11 has introduced further refinement of the partition into sprigs (Configuration Reference | Aerospike Documentation )
which will improve performance significantly.
This page has some discussion on assessing UDF performance: Managing UDFs | Aerospike Documentation
Also see
Hi,
Needed information regarding record locking in case of udf’s with respect to following two cases-
Since stream udf’s are read only, do they perform record locking?
Record udf’s can write/update. Do they hold locks for the duration of the udf execution? How does this affect concurrent invocations of the same record udf ? Are they executed serially so as to achieve mutual exclusion?
Locking in general will affect consistency/performance as well. Need precise behavior information so as to des…
I would like to know in general, does Aerospike perform locking on the db when Aeropsike is performing aggregation, applying udfs.
If there is locking, how is the locking implemented, row level locking, or set level locking or namespace level locking.
The reason I am asking is because I am thinking of using Aerospike to aggregate a large db while making queries on it at the same time at a very high rate, I want to make sure the read performance is not greatly affected by the aggregation operat…
It seems like Aerospike reads block each other. What’s the reason for this? And are read-only Scans the same as normal reads, but occur without affecting baseline database transactions?
1 Like