Làm cách nào để cải thiện hiệu suất cho ứng dụng đang chạy của bạn? Một bài viết “phải đọc” cho các chuyên gia CNTT, kiến trúc sư giải pháp và quản trị viên lưu trữ. Đã đến lúc làm cho các ứng dụng của bạn chạy nhanh hơn.
Ứng dụng là một trong những yếu tố quan trọng nhất trong nền kinh tế kỹ thuật số ngày nay và hiệu suất kém dẫn đến trải nghiệm người dùng không tốt, dẫn đến giảm năng suất và doanh thu cho doanh nghiệp của bạn. Hơn nữa, các ứng dụng chậm chạp và không phản hồi có thể bị đổ lỗi cho bộ xử lý kém hiệu quả, tắc nghẽn mạng hoặc không đủ dung lượng lưu trữ. Trong blog này, chúng tôi sẽ tập trung vào lưu trữ – phần ít được hiểu nhất và được cho là phần quan trọng nhất đối với vấn đề gặp phải về hiệu suất ứng dụng. Một số người đã tiếp cận đến vấn đề lưu trữ sẽ ngay lập tức nói cho bạn biết rằng, flash sẽ giải quyết tất cả! Nhưng đó chỉ là một phần nhỏ của giải pháp và chỉ giải quyết ở điểm cuối.
Nhìn vào các công nghệ mới đang “hot”: Công nghệ lưu trữ Flash, NVMe và 3D XPoint đều có vai trò trong việc định hình hiệu suất của hạ tầng lưu trữ và kết quả cuối cùng là mức độ phản hồi và thông lượng của các ứng dụng chạy trên chúng. Tuy nhiên, bất kỳ ai theo dõi ngành công nghiệp này đều nhận ra chúng là các thành phần tạm thời và sẽ sớm bị thay thế bởi các phương tiện nhanh hơn, rẻ hơn và các phương pháp kết nối tiên tiến hơn.
Bốn giải pháp được trình bày dưới đây không chỉ đào sâu về điểm cuối, nơi dữ liệu ở lại, mà còn xem xét lộ trình nó đến đó và quay lại, và giá trị của nó thay đổi như thế nào theo thời gian. Chúng tôi sẽ thảo luận về vị trí dữ liệu, đường dẫn dự phòng, lỗi domain và tốc độ truy cập, cũng như yếu tố cân bằng chi phí, yêu cầu kinh doanh liên tục của doanh nghiệp và những thách thức hiện đại hóa đang diễn ra để giúp bạn giữ cho các ứng dụng của mình chạy ở hiệu suất cao nhất.
Best practice #1: Sắp xếp bộ lưu trữ theo giá trị của dữ liệu
Trong thế giới của các ứng dụng, dữ liệu là vua. Xử lý dữ liệu càng nhanh thì các ứng dụng chạy càng nhanh. Với hoạt động I / O ngày càng tăng, ngay cả những thiết bị lưu trữ hiệu quả nhất của bạn cũng có xu hướng trở nên quá tải và bị tiêu thụ bởi nhu cầu cạnh tranh từ tải công việc ưu tiên thấp và dữ liệu cũ. Với hầu hết các doanh nghiệp, việc thêm nhiều thiết bị lưu trữ đắt tiền hơn mỗi khi điều này xảy ra không phải là một lựa chọn khả thi. Điều gì sẽ xảy ra nếu bạn có thể đảm bảo chỉ những dữ liệu có giá trị nhất – nói cách khác là dữ liệu được sử dụng tích cực nhất – được lưu trữ trên bộ nhớ cao cấp của bạn và dữ liệu không thường xuyên được sử dụng chỉ được lưu trữ trên bộ nhớ thứ cấp và thứ ba? Khi đó, nhu cầu I/O trên bộ nhớ chính của bạn sẽ giảm và mức tiêu thụ dung lượng cũng giảm, do đó sẽ giữ cho thiết bị chạy nhanh hơn.
Đây là lúc phân cấp dữ liệu (data tiering) hỗ trợ bạn. Phân cấp là quá trình di chuyển dữ liệu giữa các thiết bị lưu trữ dựa trên tần suất dữ liệu được truy cập.
- Nếu độ nóng truy cập dữ liệu cao (dữ liệu nóng), hãy giữ dữ liệu đó ở cấp nhanh nhất của bạn.
- Khi độ nóng truy cập dữ liệu nguội đi, hãy chuyển dữ liệu đó sang bộ nhớ thứ cấp để bạn có thể giải phóng dung lượng trên bộ nhớ chính của mình.
DataCore SANsymphony là một giải pháp lưu trữ do phần mềm xác định (SDS) sử dụng công nghệ máy học tích hợp để tự động phát hiện các mẫu truy cập dữ liệu và xác định thời gian và vị trí đặt dữ liệu. Không gây ra bất kỳ gián đoạn nào cho ứng dụng truy cập dữ liệu, SANsymphony tự động xếp (di chuyển) dữ liệu nóng vào bộ nhớ chính và dữ liệu ấm và lạnh sang bộ lưu trữ thứ cấp và chi phí thấp hơn. Điều này cho phép bạn tiết kiệm nhiều dung lượng hơn trên phần cứng cao cấp của mình, tránh tắc nghẽn I / O và quá tải dung lượng, đồng thời cải thiện khả năng phản hồi tổng thể. Ngoài ra, điều này cũng giúp bạn tiết kiệm tiền vì bạn không phải tiếp tục ném phần cứng vào vấn đề dung lượng và hiệu suất của mình. Cung cấp cho dữ liệu quý giá của bạn dung lượng lưu trữ nhanh nhất mà nó xứng đáng.
DataCore SANsymphony thực hiện tự động phân cấp dữ liệu trên các thiết bị lưu trữ đa dạng
Tìm hiểu thêm về phân loại tự động bằng DataCore SANsymphony »
Best Practice # 2: Đảm bảo một Đường dẫn Dữ liệu Thay thế để Truy cập Không bị gián đoạn
Việc nâng cấp công nghệ lưu trữ diễn ra khá thường xuyên do cần thiết. Cách phổ biến nhất là thay thế phần cứng lưu trữ chậm bằng thiết bị tốc độ cao, hiện đại. Việc làm mới bộ nhớ như vậy thường yêu cầu ngừng hoạt động theo kế hoạch và thời gian di chuyển dữ liệu kéo dài . Cả hai đều có những hậu quả lớn đối với việc truy cập dữ liệu, hoặc làm gián đoạn hoặc làm chậm nó đến mức không thể sử dụng được. Nó sẽ yêu cầu ngắt kết nối thiết bị cũ khỏi đường dẫn dữ liệu của ứng dụng và ngừng hoạt động, sau đó tích hợp bộ nhớ mới rồi trỏ nó đến máy chủ lưu trữ của ứng dụng. Ngoài ra, bạn cần phải giám sát thủ công dự án di chuyển dữ liệu kéo dài cần diễn ra giữa thiết bị cũ và thiết bị mới.
Để khắc phục sự gián đoạn này, DataCore SANsymphony cung cấp cho bạn các phương pháp hay nhất để tạo dự phòng đường dẫn và khả năng chịu lỗi cho cơ sở hạ tầng lưu trữ của bạn bằng cách:
- Tận dụng các kỹ thuật I / O đa đường dẫn như ALUA (Truy cập đơn vị logic bất đối xứng) từ hệ điều hành hoặc hypervisor
- Phản chiếu đồng bộ dữ liệu của bạn giữa các thiết bị lưu trữ phù hợp ngay cả từ các nhà sản xuất khác nhau
- Tự động sao chép dữ liệu ứng dụng trong thời gian thực vào thiết bị được nhân bản để dự phòng
- Tự động không chuyển sang bản sao được nhân đôi khi đã đến lúc thay đổi / làm mới thiết bị lưu trữ cũ
- Đảm bảo không có gián đoạn truy cập dữ liệu cho ứng dụng trong quá trình nâng cấp phần cứng
- Rõ ràng là di tản dữ liệu khỏi thiết bị cũ và chuyển nó sang thiết bị mới (hoặc cân bằng dữ liệu trên bộ lưu trữ khác trong nhóm) sau khi thiết bị mới và được nâng cấp ở vị trí
- Tự động chuyển lại đường dẫn dữ liệu và trỏ đến thiết bị lưu trữ mới từ thiết bị chuyển đổi dự phòng
Trong suốt quá trình của toàn bộ dự án này, không có thời gian ngừng hoạt động ứng dụng nào xảy ra. Việc áp dụng công nghệ mới và di chuyển dữ liệu diễn ra trong thời gian thực mà ứng dụng hoặc người dùng không nhận ra bất kỳ thay đổi nào đang xảy ra ở phía sau. Hiện đại hóa trung tâm dữ liệu của bạn trong khi đảm bảo không bị suy giảm hiệu suất hoặc thời gian ngừng hoạt động.
Truy cập qua đường dẫn dữ liệu thay thế với máy nhân bản đồng bộ khi nâng cấp mảng lưu trữ
Tìm hiểu thêm về sao chép đồng bộ bằng DataCore SANsymphony »
Best Practice # 3: Tận dụng tính Song song để xử lý I/O
Sự gia tăng phổ biến của phân tích dữ liệu lớn, IoT và nói chung, các giao dịch kinh doanh kỹ thuật số đang phát triển, đặt ra yêu cầu nặng nề đối với phần phụ trợ lưu trữ. Bất kể thiết bị lưu trữ tốc độ cao đang được sử dụng, việc xử lý I / O nối tiếp truyền thống sẽ có những hạn chế của nó. Ngay cả khi sử dụng bộ xử lý đa lõi, các hoạt động I / O thường diễn ra theo kiểu tuần tự – mỗi lõi một. Điều này dẫn đến việc nhân viên tính toán phải đợi nhân viên I / O xử lý dữ liệu của họ. Điều này cũng dẫn đến việc các CPU bị lãng phí vì chúng không được đưa vào sử dụng đồng thời. Sự tắc nghẽn nhân lên có hiệu lực trong một môi trường ảo hóa nơi nhiều ứng dụng / máy ảo chạy trên cùng một máy chủ và chờ xử lý chuỗi của chúng theo thứ tự.
DataCore SANsymphony sử dụng công nghệ xử lý I / O song song đã được cấp bằng sáng chế, trong đó số lượng lõi thay đổi trong bộ xử lý đa lõi được tận dụng đồng thời để xử lý các luồng I / O song song. Bằng cách này, nhân viên máy tính được phục vụ nhanh hơn nhiều với quá trình xử lý I / O nhanh hơn nhiều (gấp 5 lần so với xử lý nối tiếp như được thấy trong môi trường khách hàng của chúng tôi ). Điều này cũng làm giảm chi phí và sự phức tạp của việc trải rộng tải trên nhiều máy chủ / máy chủ ảo vì một máy chủ đa lõi đơn giờ đây có thể xử lý nhiều I / O worker đồng thời.
Điều này dẫn đến phản hồi ứng dụng nhanh hơn, tiết kiệm tiền do không phải thêm phần cứng bổ sung để tăng thông lượng và tỷ lệ hợp nhất khối lượng công việc cao hơn cho phép bạn chạy nhiều máy ảo hơn trên mỗi máy chủ và cải thiện hiệu quả hoạt động. Tăng tốc độ xử lý dữ liệu đáng kể với I / O song song.
Tìm hiểu thêm về xử lý I/O song song với DataCore SANsymphony »
Best Practice # 4: Cache trong RAM khi có thể
Chúng ta biết rằng việc ném tiền vào ngay để giải quyết vấn đề sẽ không phải là một giải pháp thiết thực về lâu dài. Hãy để chúng tôi cố gắng giải quyết vấn đề bộ nhớ cache và xem điều gì sẽ xảy ra.
Sử dụng lưu trữ flash là rất tốt; Nhưng RAM thậm chí còn nhanh hơn nhiều. Sử dụng bộ nhớ đệm RAM đúng cách cùng với flash sẽ làm tăng hiệu suất của bạn. Bộ nhớ đệm RAM là bộ nhớ hoạt động như một bộ đệm cho I / O đĩa. Hãy coi nó như bộ nhớ dễ mất lưu giữ dữ liệu tạm thời để ứng dụng truy cập đọc và ghi nhanh hơn mà không cần phải đợi cho đến khi dữ liệu được ghi vào ổ đĩa lưu trữ và đọc lại. Khi RAM được sử dụng để lưu vào bộ nhớ đệm, nó sẽ tăng tốc độ truy cập dữ liệu theo thứ tự độ lớn so với đĩa quay và thậm chí cả mảng flash.
Khi sử dụng DataCore SANsymphony (có trong đường dẫn dữ liệu giữa ứng dụng và bộ lưu trữ khối phụ trợ) làm bộ nhớ đệm L1, bạn có thể tận dụng DRAM có sẵn trong đó làm thiết bị lưu vào bộ nhớ đệm và tăng tốc độ đọc và ghi I / O.
Bộ nhớ đệm RAM sử dụng DataCore SANsymphony
- SANsymphony sử dụng công nghệ liên kết ghi để sắp xếp lại thứ tự các lần ghi ngẫu nhiên được giữ trong bộ nhớ cache và ghi chúng vào đĩa theo các sọc tuần tự. Điều này giúp tránh việc chờ đợi trên đĩa cho mọi thao tác ghi và tăng tốc quá trình ghi tổng thể.
- Quá trình xử lý đọc được SANsymphony tăng tốc bằng cách tìm nạp trước các khối dự kiến từ đĩa (dựa trên các lần đọc trước đó từ đĩa) vào bộ nhớ đệm đọc. Điều này làm cho việc đọc nhanh hơn nhiều.
DataCore SANsymphony hỗ trợ tối đa 8TB RAM cho mỗi nút để lưu vào bộ nhớ đệm, giúp tăng quá trình xử lý I / O theo cấp số nhân, do đó tạo điều kiện cho ứng dụng phản hồi nhanh hơn. Lưu vào bộ nhớ cache và tăng tốc quá trình đọc và ghi.
Tìm hiểu thêm về bộ nhớ đệm tốc độ cao với DataCore SANsymphony »
Như chúng ta đã thấy với bốn Best Pratice này, có rất nhiều điều bạn có thể làm với cơ sở hạ tầng hiện có của mình để cải thiện hiệu suất ứng dụng. Bằng cách tối ưu hóa tài nguyên phần cứng và sử dụng các công cụ và kỹ thuật phù hợp, bạn có thể đảm bảo các ứng dụng của mình chạy nhanh hơn và người dùng không gặp phải sự chậm trễ. Ngoài các phương pháp hay nhất này, giải pháp lưu trữ do phần mềm DataCore SANsymphony xác định còn cung cấp nhiều khả năng khác để giúp bạn cải thiện hơn nữa hiệu suất lưu trữ. Cho dù đó là cân bằng tải trên các thiết bị hay đặt giới hạn Chất lượng Dịch vụ (QoS) trên lưu lượng I / O để điều chỉnh thông lượng, bạn có thể làm được nhiều việc hơn với SANsymphony để tăng tốc các ứng dụng của mình.
Bài viết liên quan
- Làm cách nào để cải thiện hiệu năng và dung lượng các tủ SAN, tối ưu và quản lý chúng chặt chẽ?
- HCI và những ưu điểm của hệ thống Siêu hội tụ
- Automated Data Tiering vs. Automated Data Placement
- Những sự thật trong lĩnh vực lưu trữ dữ liệu
- Tầm quan trọng của Analytics trong quản lý hệ thống lưu trữ dữ liệu
- Các xu hướng hàng đầu liên quan đến Software-defined Storage