Nhiều RAM hơn so với nhiều máy chủ hơn


9

Gần đây tôi đã được hỏi "Bạn có biết khi nào nên quyết định giữa việc sử dụng nhiều RAM hơn hay nhiều máy chủ hơn không?" (trong bối cảnh mở rộng các ứng dụng khai thác dữ liệu).

Tôi không có ý tưởng, vậy một số cách để quyết định là gì? Tôi có rất ít kiến ​​thức về kiến ​​trúc và nhân rộng (sự hiểu biết của tôi về bộ nhớ máy tính và những gì máy chủ làm được giới hạn ở những điều cơ bản cấp cao), vì vậy những lời khuyên về tìm hiểu thêm về những điều này nói chung cũng rất đáng hoan nghênh.


3
Tôi có thể có cả hai, xin vui lòng?
Dirk Eddelbuettel

1
Nhiều RAM hơn trong mọi trường hợp tôi có thể nghĩ đến ... (ngoại trừ máy chủ được tối đa trên RAM)
jcolebrand

3
Như với hầu hết các sysadmin. Câu trả lời tốt nhất nếu có thể là thu thập dữ liệu trên một nhà phát triển hoặc hệ thống sản xuất và sau đó đưa ra quyết định dựa trên dữ liệu bạn đã thu thập.
Zoredache

Câu hỏi bạn đang hỏi là mở rộng quy mô hay không.
micmcg

hầu hết các phần mềm khai thác dữ liệu được thiết kế cho một máy tính. do đó RAM nhiều hơn. Nếu bạn đang sử dụng Mahout hoặc song song-R hoặc những gì có bạn, thì nhiều máy chủ hơn. Tôi sẽ thuê các máy chủ Amazon AWS để thử nghiệm để tìm ra tổ hợp # máy chủ / ram tốt nhất.
Neil McGuigan

Câu trả lời:


8

"Bạn có biết khi nào nên quyết định giữa việc sử dụng nhiều RAM hơn hay nhiều máy chủ hơn không?" (trong bối cảnh mở rộng các ứng dụng khai thác dữ liệu).

Câu trả lời là ngay sau khi bạn đưa cho tôi số liệu cho máy chủ được đề cập, tôi sẽ cho bạn biết cái nào (hoặc nếu nó đáng giá cả để thêm vào). Kiểu điều chỉnh này không phải là voodoo (unles bạn đang sử dụng các ứng dụng không có thiết bị và hệ điều hành máy chủ mà không có thiết bị - thì vâng, đó là voodoo) đó là khoa học. Đo lường ứng dụng và máy chủ. Tóm lại, sử dụng các số liệu giám sát chỉ ra nút thắt hiệu suất ở đâu và thêm nhiều hơn nữa.


Không, nó vẫn là voodoo, nhưng bạn là một bác sĩ phù thủy! Thêm vào vấn đề .. làm thế nào một người mới sử dụng câu trả lời này để giải quyết vấn đề của mình? Các số liệu cơ bản anh ta nên xem xét là gì, và làm thế nào để anh ta biết những con số nào có ý nghĩa? Nhận điểm của tôi ...
tomjedrz

Loại này làm tôi nhớ đến trò đùa bóng bay cũ. offratediversions.com/discover/modules/wfsection/ từ
tomjedrz

Câu trả lời của các số liệu cơ bản phụ thuộc vào hệ thống. Câu hỏi này quá chung chung, không thể đưa ra câu trả lời cụ thể hơn ngoài những điều cơ bản (CPU, bộ nhớ, đĩa, v.v. và màn hình ứng dụng). Với người mới học giả thuyết, họ đơn giản là không thể có câu trả lời cho vấn đề này bởi vì trước tiên bạn cần biết cách giám sát (các) máy chủ trong câu hỏi - và đó sẽ là một câu hỏi hoàn toàn riêng biệt
Jim B

5

Nhìn chung có khá nhiều voodoo (hoặc ít nhất là thử và sai) trong cải tiến hiệu suất của máy chủ / ứng dụng.

Nguyên tắc chung cho câu hỏi cụ thể được hỏi là trước tiên phải tăng bộ nhớ cho đến khi không thể tăng thêm HOẶC cho đến khi nhiều bộ nhớ không còn cải thiện hiệu suất. Với bộ nhớ tương đối rẻ, có thể đơn giản hơn để tối đa hóa bộ nhớ. Ngoài ra, nếu ứng dụng nặng đĩa, việc nâng cấp lên ổ đĩa tốc độ cao hoặc bộ điều khiển hiệu suất cao có thể tạo ra sự khác biệt.

Tuy nhiên, bản chất chung của câu hỏi khiến tôi nghĩ rằng không có nỗ lực nào khác để cải thiện hiệu suất. Tôi đồng ý rằng phần cứng là rẻ, vì vậy ngay cả việc ném thêm máy chủ vào một vấn đề cũng đủ dễ dàng để thực hiện. Nhưng, tôi cũng sẽ đảm bảo rằng các con đường khác, đặc biệt là điều chỉnh HĐH và cơ sở dữ liệu, đã được thực hiện. Đôi khi các tinh chỉnh nhỏ cho cơ sở dữ liệu, HĐH hoặc thậm chí cấu hình ứng dụng có thể dẫn đến những cải tiến hiệu suất rất lớn.

Tìm kiếm trên trang web này với hệ điều hành, cơ sở dữ liệu và ứng dụng cụ thể của bạn và bạn cũng có thể đạt được vàng.


5

Là một kiến ​​trúc sư doanh nghiệp, tôi đã giải quyết vấn đề này hàng ngày. Chia tỷ lệ dọc hay ngang?

Nhu cầu của bạn là gì?

Bạn có cần hỗ trợ thêm người dùng? Bạn có cần cải thiện tốc độ của dịch vụ? Bạn có cần cả hai? Bạn có cần 99.9999 khả dụng cao hay người dùng của bạn có thể ngừng hoạt động không?

Để bắt đầu, bạn cần nắm bắt các số liệu hiệu suất trên hệ thống hiện tại. Số lượng người dùng hoạt động, tải RAM và CPU, I / O đĩa - tìm hiểu các điểm nghẽn của bạn.

Các giải pháp có thể dựa trên các vấn đề: Bắt đầu với tối ưu hóa các tài nguyên hiện tại. Nếu ứng dụng của bạn được điều khiển cơ sở dữ liệu, hãy tối ưu hóa cơ sở dữ liệu bằng bộ đệm truy vấn và luồng, chỉ mục, v.v ... Nếu bạn chia sẻ một máy chủ với các ứng dụng khác, hãy khám phá việc chuyển sang một máy chủ chuyên dụng. (Xem xét ảo hóa cho các ứng dụng ít hoạt động / quan trọng hơn để giải phóng các tài nguyên chuyên dụng).

Các máy hiện tại đang hoạt động hết công suất, RAM và CPU được tải rất nhiều, I / O đĩa cao - tính chi phí để thêm RAM, bạn có thể chuyển sang I / O đĩa nhanh hơn (RAID, SATA thay cho ATA) không?

Nếu bạn cần tính sẵn sàng cao thì có lẽ bạn cần phải thêm phần cứng và cân bằng tải.

Là rẻ hơn để thêm nâng cấp phần cứng hoặc thêm máy chủ mới? Mà phù hợp với các mục tiêu dài hạn và tăng trưởng?

Khi nào thì bộ phận CNTT của bạn dành thời gian tốt nhất để tiêu tiền? Bạn có tiền ngay bây giờ hay bạn muốn chuyển chi phí sang quý / năm khác? Nếu tiền là một vấn đề thì hãy tối ưu hóa ngay bây giờ hoặc khám phá giải phóng phần cứng khỏi các ứng dụng khác để thêm giải pháp cân bằng tải tạm thời.

Đừng ngại khám phá nhiều giải pháp. Các nhà cung cấp có thể muốn bạn mua một giải pháp trung tâm lưu trữ SAN cân bằng tải, trong đó một máy chủ mới có iSCSI RAID 10 trên tàu sẽ hoạt động với 10% chi phí.

Nếu CPU của bạn vẫn được tải rất nhiều sau khi tối ưu hóa thì bạn cần thêm / thay thế phần cứng. Nếu I / O đĩa của bạn là nút cổ chai và bạn không thể nâng cấp công nghệ lưu trữ thì bạn cần thay thế phần cứng hoặc thêm giải pháp lưu trữ / lưu trữ mạng kèm theo.

Nắm bắt số liệu hiệu suất. Tối ưu hóa, cải thiện và nắm bắt các số liệu một lần nữa. Tiếp tục ghi lại hiệu suất tăng / giảm để bạn có thể bật báo cáo ghi lại số tiền bạn đã chi tiêu và mức tăng hiệu suất đạt được. Đây là loại câu chuyện thành công có thể khiến quản trị viên trở thành kiến ​​trúc sư, kiến ​​trúc sư thành người quản lý dự án và thủ tướng thành quản lý cấp trên khi thực hiện đúng.


2

Bạn đang phân trang? Bạn sẽ sử dụng RAM để lưu trữ đĩa? Bạn có CPU bị ràng buộc với RAM miễn phí?

Nếu bạn đang phân trang và / hoặc có thể sử dụng RAM để lưu vào bộ đệm, thì hãy lấy thêm RAM. Nếu bạn không gặp phải áp lực RAM, thì đó là một thứ khác.


2

RAM là giá rẻ. Trước tiên, bạn phải luôn luôn hướng đến điểm mà bạn có số lượng tiết kiệm nhất trong đó (ví dụ: DIMM 4gb rất đắt đỏ vì vậy tôi sẽ không bận tâm đến chúng).

Sau đó khám phá mở rộng sang một bên (nhiều máy chủ). Xem xét phần cứng tiêu dùng giá rẻ so với các bộ phận máy chủ đắt tiền nhưng dự kiến ​​sẽ thất bại và xây dựng ước tính chuyển đổi dự phòng thành tổng công suất xử lý của bạn.

Về cơ bản, làm một Google .


1

Bạn đang sử dụng hệ điều hành nào, nó hỗ trợ bao nhiêu RAM và bạn có bao nhiêu RAM cũng là những câu hỏi cần đặt ra. Nếu bạn đang ở giới hạn của một hệ điều hành 32 bit, việc mua thêm RAM sẽ không tốt cho bạn. Nếu bạn đang sử dụng Windows, một số SKU nhất định bị giới hạn ở một số lượng RAM nhất định không liên quan chính xác đến giới hạn 32 bit.


1

Một số người dường như nghĩ rằng thêm RAM là một sửa chữa kỳ diệu. Nó chỉ giúp nếu RAM là nút cổ chai.


Nó không phải là "ma thuật", nhưng nó tương đối rẻ và là nỗ lực đầu tiên trong hầu hết thời gian.
tomjedrz

1
@ tomjedrz: Lần thử đầu tiên tốt trừ khi không được. Điều đó thực sự rất đơn giản - chúng ta đang thực hiện 'quản trị hệ thống như một khoa học' và thêm RAM vào máy sau khi chúng tôi thực hiện các thử nghiệm và giám sát tài nguyên cho thấy nó cần nó, hoặc chúng tôi đang thực hiện 'quản trị hệ thống như một giáo phái tôn giáo' và thêm RAM cho một máy bởi vì đó là những gì các cuộn tôn giáo nói với chúng ta là lời cầu nguyện chính xác cho một máy chủ hơi chậm? Cá nhân tôi thích cách tiếp cận khoa học.
Rob Moir

0

Nhiều RAM hơn = nhiều máy ảo hơn.

Vì vậy, tôi cho rằng nhiều RAM hơn = nhiều máy chủ hơn !!


1
Nhiều máy ảo hơn yêu cầu nhiều hơn, ram chỉ là một trong nhiều tài nguyên để chơi.
tony roth
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.