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
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 DynamoDBThư 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ộ DynamoDBNó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 Quảng cáo xu hướngThế giớiNgười thiệt mạng trên hành trình ở Nam Cực bởi "sóng lừa đảo"Công nghệ & Khoa họcMột công cụ trực tuyến có tên Antibiogo chống lại tình trạng kháng kháng sinhCông nghệ & Khoa họcSpaceX 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ữaCông nghệ & Khoa họcKêu gọi bỏ thuốc lá trước ngày thế giới phòng chống AIDSGiải tríTrong phim mới, Candace Cameron Bure và Marc Blucas xuất sắcBạn cũng có thể thíchCông nghệ & Khoa họcMột công cụ trực tuyến có tên Antibiogo chống lại tình trạng kháng kháng sinhMộ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ông nghệ & Khoa họcnhấn mạnh mới về an ninh mạng để mua sắm trực tuyến an toànTrá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 Việc kinh doanhMộ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 Việc kinh doanhKhi 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ảmNhữ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 URLCấ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 DynamoDBCá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 PythonLớ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ý PythonLớ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
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ệuhttps. // 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 Để 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ềnDướ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ạoKhi 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 PythonBâ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ố 8Trong 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ạoconda 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 Để 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 2Tả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ô-đunconda 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 2Lư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ướiconda activate dynamodb_env 4Chú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ệnhTiế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 sauconda activate dynamodb_env 9Chú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 DynamoDBconda activate dynamodb_env 2Trướ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ạiconda create --name dynamodb_env python=3.6 0Chèn vào bảng DynamoDBBâ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ấtconda create --name dynamodb_env python=3.6 1Bâ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 DynamoDBChú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 3Cá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àyTruy vấn bảng DynamoDBTruy 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ấpconda create --name dynamodb_env python=3.6 4Ví 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 DynamoDBconda create --name dynamodb_env python=3.6 5Xóa mục DynamoDBTiế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ấpconda 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 3Cuố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 |