Được xuất bản lần đầu vào ngày 30 tháng 4 năm 2018, tại ObjectRocket.com/blog
Tính bền bỉ đa ô đề cập đến việc sử dụng các công nghệ lưu trữ dữ liệu khác nhau để xử lý các nhu cầu lưu trữ dữ liệu khác nhau. Đó là một lập trình đa ngôn ngữ khác nhau — sử dụng các ngôn ngữ lập trình khác nhau để xây dựng một ứng dụng. Nói một cách đơn giản, đó là một ứng dụng sử dụng nhiều hơn một công nghệ cơ sở dữ liệu cốt lõi.
Điều quan trọng là sử dụng công cụ phù hợp cho công việc và quan trọng không kém là sử dụng cơ sở dữ liệu phù hợp cho công việc. Mỗi cơ sở dữ liệu đều có điểm mạnh, điểm yếu và đặc điểm. Tuy nhiên, thực sự có hàng trăm cơ sở dữ liệu ngoài đó, vì vậy rất khó để theo kịp.
Quản lý nhu cầu lưu trữ dữ liệu của bạn
Monoglot® đã (và vẫn là) tốt cho các ứng dụng đơn giản sử dụng một loại khối lượng công việc. Tuy nhiên, các ứng dụng nhanh chóng trở nên phức tạp hơn.
Một nền tảng thương mại điện tử đơn giản sử dụng các công cụ sau:
- Dữ liệu phiên để thêm các mặt hàng vào giỏ hàng
- Công cụ tìm kiếm để tìm kiếm sản phẩm
- Công cụ đề xuất, các giao dịch mua tiềm năng trong tương lai dựa trên hồ sơ mua hàng
- Nền tảng thanh toán cho các dịch vụ định vị địa lý
Việc triển khai tính bền bỉ đa ô cho phép bạn cung cấp năng lượng cho các ứng dụng bằng dữ liệu từ các loại lưu trữ khác nhau. Bạn có thể hoàn thành các giao dịch tài chính từ Oracle® trong khi theo dõi thông tin người dùng trongMongoDB® và cho phép Redis® xử lý bộ nhớ đệm.
Triển khai tính nhất quán của polyglot và cân nhắc các lựa chọn
Nhiều lời phàn nàn đề cập đến sự phức tạp của việc xây dựng tính bền bỉ đa ô bắt nguồn từ việc cố gắng ép buộc các giải pháp lưu trữ bên trong các dự án mà chúng không đủ. Điều đó dẫn đến việc tạo ra nhiều quy trình hỗ trợ và kiến trúc quái vật ngày càng phát triển.
Lập kế hoạch cẩn thận giúp loại bỏ 90% các vấn đề tiềm ẩn. Cân nhắc mục tiêu của bạn. Bạn có cần một chức năng kinh doanh tích hợp không? Bạn có cần bắt đầu chuyển một phần lớn hoạt động của công ty sang mô hình này không?
Sử dụng công nghệ lưu trữ dữ liệu phù hợp
Trước đây nhóm của bạn đã tạo ra một kiến trúc liên tục đa giác chưa? Việc tận dụng đúng cách các giải pháp dữ liệu phù hợp mà không có kinh nghiệm thiết kế loại mô hình này là một thách thức. Làm cách nào để biết liệu bạn có đang bắt đầu với đúng dự án hay không?
Các loại lưu trữ dữ liệu
Các tổ chức thường sử dụng một số nguồn dữ liệu khác nhau để cung cấp cho các ứng dụng của họ. Hãy xem xét một số tùy chọn đăng ký chung:
Cơ sở dữ liệu giao dịch , còn được gọi là Hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS), cung cấp tính toàn vẹn của dữ liệu bằng cách tổ chức thông tin thành các bảng với các hàng và cột. Bạn truy xuất dữ liệu bằng cách sử dụng các câu lệnh cú pháp được gọi là truy vấn. Nhiều tổ chức lớn sử dụng nhiều các tùy chọn phổ biến như Microsoft® SQL Server® và Oracle®. Một nhược điểm đối với cơ sở dữ liệu giao dịch là chúng có thể khó mở rộng quy mô khi nhu cầu lưu trữ tăng lên. Ngoài ra, tìm kiếm chậm khi dữ liệu ngày càng dày đặc và phức tạp hơn để truy cập.
Cơ sở dữ liệu phi giao dịch chuyển từ việc sử dụng các hệ thống RDBMS dạng bảng, cho phép tăng khả năng mở rộng và tìm kiếm nhanh hơn. Chúng cũng kết hợp tốt với các công cụ phân tích và tìm kiếm như Elasticsearch. Mọi người thường sử dụng thuật ngữ NoSQL để mô tả các cơ sở dữ liệu này.
Các loại bộ nhớ phi giao dịch :
Các loại lưu trữ phi giao dịch bao gồm các tùy chọn sau:
- Khóa-giá trị :Các cơ sở dữ liệu này sử dụng một khóa trỏ đến vị trí lưu trữ của một phần dữ liệu. Một số sử dụng bảng băm, trong khi các bộ nhớ đệm như Redis giữ các cặp ghép trong bộ nhớ để truy cập nhanh.
- Tài liệu :Chúng bao gồm các cặp khóa-giá trị được nén vào một tài liệu cho phép cấu trúc bằng cách sử dụng mã hóa nhưJSON hoặc XML. Các phiên bản nguồn mở phổ biến bao gồm MongoDB và CouchDB®.
- Cột :Bạn đặt dữ liệu thành các cột được nhóm lại thay vì các hàng như trong cấu trúc RDBMS. Apache® Cassandra và HBase® sử dụng mô hình này.
- Biểu đồ :Chúng sử dụng cấu trúc đồ thị, nút, cạnh và thuộc tính để tổ chức và truy xuất dữ liệu. Neo4j® là một ví dụ đang ngày càng phổ biến.
Có được tính duy trì đa giác đúng nghĩa là biết tùy chọn dữ liệu nào hoạt động tốt nhất cho nhu cầu ứng dụng của bạn.
Câu hỏi để hỏi
Câu hỏi về cấu trúc dữ liệu
- Dữ liệu của bạn có cấu trúc tự nhiên không? Nó có phải là không có cấu trúc không?
- Nó được kết nối với dữ liệu khác như thế nào?
- Nó được phân phối như thế nào?
- Bạn đang xử lý bao nhiêu dữ liệu?
Câu hỏi về mẫu truy cập
- Tỷ lệ đọc / ghi của bạn là bao nhiêu?
- Nó đồng nhất hay ngẫu nhiên?
- Việc đọc hoặc viết có quan trọng hơn đối với ứng dụng của bạn không?
Tổ chức cần câu hỏi
- Chúng tôi có cần xác thực không? Loại nào?
- Chúng tôi có cần mã hóa không?
- Chúng tôi có cần sao lưu không?
- Chúng tôi có cần một địa điểm thảm họa không?
- Chúng tôi có cần plugin không?
- Mức độ giám sát là cần thiết?
- Trình điều khiển nào là cần thiết?
- Chúng tôi nên sử dụng những ngôn ngữ nào?
- Chúng ta có nên sử dụng các công cụ của bên thứ ba không?
Mang lại sự trợ giúp phù hợp
Nhiều công ty sẽ được hưởng lợi từ việc đưa các chuyên gia về kiến trúc đa ô vào để giúp đưa ra các quyết định này. Bằng cách đó, bạn sẽ tránh được việc phải chịu thêm tải bảo trì do kiến trúc quá phức tạp. Một số trình điều khiển cơ sở dữ liệu nguồn mở phổ biến cung cấp dịch vụ quản lý. Nhưng liệu họ có cho bạn biết nếu nguồn dữ liệu của riêng họ không phù hợp với nhu cầu của bạn không?
Tốt nhất bạn nên liên hệ với một công ty hiểu rõ điểm mạnh và điểm yếu của các tùy chọn dữ liệu khác nhau để giúp bạn bắt đầu với tính bền bỉ của đa âm vật. Rackspace ObjectRocket cung cấp cho bạn cái nhìn 360 độ về sự đa dạng của các tùy chọn cơ sở dữ liệu áp dụng cho nhu cầu kinh doanh của bạn. Chúng tôi mang đến những DBA và kỹ sư phù hợp nhất để đưa các giải pháp dữ liệu lớn của bạn lên một tầm cao mới.
Tìm hiểu thêm về Dịch vụ Rackspace DBA.
Sử dụng tab Phản hồi để đưa ra bất kỳ nhận xét hoặc đặt câu hỏi nào. Bạn cũng có thể nhấp vào Trò chuyện bán hàng để trò chuyện ngay bây giờ và bắt đầu cuộc trò chuyện.
Xem Điều khoản dịch vụ của Rackspace Cloud.