Sorted set collections
Momento Cacheのソート済みセットは、値(String、Byte[]など)とスコア(符号付きダブル64ビットfloat)のペアを持つ一意の要素のコレクションです。ソートされたセットの要素は、スコア順に並べられます。
Momento コレクションタイプは、CollectionTTLを使用してTTL動作を指定します。これは、すべての "write" 操作のオプション引数です。
Sorted set methods
SortedSetPutElement
ソートされたセットに新しい要素を追加したり、既存のソートされたセット要素を更新したりします。
-
セットが存在しない場合、このメソッドは渡された要素を持つ新しいソート済みセットコレクションを作成します。
-
セットが存在する場合、その 値 が存在しなければ、その要素はソートされたセットに追加されます。その要素の値が存在する場合、その要素は上書きされます。
Name | Type | Description |
---|---|---|
cacheName | String | キャッシュの名前 |
setName | String | 変更するソートセットコレクションの名前。 |
value | String | Byte[] | The value of the element to be added to the sorted set by this operation. |
score | number | The score of the element to be added to the sorted set by this operation. |
ttl | CollectionTTL object | TTL for the sorted set collection. This TTL takes precedence over the TTL used when initializing a cache connection client. |
Method response object
- Success
- Error
詳しくはレスポンスオブジェクトを参照してください。
- JavaScript
- Rust
- Elixir
const result = await cacheClient.sortedSetPutElement(cacheName, 'test-sorted-set', 'test-value', 5);
switch (result.type) {
case CacheSortedSetPutElementResponse.Success:
console.log("Value 'test-value' with score '5' added successfully to sorted set 'test-sorted-set'");
break;
case CacheSortedSetPutElementResponse.Error:
throw new Error(
`An error occurred while attempting to call cacheSortedSetPutElement on sorted set 'test-sorted-set' in cache '${cacheName}': ${result.errorCode()}: ${result.toString()}`
);
}
cache_client
.sorted_set_put_element(cache_name, "sorted_set_name", "value", 1.0)
.await?;
println!("Element added to sorted set");
case Momento.CacheClient.sorted_set_put_element(
client,
"test-cache",
"test-sorted-set",
"test-value",
5.0
) do
{:ok, _} ->
IO.puts(
"Value 'test-value' with score '5' added successfully to sorted set 'test-sorted-set'"
)
{:error, error} ->
IO.puts(
"An error occurred while attempting to put an element into sorted set 'test-sorted-set' in cache 'test-cache': #{error.error_code}"
)
raise error
end
SortedSetPutElements
Adds new or updates existing sorted set elements in a sorted set collection.
-
If the set does not exist, this method creates a new sorted set collection with the element(s) passed in.
-
If the set exists, for each SortedSetElement in the array, each element is added to the sorted set if that value doesn't exist. If the value of that element does exist, that element is overwritten.
Name | Type | Description |
---|---|---|
cacheName | String | キャッシュの名前 |
setName | String | 変更するソートセットコレクションの名前。 |
elements | SortedSetElement[] | この操作によってソートされたセットに追加される要素。 |
ttl | CollectionTTL object | ソートされたセットコレクションの TTL。この TTL は、キャッシュ接続クライアントを初期化するときに使用される TTL よりも優先されます。 |
Method response object
- Success
- Error
詳しくはレスポンスオブジェクトを参照してください。
- JavaScript
- Rust
- Elixir
const result = await cacheClient.sortedSetPutElements(
cacheName,
'test-sorted-set',
new Map<string, number>([
['key1', 10],
['key2', 20],
])
);
switch (result.type) {
case CacheSortedSetPutElementsResponse.Success:
console.log("Elements added successfully to sorted set 'test-sorted-set'");
break;
case CacheSortedSetPutElementsResponse.Error:
throw new Error(
`An error occurred while attempting to call cacheSortedSetPutElements on sorted set 'test-sorted-set' in cache '${cacheName}': ${result.errorCode()}: ${result.toString()}`
);
}
cache_client
.sorted_set_put_elements(
cache_name,
"sorted_set_name",
vec![("value1", 1.0), ("value2", 2.0)],
)
.await?;
println!("Elements added to sorted set");
case Momento.CacheClient.sorted_set_put_elements(client, "test-cache", "test-sorted-set", [
{"key1", 10.0},
{"key2", 20.0}
]) do
{:ok, _} ->
IO.puts("Elements added successfully to sorted set 'test-sorted-set'")
{:error, error} ->
IO.puts(
"An error occurred while attempting to put elements into sorted set 'test-sorted-set' in cache 'test-cache': #{error.error_code}"
)
raise error
end