- Sản phẩm›
- Cơ sở dữ liệu›
- Amazon MemoryDB
Tính năng của Amazon MemoryDB
Tại sao nên chọn MemoryDB?
Amazon MemoryDB là một dịch vụ cơ sở dữ liệu nằm trong bộ nhớ, bền bỉ, tương thích với Valkey và Redis OSS để mang lại hiệu năng siêu cao. Nó được xây dựng dành riêng cho các ứng dụng hiện đại có kiến trúc vi dịch vụ.
MemoryDB tương thích với Valkey và Redis OSS, cho phép khách hàng nhanh chóng xây dựng các ứng dụng bằng cách sử dụng chính các cấu trúc dữ liệu Valkey Redis OSS, API cùng lệnh linh hoạt và thân thiện mà hiện họ đang sử dụng. Với MemoryDB, tất cả các dữ liệu sẽ được lưu trữ trên bộ nhớ, điều này cho phép thao tác đọc của bạn đạt độ trễ tính bằng micro giây và thao tác ghi đạt độ trễ chưa đến 10 mili giây cùng với thông lượng cao. Amazon MemoryDB cũng lưu trữ dữ liệu lâu dài trên nhiều Vùng sẵn sàng (AZ) bằng cách sử dụng một bản ghi giao dịch phân tán để cho phép nhanh chóng chuyển đổi dự phòng, khôi phục cơ sở dữ liệu và khởi động lại nút. Với khả năng cung cấp cả hiệu năng trong bộ nhớ và độ bền nhiều vùng sẵn sàng, MemoryDB có thể được sử dụng như một cơ sở dữ liệu chính có hiệu năng cao cho các ứng dụng vi dịch vụ của bạn, loại bỏ nhu cầu quản lý riêng bộ nhớ đệm và cơ sở dữ liệu bền bỉ. MemoryDB đa khu vực là cơ sở dữ liệu đa Khu vực, ở chế độ chủ động-chủ động, cho phép bạn xây dựng các ứng dụng có độ sẵn sàng lên đến 99,999% với độ trễ đọc tính bằng micro giây và độ trễ ghi dưới 10 mili giây.
Khả năng tương thích với Valkey và Redis OSS
Khả năng tương thích với Valkey và Redis OSS
Valkey và Redis OSS là kho dữ liệu khóa-giá trị nhanh chóng, nguồn mở, nằm trong bộ nhớ. Các nhà phát triển sử dụng Valkey và Redis OSS để đạt được thời gian phản hồi chưa đến một mili giây, giúp thực hiện hàng triệu yêu cầu mỗi giây cho các ứng dụng theo thời gian thực trong những ngành như trò chơi điện tử, công nghệ quảng cáo, dịch vụ tài chính, chăm sóc sức khỏe và IoT.
Valkey và Redis OSS cung cấp các API, lệnh và cấu trúc dữ liệu linh hoạt như luồng, tập hợp và danh sách, để xây dựng các ứng dụng linh hoạt và nhanh nhẹn. MemoryDB duy trì khả năng tương thích với Valkey và Redis OSS và hỗ trợ cùng một tập hợp các loại dữ liệu Valkey và Redis OSS, thông số và lệnh quen thuộc với bạn. Điều này có nghĩa là mã, ứng dụng, trình điều khiển và công cụ mà bạn hiện đang sử dụng với Valkey và Redis OSS có thể được sử dụng với MemoryDB. Vì vậy, bạn có thể nhanh chóng xây dựng các ứng dụng.
Hiệu năng siêu nhanh
Hiệu năng siêu nhanh
MemoryDB lưu trữ toàn bộ tập dữ liệu của bạn trong bộ nhớ để cung cấp độ trễ đọc tính bằng micro giây, độ trễ dưới 10 mili giây và thông lượng cao. Độ trễ và thông lượng này cũng được MemoryDB hỗ trợ. MemoryDB có thể xử lý hơn 13 nghìn tỷ yêu cầu/ngày và hỗ trợ tối đa 160 triệu yêu cầu/giây. Các nhà phát triển xây dựng với kiến trúc vi dịch vụ yêu cầu hiệu năng cực cao, vì các ứng dụng này có thể liên quan đến tương tác với nhiều thành phần dịch vụ cho mỗi tương tác người dùng hoặc lệnh gọi API. Với MemoryDB, bạn có thể tận dụng độ trễ cực thấp để mang lại hiệu năng theo thời gian thực cho người dùng cuối.
MemoryDB bao gồm tính năng ghép kênh I/O tăng cường, mang đến những cải tiến đáng kể cho thông lượng và độ trễ ở quy mô lớn. Tính năng ghép kênh I/O tăng cường là một lựa chọn lý tưởng dành cho khối lượng công việc phụ thuộc vào thông lượng có nhiều kết nối máy khách. Những lợi ích của tính năng này cũng thay đổi quy mô theo tính đồng thời của khối lượng công việc. Ví dụ: khi sử dụng nút r6g.4xlarge và chạy 5.200 máy khách đồng thời, bạn có thể tăng đến 46% thông lượng (thao tác đọc và ghi mỗi giây) và giảm đến 21% độ trễ P99 so với MemoryDB phiên bản 6 tương thích với Redis OSS. Đối với các loại khối lượng công việc này, việc xử lý I/O mạng của nút có thể trở thành một yếu tố hạn chế trong khả năng điều chỉnh quy mô.
Với tính năng ghép kênh I/O tăng cường, mỗi luồng I/O mạng chuyên dụng sẽ tạo quy trình các lệnh từ nhiều máy khách vào các công cụ Valkey và Redis OSS, tận dụng khả năng xử lý hiệu quả các lệnh theo lô của Valkey và Redis OSS.
Độ bền trên nhiều vùng sẵn sàng
Độ bền trên nhiều vùng sẵn sàng
Ngoài việc lưu trữ toàn tập dữ liệu của bạn trong bộ nhớ, MemoryDB sử dụng bản ghi giao dịch phân tán để cung cấp độ bền, tính nhất quán và khả năng phục hồi dữ liệu. MemoryDB lưu trữ dữ liệu trên nhiều vùng sẵn sàng để bạn có thể khôi phục và khởi động lại cơ sở dữ liệu một cách nhanh chóng. Bạn có thể sử dụng MemoryDB như một dịch vụ cơ sở dữ liệu chính duy nhất cho khối lượng công việc yêu cầu độ trễ thấp và thông lượng cao thay vì quản lý riêng một bộ nhớ đệm để đáp ứng yêu cầu về tốc độ cũng như một cơ sở dữ liệu quan hệ hoặc phi quan hệ bổ sung để đảm bảo độ tin cậy.
Khả năng điều chỉnh quy mô
Khả năng mở rộng
Bạn có thể điều chỉnh quy mô cụm MemoryDB của mình để đáp ứng nhu cầu luôn thay đổi của ứng dụng: theo chiều ngang bằng cách thêm hoặc loại bỏ các nút hoặc theo chiều dọc bằng cách di chuyển đến các loại nút lớn hơn hoặc nhỏ hơn. MemoryDB hỗ trợ điều chỉnh quy mô ghi với tính năng phân mảnh và điều chỉnh quy mô đọc bằng cách thêm các bản sao. Cụm của bạn sẽ tiếp tục trực tuyến và hỗ trợ các thao tác đọc và ghi trong quá trình thay đổi kích thước vận hành.
Chủ động-chủ động với MemoryDB đa khu vực
MemoryDB đa khu vực là cơ sở dữ liệu đa Khu vực ở chế độ chủ động – chủ động, được quản lý toàn phần, giúp khách hàng xây dựng các ứng dụng với độ sẵn sàng lên đến 99,999%, độ trễ đọc tính bằng micro giây và độ trễ ghi dưới 10 mili giây. Tính năng này cải thiện khả năng phục hồi đa khu vực của ứng dụng và nên được xem là một phần trong chiến lược duy trì tính liên tục trong kinh doanh của tổ chức.
MemoryDB đa khu vực cung cấp tính năng sao chép chủ động – chủ động để bạn có thể phân phối các lệnh đọc và ghi cục bộ từ Khu vực gần khách hàng nhất với độ trễ đọc tính bằng micro giây và độ trễ ghi chưa đến 10 mili giây. Dịch vụ này sao chép không đồng bộ dữ liệu giữa các Khu vực và thường hoàn thành việc truyền dữ liệu trong vòng một giây. MemoryDB đa khu vực tự động giải quyết các xung đột dữ liệu cập nhật và khắc phục các vấn đề về sai lệch dữ liệu, để bạn có thể tập trung vào ứng dụng của mình.
MemoryDB đa khu vực hoạt động với các tính năng MemoryDB hiện có, ngoại trừ tính năng phân bậc dữ liệu và tìm kiếm theo véc-tơ. Tìm hiểu thêm trong tài liệu về MemoryDB đa khu vực.
Được quản lý toàn phần
Dễ sử dụng
Bắt đầu sử dụng MemoryDB thật dễ dàng. Chỉ cần khởi chạy cụm MemoryDB mới bằng Bảng điều khiển quản lý AWS hoặc bạn có thể sử dụng AWS CLI, hoặc SDK. Phiên bản cơ sở dữ liệu MemoryDB được cấu hình sẵn với các thông số và cài đặt phù hợp với loại nút đã chọn. Bạn có thể khởi chạy một cụm và kết nối ứng dụng của mình chỉ trong vài phút mà không cần phải cấu hình thêm.
Giám sát và số liệu
MemoryDB cung cấp chỉ số Amazon CloudWatch cho các phiên bản cơ sở dữ liệu của bạn. Bạn có thể sử dụng bảng điều khiển để xem hơn 35 chỉ số vận hành chính cho cụm của mình bao gồm điện toán, bộ nhớ, lưu trữ, thông lượng, kết nối đang hoạt động, v.v.
Tự động vá lỗi phần mềm
MemoryDB sẽ tự động cập nhật các cụm của bạn lên phiên bản mới, đồng thời bạn có thể dễ dàng nâng cấp các cụm của mình lên phiên bản Valkey và Redis OSS mới nhất.
Bảo mật
Kết nối mạng
MemoryDB chạy trên Amazon Virtual Private Cloud (Amazon VPC), cho phép bạn cách ly cơ sở dữ liệu trên mạng ảo riêng và kết nối với cơ sở hạ tầng CNTT tại chỗ của bạn bằng cách sử dụng các IPsec VPN được mã hóa theo tiêu chuẩn ngành. Ngoài ra, khi sử dụng cấu hình VPC trong MemoryDB, bạn có thể cấu hình cài đặt tường lửa và kiểm soát quyền truy cập mạng đến các phiên bản cơ sở dữ liệu của mình.
Mã hóa
Với MemoryDB, dữ liệu đang được lưu trữ sẽ được mã hóa bằng các khóa do bạn tạo và kiểm soát thông qua Dịch vụ quản lý khóa của AWS (AWS KMS). Và các cụm được tạo bằng các loại nút AWS Graviton2 sẽ bao gồm mã hóa DRAM 256 bit luôn hoạt động. MemoryDB hỗ trợ mã hóa trong quá trình truyền bằng cách sử dụng Bảo mật lớp truyền tải (TLS).
Quyền theo cấp độ API
Nhờ sử dụng các tính năng Quản lý danh tính và truy cập (IAM) trong AWS được tích hợp với MemoryDB, bạn có thể kiểm soát các hành động mà người dùng và nhóm IAM có thể thực hiện đối với tài nguyên MemoryDB. Ví dụ: bạn có thể cấu hình quy tắc IAM của mình để giúp đảm bảo rằng một số người dùng nhất định chỉ có quyền truy cập chỉ đọc, trong khi Quản trị viên có thể tạo, sửa đổi và xóa tài nguyên. Để biết thêm thông tin về quyền theo cấp độ API, hãy tham khảo Sử dụng chính sách IAM cho MemoryDB.
Xác thực và ủy quyền
MemoryDB sử dụng Danh sách kiểm soát truy cập (ACL) Redis OSS để kiểm soát cả xác thực và ủy quyền cho cụm của bạn. ACL cho phép bạn xác định các quyền khác nhau cho những người dùng khác nhau trong cùng một cụm.
Tích hợp với Kubernetes
Tích hợp với Kubernetes
Bộ điều khiển AWS dành cho Kubernetes (ACK) cho MemoryDB cho phép bạn xác định và sử dụng tài nguyên MemoryDB trực tiếp từ cụm Kubernetes của bạn. Điều này cho phép bạn tận dụng MemoryDB để hỗ trợ các ứng dụng Kubernetes mà không cần xác định tài nguyên MemoryDB bên ngoài cụm hoặc chạy và quản lý tính năng cơ sở dữ liệu nằm trong bộ nhớ trong cụm. Bạn có thể tải xuống hình ảnh bộ chứa MemoryDB ACK từ Sổ đăng ký bộ chứa linh hoạt của Amazon (Amazon ECR) và tham khảo tài liệu để xem hướng dẫn cài đặt. Bạn cũng có thể truy cập blog để biết thêm thông tin chi tiết.
Lưu ý: ACK cho MemoryDB hiện đã được cung cấp rộng rãi. Gửi phản hồi của bạn trên trang GitHub của chúng tôi.
Hỗ trợ JSON
Hỗ trợ JSON
MemoryDB cung cấp hỗ trợ theo mặc định cho các tài liệu JavaScript Object Notation (JSON) ngoài các cấu trúc dữ liệu có trong Redis OSS, mà không mất thêm chi phí. Bạn có thể đơn giản hóa việc phát triển ứng dụng bằng cách sử dụng các lệnh tích hợp sẵn được thiết kế và tối ưu hóa cho các tài liệu JSON. MemoryDB hỗ trợ cập nhật tài liệu JSON một phần, cũng như khả năng tìm kiếm và lọc mạnh mẽ bằng ngôn ngữ truy vấn JSONPath. Hỗ trợ JSON được cung cấp khi sử dụng Valkey và Redis OSS 6.2 trở lên. Để biết thêm thông tin, hãy xem tài liệu về MemoryDB.
Tìm kiếm véc-tơ
Tìm kiếm véc-tơ
Tính đến ngày 26 tháng 6 năm 2024, Amazon MemoryDB mang lại hiệu năng tìm kiếm theo véc-tơ nhanh nhất với tỷ lệ tìm ra kết quả liên quan cao nhất trong số các cơ sở dữ liệu véc-tơ phổ biến trên AWS. Với tính năng tìm kiếm theo véc-tơ cho MemoryDB, bạn có thể lưu trữ hàng triệu bản nhúng véc-tơ, đạt được khả năng tìm kiếm theo véc-tơ dưới 10 mili giây và cập nhật độ trễ với tỷ lệ tìm ra kết quả liên quan đạt 99% với mức thông lượng cao nhất.
Véc-tơ là phần biểu diễn bằng số của dữ liệu phi cấu trúc, chẳng hạn như văn bản, hình ảnh và video, được tạo ra từ các mô hình máy học (ML) giúp nắm bắt ngữ nghĩa của dữ liệu cơ bản. MemoryDB cho phép ML và các mô hình AI tạo sinh hoạt động với dữ liệu được lưu trữ trong MemoryDB theo thời gian thực mà không cần phải di chuyển dữ liệu của bạn. Với MemoryDB, bạn có thể lưu trữ, lập chỉ mục, truy xuất và tìm kiếm các phần nhúng véc-tơ trong cấu trúc dữ liệu Valkey và Redis OSS. Bạn cũng có thể lưu trữ các nội dung nhúng véc-tơ từ các mô hình AI/ML, chẳng hạn như từ Amazon Bedrock và Amazon SageMaker, trong cơ sở dữ liệu MemoryDB của bạn. Đọc tài liệu của chúng tôi để tìm hiểu thêm về tìm kiếm theo véc-tơ cho MemoryDB.
Tìm kiếm theo véc-tơ cho MemoryDB rất phù hợp để sử dụng trong các trường hợp mà hiệu năng đỉnh là tiêu chí lựa chọn quan trọng nhất. Bạn có thể sử dụng tìm kiếm theo véc-tơ để hỗ trợ cho ML theo thời gian thực và ứng dụng AI tạo sinh trong các trường hợp sử dụng như tạo có kết hợp truy xuất thông tin ngoài (RAG) cho chatbot, phát hiện bất thường (gian lận), công cụ đề xuất theo thời gian thực và truy xuất tài liệu.
Tối ưu hóa chi phí
Tối ưu hóa chi phí
MemoryDB cung cấp tính năng phân bậc dữ liệu như một cách ít tốn kém hơn để điều chỉnh quy mô các cụm lên đến hàng trăm terabyte dung lượng. Phân bậc dữ liệu cung cấp tùy chọn tỷ lệ giá/hiệu năng mới cho MemoryDB bằng cách sử dụng ổ cứng thể rắn (SSD) có chi phí thấp hơn trong mỗi nút cụm bên cạnh việc lưu trữ dữ liệu trong bộ nhớ. Tính năng này là lựa chọn lý tưởng cho khối lượng công việc thường xuyên truy cập tới 20% tập dữ liệu tổng thể và cho các ứng dụng có thể chịu được thêm độ trễ khi truy cập dữ liệu trên SSD.
Khi sử dụng các cụm với phân bậc dữ liệu, MemoryDB được thiết kế để di chuyển các mục ít được sử dụng gần đây nhất từ bộ nhớ sang các SSD NVMe được gắn cục bộ một cách tự động và minh bạch khi dung lượng bộ nhớ khả dụng đã bị sử dụng. Khi bạn truy cập một mục được lưu trữ trên SSD, MemoryDB sẽ di chuyển mục đó trở lại bộ nhớ trước khi thực hiện yêu cầu. Phân bậc dữ liệu MemoryDB được cung cấp trên các nút R6gd dựa trên Graviton2. Các nút R6gd có tổng dung lượng lớn hơn gấp gần 5 lần (bộ nhớ + SSD) và có thể giúp bạn đạt được mức tiết kiệm hơn 60% chi phí lưu trữ khi chạy ở mức sử dụng tối đa so với các nút R6g (chỉ có bộ nhớ). Giả sử trường hợp giá trị Chuỗi 500 byte, bạn thường có thể dự kiến rằng sẽ độ trễ sẽ tăng thêm 450µs đối với các yêu cầu đọc dữ liệu được lưu trữ trên SSD so với các yêu cầu đọc dữ liệu trong bộ nhớ.
MemoryDB cung cấp các nút đặt trước, cho phép bạn tiết kiệm tới 55% so với giá nút theo nhu cầu để đổi lấy cam kết sử dụng trong thời hạn một hoặc ba năm. Các nút đặt trước bổ trợ cho các nút theo nhu cầu của MemoryDB và cung cấp cho doanh nghiệp tính linh hoạt để giúp giảm chi phí. MemoryDB cung cấp ba lựa chọn thanh toán dành cho nút đặt trước – Không trả trước, Trả trước một phần và Trả trước toàn bộ – cho phép bạn cân bằng số tiền trả trước với mức giá theo giờ sao cho hiệu quả đối với bạn.
Các nút đặt trước MemoryDB đem lại tính linh hoạt về kích thước trong một hệ thống nút và Khu vực AWS. Điều này có nghĩa là mức giá chiết khấu cho nút đặt trước sẽ tự động áp dụng cho tất cả các kích thước trong cùng một hệ thống nút. Khả năng linh hoạt về kích thước giúp giảm thời gian cần thiết để quản lý các nút đặt trước và vì bạn không còn bị ràng buộc với kích thước nút cơ sở dữ liệu cụ thể, bạn có thể tận dụng tối đa mức giá chiết khấu của mình ngay cả khi cơ sở dữ liệu của bạn cần cập nhật.