Cách sử dụng AWS DynamoDB với Python

Trong bài viết này, chúng ta sẽ thảo luận về cách sử dụng DynamoDB với Python. DynamoDB về cơ bản là phiên bản AWS của MongoDB. DynamoDB là giải pháp nếu bạn đang tìm cơ sở dữ liệu hỗ trợ NoSQL

Show

Cách sử dụng AWS DynamoDB với Python

Nếu bạn đến từ thế giới MongoDB, bạn sẽ cần dành thời gian làm quen với Dynamo vì nó có cách tiếp cận lược đồ NoSQL, trong khi nếu bạn đến từ cơ sở dữ liệu quan hệ như MySQL hoặc Postgres, thì Dynamo rất khác

Hãy tiếp tục đọc khi chúng ta thảo luận về nó và đặc biệt là cách Python có thể được sử dụng kết hợp với nó trong cả hai tình huống

Cách Python hoạt động với DynamoDB

Thư viện có tên là Boto3 được sử dụng để giao tiếp Python với AWS DynamoDB. Boto3 về cơ bản là một SDK cung cấp chức năng cho cơ sở dữ liệu và hiển thị một số hàm Python để giúp cuộc sống của bạn dễ dàng hơn

Liên kết sau bao gồm giải thích kỹ lưỡng về cách thiết lập, các ví dụ và hướng dẫn từng bước với mã Python

Hướng dẫn đầy đủ về Python AWS DynamoDB

Bạn có thể bắt đầu quy trình và bắt đầu sử dụng DynamoDB ngay với sự trợ giúp của hướng dẫn ở trên

Cách kiểm tra cục bộ DynamoDB

Nói chung, AWS cung cấp một gói dễ tải xuống, ở dạng bộ chứa docker hoặc dưới dạng tệp zip, mà bạn có thể chạy cục bộ bằng Java để bạn có thể kiểm tra mã của mình nhằm đảm bảo rằng mọi thứ đang hoạt động

Lợi ích của việc chạy cục bộ này là bạn sẽ không cần phải sử dụng bất kỳ tài nguyên không cần thiết nào trên tài khoản đám mây AWS của mình và bạn sẽ không tốn bất kỳ khoản tiền nào để kiểm tra mã của mình ở đó. Khi bạn có thiết lập này, bạn sẽ muốn tạo một vài bảng để bạn có thể truy cập chúng bằng mã kiểm tra của mình

Dưới đây là liên kết đến hướng dẫn toàn diện giải thích cách thiết lập bảng của bạn và chạy DynamoDB cục bộ

Chạy cục bộ DynamoDB và điền dữ liệu vào các bảng

Ngoài ra, thử nghiệm cục bộ thực tế hơn vì nó làm tăng khả năng sửa lỗi trước khi nó ảnh hưởng đến môi trường sản xuất hoặc dàn dựng

Cách truy cập dữ liệu DynamoDB

Điều cuối cùng bạn cần làm là truy cập dữ liệu DynamoDB, cục bộ trên máy tính của bạn hoặc từ xa trên máy chủ. Để thực hiện việc này, bạn có thể tạo một vài tập lệnh bằng cách sử dụng hướng dẫn trong bài viết ở trên, sau đó bạn có thể bắt đầu chạy truy vấn và lấy dữ liệu của mình từ đó

Ngoài ra, khi đã ở trong AWS, bạn có thể chạy truy vấn DynamoDB bằng ứng dụng khách dòng lệnh AWS đơn giản, cho phép bạn tạo tập lệnh truy xuất dữ liệu hoặc yêu cầu kết quả lồng nhau

Chỉ cần lưu ý rằng phương pháp này khá hạn chế về những gì bạn có thể làm vì nó không hỗ trợ các truy vấn lồng nhau. Ngoài ra, giao diện web có sẵn. Nếu bạn cần thực hiện các truy vấn độ sâu lồng nhau, bạn nên sử dụng phương pháp Python Boto3 vì nó cho phép bạn làm như vậy

Express Wire đã phân phối thông cáo báo chí

Bạn có thể xem Cách sử dụng AWS DynamoDB với Python trên The Express Wire;

In bài viết này
Được viết bởi TheExpressWire TheExpressWire
Cách sử dụng AWS DynamoDB với Python
Quảng cáo

xu hướng

Cách sử dụng AWS DynamoDB với Python

Thế giới

Người thiệt mạng trên hành trình ở Nam Cực bởi "sóng lừa đảo"

Cách sử dụng AWS DynamoDB với Python

Công nghệ & Khoa học

Một công cụ trực tuyến có tên Antibiogo chống lại tình trạng kháng kháng sinh

Cách sử dụng AWS DynamoDB với Python

Công nghệ & Khoa học

SpaceX trì hoãn việc phóng tàu đổ bộ mặt trăng của Nhật Bản một lần nữa

Cách sử dụng AWS DynamoDB với Python

Công nghệ & Khoa học

Kêu gọi bỏ thuốc lá trước ngày thế giới phòng chống AIDS

Cách sử dụng AWS DynamoDB với Python

Giải trí

Trong phim mới, Candace Cameron Bure và Marc Blucas xuất sắc

Bạn cũng có thể thích

Cách sử dụng AWS DynamoDB với Python
Cách sử dụng AWS DynamoDB với Python

Công nghệ & Khoa học

Một công cụ trực tuyến có tên Antibiogo chống lại tình trạng kháng kháng sinh

Một tùy chọn chẩn đoán mới, sáng tạo được cung cấp bởi công nghệ này để giúp giải quyết tình trạng khẩn cấp về sức khỏe toàn cầu, đặc biệt là ở các quốc gia có thu nhập thấp và trung bình

Tiến sĩ. Tim Sandle17 giờ trước17 giờ trước
Cách sử dụng AWS DynamoDB với Python
Cách sử dụng AWS DynamoDB với Python

Công nghệ & Khoa học

nhấn mạnh mới về an ninh mạng để mua sắm trực tuyến an toàn

Tránh thanh toán bằng thẻ ghi nợ của bạn cho các mặt hàng đắt tiền vì bạn có thể được bồi thường theo luật tiêu dùng của Vương quốc Anh

Tiến sĩ. Tim Sandle14 giờ trước14 giờ trước
Cách sử dụng AWS DynamoDB với Python
Cách sử dụng AWS DynamoDB với Python

Việc kinh doanh

Một cựu CEO của Wirecard đang bị xét xử vì tội gian lận "vô song"

Markus Braun, người khẳng định mình vô tội, có thể phải ngồi tù nhiều năm nếu bị kết tội. - Bản quyền AFP FETHI BELAIDMichelle FITZPATRICK

AFP10 giờ trước10 giờ trước
Cách sử dụng AWS DynamoDB với Python
Cách sử dụng AWS DynamoDB với Python

Việc kinh doanh

Khi Trung Quốc nới lỏng thêm các biện pháp Covid, chứng khoán châu Á tăng và đồng đô la giảm

Những nỗ lực của Trung Quốc nhằm nới lỏng hơn nữa các biện pháp ngăn chặn Covid đã được các thương nhân ca ngợi. - Bản quyền AFP Jade GAO Chứng khoán châu Á tăng và do đó đồng đô la giảm nhiều hơn

Amazon DynamoDB là cơ sở dữ liệu khóa-giá trị và tài liệu mang lại hiệu suất một phần nghìn giây ở mọi quy mô. https. //aws. amazon. com/dynamodb/

Hướng dẫn này nhằm cung cấp cơ sở hoặc bắt đầu nhanh để giao tiếp với AWS DynamoDB bằng Python, nội dung của nó dựa trên repo https. //github. com/5thempire/aws-dynamodb

Các ví dụ được chọn nhằm minh họa phạm vi rộng của các tùy chọn có sẵn, mặc dù chúng không phải là trường hợp sử dụng điển hình

Chúng ta sẽ tạo hai bảng. một để lưu trữ URL và tên miền tương ứng của chúng và một để lưu trữ nhật ký, có dấu thời gian, trạng thái nhật ký và thông báo. Mô hình dữ liệu URL sẽ sử dụng cấu hình khóa-giá trị, trong khi mô hình dữ liệu nhật ký sẽ sử dụng cấu hình tài liệu

Trước tiên, hãy xác định các mô hình dữ liệu

Khóa-Giá trị — Mô hình dữ liệu URL

Cấu hình khóa-giá trị là một triển khai rất đơn giản, trong đó yêu cầu duy nhất là chỉ định khóa hoặc chỉ mục. Trong DynamoDB, giá trị này được đặt theo định nghĩa thuộc tính và lược đồ chính

Định nghĩa thuộc tính lưu trữ tên của các khóa và loại tương ứng của chúng

Lược đồ khóa xác định loại khóa chính mà chúng tôi đang sử dụng, trong DynamoDB, chúng có thể là một trong hai loại, hàm băm hoặc phạm vi. Chúng tôi có thể có một trong số đó, nhưng đối với ví dụ hiện tại, chúng tôi sẽ chỉ sử dụng hàm băm, để lại phạm vi cho bạn chơi với

Tài liệu — Mô hình dữ liệu nhật ký

Cấu hình tài liệu phức tạp hơn một chút. Để truy vấn các tài liệu nhật ký, chúng tôi sẽ sử dụng hai chỉ mục, một chỉ mục sẽ là dấu thời gian và chỉ mục còn lại là trạng thái của nhật ký, chỉ mục sau được đặt làm chỉ mục phụ toàn cầu

Chỉ mục phụ toàn cầu cũng bao gồm thuộc tính phép chiếu. Cấu hình này rất quan trọng, vì nó xác định những gì sẽ được truy xuất khi chúng ta truy vấn bằng chỉ mục phụ. Theo định nghĩa của chúng tôi, chúng tôi đang truy xuất tài liệu hoàn chỉnh

Lớp cơ sở Python DynamoDB

Cách tiếp cận này có một lớp cơ sở để tương tác với DynamoDB, lớp này không được sử dụng riêng mà để cung cấp cơ sở vững chắc cho các định nghĩa cụ thể của bảng. Các đặc điểm này được thiết lập bằng cách ghi đè các phương thức trừu tượng để nhận, đặt, cập nhật và xóa

Lớp URL Python

Lớp này ghi đè lớp cơ sở bằng cách xác định nội dung cụ thể cho tương tác mô hình dữ liệu miền

Lớp nhật ký Python

Lớp này ghi đè lớp cơ sở bằng cách xác định nội dung cụ thể cho tương tác mô hình dữ liệu nhật ký, nhưng cũng thêm các phương thức lọc. Có hai bộ lọc được xác định

  • filter_by_timestamp_status. sử dụng cả dấu thời gian và phím trạng thái để lọc kết quả
  • filter_by_status. lọc theo một trạng thái cụ thể (i. e. THÔNG TIN)

kết thúc

Đừng quên có một số tùy chọn cung cấp mức độ trừu tượng điển hình mà một mô hình cơ sở dữ liệu thường yêu cầu. Tuy nhiên, đôi khi cách tiếp cận thực tế hơn được ưu tiên hơn

Đối với những người muốn trải nghiệm một ví dụ đang chạy, hãy truy cập https. //github. com/5thempire/aws-dynamodb. Ở đó, bạn sẽ tìm thấy các mẫu được đề cập ở đây cùng với bộ thử nghiệm tương ứng, có thể được sử dụng làm cơ sở cho các thử nghiệm tiếp theo

Người giới thiệu

https. // tài liệu. aws. amazon. com/amazondynamodb/latest/developerguide/Giới thiệu. html

https. // amazon-dynamodb-labs. com/

Tại Runtime Revolution, chúng tôi coi trọng nghề thủ công của mình và luôn nỗ lực hết mình để mang đến một sản phẩm đáng tin cậy, có thể bảo trì và kiểm tra được. Bạn có một dự án để tiến tới hoặc một sản phẩm mà bạn muốn tung ra không?

Gần đây, Amazon Web Services (AWS) được báo cáo là nhà cung cấp cơ sở hạ tầng đám mây lớn nhất. Nhiều công ty và tổ chức đang sử dụng nền tảng AWS cho nhiều dịch vụ đám mây của họ. AWS cung cấp nhiều giải pháp đa dạng như DynamoDB. DynamoDB là một dịch vụ cơ sở dữ liệu rất hữu ích cho việc lưu trữ dữ liệu phi quan hệ. Việc sử dụng các cặp khóa-giá trị tương tự như các cặp được sử dụng ở định dạng JSON cho phép nó hữu ích trong nhiều tình huống. Trong ví dụ này, chúng tôi sẽ kết nối với DynamoDB bằng Python. Hướng dẫn này giả định rằng bạn đã có tài khoản AWS và cài đặt Python

Tạo người dùng AWS IAM

Để xác thực với tài khoản AWS của chúng tôi qua Boto3, chúng tôi sẽ cần tạo ID khóa truy cập và khóa truy cập bí mật. Vì thông lệ không sử dụng tài khoản gốc của bạn trong AWS, nên trước tiên chúng tôi sẽ tạo một người dùng quản trị mới. Để bắt đầu, chúng tôi đăng nhập vào tài khoản AWS của mình bằng thông tin đăng nhập gốc. Sau khi được xác thực, hãy điều hướng đến IAM như được hiển thị

All Services -> Security, Identity, & Compliance -> IAM

Cần có một danh sách các đề xuất bảo mật trên trang này. Nếu xác thực đa yếu tố (MFA) không được bật trên tài khoản gốc, bạn nên dành thời gian để thực hiện việc này ngay bây giờ. Trên ngăn bên phải lưu ý ID tài khoản của chúng tôi. Điều này sẽ cần thiết để đăng nhập vào bảng điều khiển AWS với người dùng IAM của chúng tôi trong tương lai. Thay vào đó, vui lòng tạo bí danh tài khoản để sử dụng thay vì ID tài khoản nhưng lưu ý rằng bí danh không bị ẩn nên không nên sử dụng mật khẩu

Trong phần

conda activate dynamodb_env
0 ở ngăn bên trái, chọn
conda activate dynamodb_env
1 rồi nhấp vào
conda activate dynamodb_env
2. Chọn tên người dùng và kiểm tra
conda activate dynamodb_env
3. Nhấp vào tiếp theo để tiến hành quyền

Dưới

conda activate dynamodb_env
4, chọn
conda activate dynamodb_env
5. Đối với ví dụ này, chúng tôi đang tạo tài khoản quản trị viên. Trong tương lai, chúng tôi sẽ muốn tạo người dùng dựa trên nguyên tắc đặc quyền tối thiểu, nghĩa là chúng tôi chỉ nên cung cấp cho người dùng không nhiều hơn quyền truy cập mà họ cần. Chọn hộp kiểm cho chính sách có tên
conda activate dynamodb_env
6 và tiếp tục cho đến khi người dùng mới được tạo

Khi thành công, chúng tôi thấy ID khóa truy cập của mình và khóa truy cập bí mật. Sao chép chúng xuống và bảo mật chúng vì chúng tôi sẽ không thể xem lại khóa truy cập bí mật. May mắn thay, chúng tôi có khả năng tạo thêm khóa nếu cần thiết

Môi trường Python

Bây giờ chúng ta sẽ thiết lập môi trường ảo của mình. Có rất nhiều cách để làm điều này bao gồm cả venv và Anaconda. Đối với dự án này, tôi sẽ sử dụng Anaconda để tạo môi trường ảo. Để thực hiện việc này, hãy mở dấu nhắc lệnh và chạy lệnh bên dưới

________số 8

Trong ví dụ này, một môi trường mới có tên

conda activate dynamodb_env
7 sẽ được tạo bằng Python 3. 6. Trong quá trình thực hiện, bạn sẽ được yêu cầu gõ “y” để tiếp tục. Sau khi hoàn thành, hãy kích hoạt môi trường bằng lệnh sau với
conda activate dynamodb_env
7 là tên của môi trường chúng tôi đã tạo

conda activate dynamodb_env

Nếu lệnh thành công, bạn sẽ thấy dấu nhắc lệnh hiện hiển thị tên môi trường trước đường dẫn hiện tại của bạn

Yêu cầu API

Để có được dữ liệu cho dự án DynamoDB của chúng tôi, chúng tôi sẽ yêu cầu một giao diện lập trình ứng dụng (API). API thường được sử dụng để cung cấp thông tin hoặc phản hồi cho một vấn đề cụ thể. API chúng tôi sẽ sử dụng phản hồi với vị trí hiện tại của Trạm vũ trụ quốc tế (ISS). Chúng tôi có thể sử dụng liên kết sau để kiểm tra phản hồi của API

conda activate dynamodb_env
2

Tải trọng

conda activate dynamodb_env
9 có một đối tượng
conda activate dynamodb_env
20 và một đối tượng
conda activate dynamodb_env
21 có vĩ độ và kinh độ

conda activate dynamodb_env
6Cài đặt mô-đun Python

Để hoàn thành dự án này, chúng tôi sẽ cần cài đặt các mô-đun

conda activate dynamodb_env
22 và
conda activate dynamodb_env
23 vào môi trường ảo của mình nhưng theo lời của LeVar Burton, “bạn không cần phải tin lời tôi. ” Để thấy rằng chúng ta cần nó, hãy mở python bằng cách nhập python vào dòng lệnh. Để hiển thị chúng ta đang ở trong python, bây giờ chúng ta sẽ thấy
conda activate dynamodb_env
24 thay vì thư mục làm việc. Khi chạy các lệnh sau, chúng ta sẽ thấy một ngoại lệ
conda activate dynamodb_env
25 được đưa ra. Điều này cho thấy Python không thể định vị các mô-đun

conda activate dynamodb_env
1

Để cài đặt các mô-đun này, hãy quay lại dòng lệnh bằng cách nhập lệnh sau

conda activate dynamodb_env
2

Lưu ý những mô-đun chúng tôi cài đặt sẽ chỉ được liên kết với môi trường ảo mà chúng tôi đã kích hoạt. Để cài đặt các module, chúng ta sẽ sử dụng lệnh

conda activate dynamodb_env
26 với mã như bên dưới

conda activate dynamodb_env
4

Chúng tôi có thể mở lại python và chạy lại các lệnh

conda activate dynamodb_env
27 và không thấy ngoại lệ nào được đưa ra. Sau đó, chạy lại lệnh
conda activate dynamodb_env
28 để quay lại dấu nhắc lệnh

Tạo bảng DynamoDB

Tiếp theo, sử dụng lệnh

conda activate dynamodb_env
29 để điều hướng đến thư mục bạn muốn thực hiện dự án trong đó. Chúng tôi sẽ sử dụng VIM để tạo và chỉnh sửa tệp mới có tên
conda activate dynamodb_env
60. Nhớ lại, điều này có thể được thực hiện bằng lệnh sau

conda activate dynamodb_env
9

Chúng tôi có thể sử dụng khối mã sau để nhập mô-đun boto3 mà chúng tôi đã cài đặt. Đảm bảo chèn ID khóa truy cập và khóa truy cập bí mật của bạn vào cả hai chức năng

conda activate dynamodb_env
61 và
conda activate dynamodb_env
62 như minh họa bên dưới. Chúng tôi cũng lấy một tập hợp các trường hợp ngoại lệ được đưa ra cụ thể bởi các hành động của DynamoDB

conda activate dynamodb_env
2

Trước khi chúng ta tạo bảng, hãy dành chút thời gian để thảo luận về một số thuộc tính của DynamoDB. Không giống như cơ sở dữ liệu quan hệ, dữ liệu trong DynamoDB ít có cấu trúc hơn và ít bị hạn chế hơn. Điều này cho phép dữ liệu có hình dạng và kích thước khác nhau được lưu trữ mà không cần sửa đổi nhiều. DynamoDB không có lược đồ, nghĩa là chúng ta chỉ cần chỉ định các thuộc tính chính khi tạo bảng. Nhớ lại, API ISS trả về bốn giá trị. Trong số các giá trị được trả về, chỉ có trường dấu thời gian là duy nhất nên chúng tôi sẽ sử dụng trường đó làm khóa chính

Chúng ta sẽ sử dụng khối mã bên dưới để tạo bảng DynamoDB có tên là

conda activate dynamodb_env
63. Theo
conda activate dynamodb_env
64, chúng tôi chỉ định khóa chính của mình bằng cách biểu thị
conda activate dynamodb_env
65
conda activate dynamodb_env
20 và
conda activate dynamodb_env
67
conda activate dynamodb_env
68. Vì chúng tôi đang sử dụng một thuộc tính trong
conda activate dynamodb_env
64, nên chúng tôi cũng phải xác định kiểu dữ liệu dự kiến ​​của thuộc tính. Dưới
conda activate dynamodb_env
10, một lần nữa chúng tôi lưu ý
conda activate dynamodb_env
65 là dấu thời gian và lưu ý
conda activate dynamodb_env
12 là
conda activate dynamodb_env
13 cho số. Cũng lưu ý, nếu khóa của chúng tôi là một chuỗi, chúng tôi sẽ sử dụng
conda activate dynamodb_env
12 của
conda activate dynamodb_env
15. Sau khi tạo bảng được gửi, chúng tôi sử dụng một người phục vụ để chờ thực hiện thành công. Trình phục vụ rất hữu ích trong việc tạo tập lệnh vì chúng ngăn sự cố tham chiếu bảng trước khi bảng được tạo hoàn chỉnh. Cuối cùng, chúng tôi bao quanh nó trong một lần thử/bắt để đưa ra một ngoại lệ nếu bảng đã tồn tại

conda create --name dynamodb_env python=3.6
0Chèn vào bảng DynamoDB

Bây giờ chúng ta cần thu thập dữ liệu để chèn vào bảng của mình. Hiện tại, chúng tôi sẽ sử dụng mô-đun

conda activate dynamodb_env
23 để thực hiện các cuộc gọi đến API ISS và lưu trữ các phản hồi trong từ điển. Lệnh gọi API trả về với một từ điển lồng nhau, vì vậy chúng tôi trích xuất từ ​​điển
conda activate dynamodb_env
21 và lưu trữ dưới các khóa
conda activate dynamodb_env
18 và
conda activate dynamodb_env
19. Lệnh gọi API được thực hiện 5 lần trong vòng lặp for của chúng tôi với bộ hẹn giờ ngủ 1 giây để đảm bảo dấu thời gian của chúng tôi là duy nhất

conda create --name dynamodb_env python=3.6
1

Bây giờ chúng tôi đã sẵn sàng để chèn dữ liệu của bạn vào bảng ________ 163 của chúng tôi. Sử dụng khối mã bên dưới để chọn bảng của chúng tôi và lặp qua tập dữ liệu của chúng tôi. Đối với mỗi mẫu dữ liệu, chúng tôi sử dụng đối tượng bảng để đưa mục vào DynamoDB

conda create --name dynamodb_env python=3.6
2Quét bảng DynamoDB

Chúng tôi có thể xác thực dữ liệu của mình đã được chèn thành công bằng cách quét bảng. Quá trình quét trả về tất cả dữ liệu nên chúng tôi không cần lo lắng về các điều kiện. Điều này hữu ích cho các bảng nhỏ hơn như bảng chúng tôi đã tạo

conda create --name dynamodb_env python=3.6
3

Các phản hồi được thu thập từ API ISS sẽ được in thành công. Hãy dành một chút thời gian để thảo luận về các kiểu dữ liệu được trả về. Lưu ý, chúng tôi đã chỉ định

conda activate dynamodb_env
21 cho loại dữ liệu của
conda activate dynamodb_env
20 nhưng nó quay lại với
conda activate dynamodb_env
23. Chà,
conda activate dynamodb_env
24 là một mô-đun trong Python dành cho toán học dấu phẩy động và cố định và đây là cách Python diễn giải số khi chúng tôi nhận được phản hồi từ DynamoDB. Ngoài ra, hãy chú ý đến kiểu dữ liệu
conda activate dynamodb_env
25 của
conda activate dynamodb_env
18 và
conda activate dynamodb_env
19. Thông thường, chúng tôi sẽ truyền dữ liệu tới một
conda activate dynamodb_env
28 trước khi chèn dữ liệu đó vào bảng nhưng số float rất lạ trong DynamoDB. Một giải pháp thay thế là sử dụng mô-đun
conda activate dynamodb_env
24 và bọc dữ liệu
conda activate dynamodb_env
28 nhưng không cần thiết cho dự án này

Truy vấn bảng DynamoDB

Truy vấn một bảng là tuyệt vời khi bạn chỉ tìm kiếm một tập hợp con dữ liệu thỏa mãn một số điều kiện. Trong khối mã bên dưới, chúng tôi nhận được

conda activate dynamodb_env
20 của mẫu dữ liệu mà trước đây chúng tôi đã chèn vào bảng của mình. Sau đó, chúng tôi truy vấn bảng để trả về cặp khóa khớp với
conda activate dynamodb_env
20 được cung cấp

conda create --name dynamodb_env python=3.6
4

Ví dụ của chúng tôi, chúng tôi đã sử dụng một điều kiện bằng nhau để trả về dữ liệu nhưng có thể thực hiện các phép so sánh khác. Về lý thuyết, chúng ta có thể truy vấn bảng để trả về tất cả các mẫu dữ liệu lớn hơn một

conda activate dynamodb_env
20 đã cho nhưng trường hợp này không phải vậy. Để sắp xếp trên một trường, trước tiên chúng ta phải chỉ định trường đó trong lược đồ bằng cách sử dụng
conda activate dynamodb_env
44 thay vì
conda activate dynamodb_env
67. Ngoài ra, bạn chỉ có thể so sánh bằng trên các khóa chính. Để thuận tiện, bên dưới là danh sách các lệnh gọi hàm (tất cả đều là chữ thường) có thể được sử dụng để truy vấn dữ liệu trong DynamoDB

conda create --name dynamodb_env python=3.6
5Xóa mục DynamoDB

Tiếp theo, chúng tôi sẽ xóa một mục khỏi bảng. Đối với ví dụ này, chúng tôi nhận được một

conda activate dynamodb_env
20 từ một trong các mẫu dữ liệu mà chúng tôi đã chèn trước đó. Sau đó, chúng tôi xóa mục trong bảng có
conda activate dynamodb_env
20 khớp với khóa mà chúng tôi đã cung cấp

conda create --name dynamodb_env python=3.6
6

Để xác thực việc xóa mục, chúng tôi có thể quét lại bảng. Để thuận tiện, mã để quét được đặt bên dưới

conda create --name dynamodb_env python=3.6
3

Xóa bảng DynamoDB

Cuối cùng, chúng tôi sẽ dọn sạch dự án của mình bằng cách xóa bảng mà chúng tôi đã tạo. Trong khối mã sau, chúng tôi gửi lệnh xóa bảng và sử dụng người phục vụ để cho chúng tôi biết khi hoàn thành thành công

conda create --name dynamodb_env python=3.6
8

Đó là nó. Hãy thử nghiệm với mã này. Hãy thử nghĩ về một số cách chúng ta có thể tách các khối mã của mình thành các chức năng có thể sử dụng lại để hỗ trợ các dự án của chúng ta trong tương lai. Để thuận tiện, bạn có thể tìm thấy liên kết đến kho lưu trữ GitHub với mã hoàn chỉnh bên dưới

Python kết nối với DynamoDB như thế nào?

Chúng tôi cần chỉ định region_name , aws_access_key_id , aws_secret_access_key để kết nối với dịch vụ dynamoDb của chúng tôi . Bạn cũng có thể liệt kê tất cả các bảng có sẵn trong dịch vụ DB máy phát điện của chúng tôi. table_status trả về ['ACTIVE'] nếu bảng đã được kết nối thành công. Nếu không, hãy thử kiểm tra khu vực dịch vụ.

Python đọc dữ liệu từ DynamoDB như thế nào?

Hãy cùng xem. .
#1 - Nhận một mục duy nhất với ứng dụng khách DynamoDB. .
#2 - Nhận một mục với Tài nguyên bảng DynamoDB. .
#3 - Sử dụng ứng dụng khách DynamoDB để truy vấn các mục khớp với khóa phân vùng. .
#4 - Sử dụng Tài nguyên bảng DynamoDB để truy vấn các mục khớp với khóa phân vùng

Bạn truy vấn DynamoDB bằng boto3 như thế nào?

Cách truy vấn DynamoDB bằng Boto3 .
nhập json nhập sys nhập boto3 từ boto3. máy phát điện. .
def lambda_handler(sự kiện, ngữ cảnh). bảng = động lực. .
#Thực hiện phản hồi Truy vấn ban đầu = bảng. .
#Trích xuất các mục Kết quả = response['Items'] cho mục trong các mục. countryName = item['CountryName'] state = item['State'] size = sys

Làm cách nào để kết nối pySpark với DynamoDB?

3 câu trả lời .
Tạo một bảng tổ ong tạm thời như. TẠO BẢNG TEMP (loại cột1, loại cột2. ).
Chạy công việc pySpark của bạn và ghi dữ liệu của bạn vào đó. khung dữ liệu. tia lửa tạoOrReplaceTempView("df"). sql("CHÈN GHI ĐẶT BẢNG tạm thời CHỌN * TỪ df")
Tạo bảng kết nối máy phát điện. .
Ghi đè bảng đó bằng bảng tạm thời của bạn