Computer >> Máy Tính >  >> Lập trình >> Lập trình

Kiến trúc của Xử lý song song là gì?

Có ba kiến ​​trúc phần cứng xử lý song song cơ bản trên thị trường máy chủ như đa xử lý đối xứng (SMP), xử lý song song hàng loạt (MPP) và kiến ​​trúc bộ nhớ không đồng nhất (NUMA).

Đa xử lý đối xứng (SMP)

Kiến trúc SMP là một thiết bị riêng lẻ có nhiều bộ xử lý, tất cả đều được quản lý bởi một hệ điều hành và tất cả đều truy cập vào đĩa và vùng bộ nhớ tương tự. Máy SMP có 8 đến 32 bộ xử lý, cơ sở dữ liệu song song, bộ nhớ lớn (hai gigabyte trở lên), ổ đĩa tốt và thiết kế tốt sẽ hoạt động tốt với một kho hàng có quy mô vừa phải.

Cơ sở dữ liệu cần có khả năng chạy các quy trình của nó song song và các quy trình của kho dữ liệu cần được thiết kế để tận dụng các khả năng song song. Các bộ xử lý có thể truy cập các tài nguyên được chia sẻ (bộ nhớ và đĩa) một cách nhanh chóng, nhưng đường dẫn truy cập mà chúng cần đến tại các tài nguyên đó, bảng nối đa năng, có thể phát triển thành một nút cổ chai khi hệ thống mở rộng quy mô.

Vì máy SMP là một thực thể đơn lẻ nên nó cũng có điểm yếu là một điểm hỏng hóc duy nhất trong nhà kho. Để khắc phục những vấn đề này, các công ty phần cứng đã đưa ra các kỹ thuật cho phép một số máy SMP được liên kết với nhau hoặc theo nhóm.

Trong một cụm, mỗi nút là một máy SMP chạy hệ điều hành của nó, nhưng cụm bao gồm các kết nối và phần mềm điều khiển để cho phép các máy chia sẻ đĩa và cung cấp sao lưu dự phòng. Trong trường hợp này, nếu một máy bị lỗi, các máy khác trong cụm có thể tạm thời tiếp quản tải xử lý của nó. Tất nhiên, lợi ích này đi kèm với cái giá phải trả - việc phân nhóm là cực kỳ phức tạp và có thể khó quản lý. Công nghệ cơ sở dữ liệu cần thiết để mở rộng các cụm đang được cải thiện.

Xử lý song song hàng loạt (MPP)

Hệ thống MPP là một chuỗi các máy tính tương đối độc lập, mỗi máy tính có hệ điều hành, bộ nhớ và đĩa, tất cả đều được điều phối bằng cách chuyển các thông điệp qua lại. Điểm mạnh của MPP là khả năng kết nối hàng trăm nút máy và áp dụng chúng vào một vấn đề bằng cách sử dụng phương pháp bạo lực.

Ví dụ:nếu bạn cần thực hiện quét toàn bộ bảng của một bảng lớn, việc trải rộng bảng đó trên hệ thống MPP 100 nút và cho phép mỗi nút quét 1/100 của bảng sẽ tương đối nhanh. Nó tương đương với máy tính “nhiều bàn tay làm nên công việc nhẹ nhàng.

Kiến trúc bộ nhớ không thống nhất (NUMA)

NUMA là một tập hợp SMP và MPP nhằm cố gắng hợp nhất khả năng thích ứng đĩa chia sẻ của SMP với tốc độ song song của MPP. Kiến trúc này là một sự đổi mới tương đối hiện tại và nó có thể khả thi để lưu trữ dữ liệu trong thời gian dài.

NUMA về mặt khái niệm tương tự như ý tưởng phân cụm các máy SMP, nhưng với kết nối chặt chẽ hơn, băng thông rộng hơn và khả năng phối hợp tốt hơn giữa các nút. Nếu bạn có thể phân đoạn kho của mình thành các nhóm sử dụng tương đối độc lập và đặt mỗi nhóm trên nút của nó, thì kiến ​​trúc NUMA có thể hiệu quả cho bạn.