Hoạt động của mục cập nhật DynamoDB

Hoat Dong Cua Muc Cap Nhat Dynamodb



Thao tác UpdateItem trong AWS DynamoDB giúp người quản lý cơ sở dữ liệu sửa đổi hoặc chỉnh sửa bảng DynamoDB hiện có. Nó cho phép bạn cập nhật một hoặc nhiều thuộc tính của một mục đã tồn tại hoặc thêm mục mới vào mục mới vào bảng hiện có trong cơ sở dữ liệu của bạn. Đáng chú ý, bạn cũng có thể sử dụng thao tác này để thay thế một cặp giá trị thuộc tính hiện có.

Bài viết này thảo luận mọi thứ về hoạt động UpdateItem. Bạn sẽ tìm hiểu về tóm tắt hoạt động, các tham số và cách sử dụng nó.

Bản tóm tắt và thông số của DynamoDB

Giống như mọi thao tác cơ sở dữ liệu khác, thao tác UpdateItem của DynamoDB có phần tóm tắt và các tham số liên quan. Bản tóm tắt Python cho thao tác này được hiển thị bên dưới. Nó có thể thay đổi một chút dựa trên ngôn ngữ lập trình của bạn nhưng hầu hết các tham số sẽ giữ nguyên.







cập nhật mục (
Tên bảng = 'chuỗi' ,
Chìa khóa = {
'chuỗi' : { 'S' : 'chuỗi' , 'N' : 'chuỗi' , 'B' : b 'byte' , 'SS' : [ 'chuỗi' , ... ] , 'NS' : [ 'chuỗi' , ... ] , 'BS' : [ b 'byte' , ... ] }
} ,
Cập nhật biểu thức = 'chuỗi' ,
Điều kiệnBiểu thức = 'chuỗi' ,
Giá trị thuộc tính biểu thức = {
':chuỗi' : { 'S' : 'chuỗi' , 'N' : 'chuỗi' , 'B' : b 'byte' , 'SS' : [ 'chuỗi' , ... ] , 'NS' : [ 'chuỗi' , ... ] , 'BS' : [ b 'byte' , ... ] } ,
...
} ,
Giá trị trả về = 'KHÔNG AI' ,
ReturnConsumedCapacity = 'CHỈ SỐ' ,
ReturnItemCollectionMetrics = 'KÍCH THƯỚC'
)

Để sử dụng thao tác UpdateItem trong Amazon DynamoDB, bạn sẽ cần sử dụng cú pháp ở trên và cung cấp một số tham số chỉ định mục bạn định cập nhật. Bạn cũng sẽ cần chỉ định các giá trị thuộc tính mới cho cài đặt mới.



Đáng chú ý là lệnh UpdateItem điển hình của DynamoDB phải chứa các tham số sau:



  • Tên bảng : Tên của bảng DynamoDB chứa mục mà bạn muốn cập nhật.
  • Chìa khóa : Khóa chính (khóa phân vùng/khóa sắp xếp) của mục bạn cần cập nhật. Đảm bảo rằng bạn chỉ định đây là bản đồ của các cặp giá trị/tên thuộc tính.
  • Cập nhật biểu thức : Một biểu thức xác định các thuộc tính bạn nên cập nhật và các giá trị mới cho các thuộc tính đó.

Ngoài ra, bạn có thể cần cung cấp các tham số tùy chọn bên dưới. Các tham số này là tùy chọn và sẽ phụ thuộc vào môi trường của bạn:





  • Điều kiệnBiểu thức : Chuỗi tùy chọn này chỉ định điều kiện cho thao tác cập nhật mục. Bản cập nhật sẽ chỉ thành công nếu điều kiện được đánh giá là Đúng.
  • Biểu thứcTên thuộc tính : Nó là ánh xạ của các tên thuộc tính giữ chỗ thường được sử dụng trong UpdateExpression thành các tên thuộc tính thực tế như được sử dụng trong bảng. Tham số này chỉ cần thiết nếu bất kỳ tên thuộc tính nào trong UpdateExpression có các từ dành riêng hoặc/và các ký tự đặc biệt.
  • Giá trị thuộc tính biểu thức : Đây là bản đồ các giá trị giữ chỗ được sử dụng trong UpdateExpression với các giá trị thực mà bạn định sử dụng trong thao tác cập nhật. Sẽ hữu ích nếu bất kỳ giá trị thuộc tính nào trong UpdateExpression là biểu thức hoặc biến.
  • Giá trị trả về : Điều này chỉ định thông tin nào bạn sẽ cần được trả về sau khi thao tác thành công. Giá trị mặc định là KHÔNG, nghĩa là bạn sẽ không tìm thấy bất kỳ thông tin nào về phản hồi.
  • ReturnConsumedCapacity : Điều này chỉ định lượng dung lượng đã được sử dụng bởi hoạt động cập nhật. Giá trị mặc định của nó là KHÔNG, ngụ ý rằng bạn sẽ không tìm thấy thông tin này trong giá trị trả về.
  • ReturnItemCollectionMetrics : Điều này chỉ định số lượng bộ sưu tập vật phẩm bị ảnh hưởng bởi hoạt động cập nhật vật phẩm của DynamoDb. Giá trị mặc định là KHÔNG, có nghĩa là thông tin này không được trả về.

Khi sử dụng AWS CLI, cú pháp DynamoDB UpdateItem sẽ giống như sau:

mục cập nhật aws dynamodb \
--tên-bảng TABLE_NAME \
--Chìa khóa '{ 'KEY_NAME': {'S': 'KEY_VALUE' } }' \
--update-expression 'ĐẶT ATTRIBUTE_NAME = :val1, ATTRIBUTE_NAME2 = :val2' \
--biểu thức-thuộc tính-giá trị '{ ':val1': {'S': 'ATTRIBUTE_VALUE' }, ':val2': {'N': 'ATTRIBUTE_VALUE' } }' \
--return-giá trị UPDATE_OLD

Ví dụ về cách sử dụng thao tác UpdateItem của DynamoDB

Thao tác DynamoDB UpdateItem rất dễ sử dụng. Và trong khi thực hiện, hãy đảm bảo rằng bạn bao gồm thuộc tính khóa chính và Biểu thức cập nhật.



Dưới đây là ví dụ về cách bạn có thể sử dụng thao tác UpdateItem để sửa đổi bảng DynamoDB:

mục cập nhật aws dynamodb \
--tên-bảng Âm nhạc \
--Chìa khóa '{ 'Artist': {'S': 'Sauti Sol'}, 'SongTitle': {'S': 'Feel My Love'}}' \
--update-expression 'SET AlbumTitle = :newval' \
--biểu thức-thuộc tính-giá trị '{':newval':{'S':'Tiêu đề album đã cập nhật'}}' \
--return-giá trị TẤT CẢ ĐỀU MỚI

Kết quả cho thao tác trên sẽ như sau:

Phần kết luận

DynamoDB UpdateItem Operation rất dễ sử dụng. Bạn có thể sử dụng nó để sửa đổi các mục trong các bảng hiện có hoặc thêm các mục vào một bảng đã có sẵn. Lưu ý rằng bạn cần chỉ định khóa chính và UpdateExpression để thao tác thành công. Ngoài ra, hãy chú ý đến môi trường của bạn. Cuối cùng, Hoạt động UpdateItem của DynamoDB, giống như các hoạt động còn lại, hoạt động với AWS SDK và AWS CLI.