CHƯƠNG 1: CÔNG NGHỆ QUẢN LÝ DỮ LIỆU LỚN 1.1 Công nghệ nền tảng áp dụng cho Big data 1.1 Tìm hiểu các thành phần công nghệ Big data Big data có số lượng dữ liệu lưu trữ rất lớn và thường lưu trữ các dòng dữ liệu có kiểu khác nhau ở tốc độ cao. Nhiều kĩ sư phần mềm dầy dặn kinh nghiệm và các nhà phát triển biết cách để nhắm đến một thậm chí là hai tình huống này hoàn toàn dễ dàng. Ví dụ, nếu bạn phải đối mặt dữ liệu lớn cần giải quyết cùng với yêu cầu khả năng chịu lỗi, bạn có thể lựa chọn triển khai cụm cơ sở dữ liệu dư thừa trong trung tâm cơ sở dữ liệu với cơ sở hạ tầng mạng rất nhanh. Tương tự, nếu yêu cầu là kết hợp nhiều loại dữ liệu khác nhau từ sự hiểu biết và các nguồn thông tin ẩn danh, lựa chọn có thể là xây dựng một mô hình di chuyển kho dữ liệu theo yêu cầu của khách hàng.
Tuy nhiên bạn có thể không có không đủ điều kiện để triển khai cụ thể. Khi bạn rời khỏi nơi mình có quyền điều khiển và kiểm soát dữ liệu chặt chẽ, bạn cần tạo ra một mô hình kiến trúc để nhắm đến loại môi trường lai. Môi trường mới này đòi hỏi kiến trúc này phải hiểu về tính chất của Big data và yêu cầu để đưa kiến thức vào giải pháp kinh doanh. Trong chương này chúng ta sẽ tìm hiểu về kiến trúc liên quan đến dữ liệu lớn.1 Sự dư thừa cơ sở hạ tầng vật lý Ở cấp thấp nhất là cơ sở hạ tầng vật lý như phần cứng, mạng,.
Công ty của bạn có thể đã có trung tâm dữ liệu hoặc được đầu tư cơ sở vật chất nên bạn muốn tìm một cách để sử dụng dữ liệu hiện hữu. Thi hành dữ liệu lớn có yêu cầu rất cụ thể trên tất cả các phần tử trong kiến trúc tham khảo, vì thế bạn cần kiểm tra những yêu cầu này về nền tảng cơ sở lớp – lớp để đảm bảo sẽ thực hiện và nâng cấp theo đúng yêu cầu của công ty. Điều quan trọng là phải thực hiện theo đúng nguyên tắc. Mức độ ưu tiên theo danh sách nguyên tắc này bao gồm: - Performance (Hiệu năng): Thực thi thường được tiến hành nối đuôi nhau dựa trên một giao dịch hay một câu hỏi có yêu cầu ở tốc độ rất nhanh (hiệu suất cao), do vậy chi phí cho cơ sở hạ tầng thường rất tốn kém.
9 - Availability (Tính sẵn có): Bạn có cần đảm bảo thời gian dịch vụ 100%? Công ty của bạn có thể chờ được bao lâu trong trường hợp dịch vụ gián đoạn hoặc không đạt yêu cầu? Cơ sở hạ tầng đảm bảo tính sẵn sàng cao cũng rất tốn kém. - Scalability (Khả năng mở rộng): Cơ sở hạ tầng của bạn cần được mở rộng như thế nào? Dung lượng đĩa cần bao nhiêu để đảm bao yêu cầu trong thời điểm hiện tại và tương lai? - Flexibility (Linh hoạt): Bạn thêm tài nguyên vào cơ sở hạ tầng sớm nhất là khi nào? Cơ sở hạ tầng khôi phục sau thất bại nhanh mức nào? Cơ sở hạ tầng đạt mức linh hoạt nhất rất tốn kém nhưng có thể kiểm soát bằng dịch vụ điện toán đám mây, nơi bạn chỉ trả tiền cho những gì bạn thực sự sử dụng. - Cost (Chi phí): Bạn có thể đủ khả năng chi trả cho cái gì? Bởi cơ sở hạ tầng là tập hợp của rất nhiều thành phần, bạn có thể mua hệ thống mạng tốt nhất và tiết kiệm tiền cho việc lưu trữ hoặc ngược lại. Bạn cần lập yêu cầu đối với mỗi lĩnh vực trong hoàn cảnh ngân sách cụ thể và chi trả cho những nơi cần thiết.
Big data hoàn toàn tập trung vào tốc độ xử lý cao, khả năng lưu trữ dữ liệu lớn và đa dạng nên cơ sở vật chất theo nghĩa đen sẽ quyết định đến sự thành bại của việc thực hiện. Hầu hết việc thực thi Big data cần ở mức độ sẵn sàng cao nên mạng, server và bộ lưu trữ phải vừa có thể thay đổi (mở rộng, thu hẹp), vừa phải tránh dư thừa. Khả năng thay đổi và dư thừa có mối quan hệ với nhau. Về bản chất luôn có lý do khiến cho ngay cả hệ thống mạng tốt nhất cũng có thể bị lỗi như là một trục trặc phần cứng.
Do đó công nghệ dự phòng đảm bảo rằng trục trặc này sẽ không gây ra ngưng trệ. Sự dư thừa mạng Mạng nên dư thừa và phải có đủ khả năng thích ứng trước số lượng và tốc độ của dữ liệu ra vào trong mạng lưới giao thông trên mạng. Khi bạn bắt đầu làm về Big data, mạng là phần thiết yếu trong chiến lược tin học của bạn. Nó là cơ sở để gia tăng số lượng và vận tốc.
Những người thiết kế cơ sở hạ tầng nên lập kế hoạch cho hệ thống mạng. Khi lưu lượng giao thông mạng thay đổi (tăng, giảm), có sự ảnh hưởng tới tài sản vật chất liên quan đến việc triển khai thực hiện. Cơ sở hạ tầng của bạn nên đưa ra khả năng giám sát giúp người điều hành có thể phản ứng khi lượng tài nguyên tăng lên dẫn đến thay đổi khối lượng công việc. Quản lý phần cứng: Bộ lưu trữ và Server Phần cứng (bộ lưu trữ và server) phải có đủ tốc độ và năng lực xử lý tất cả các khả năng của Big data.
Đó là sử dụng một ít để có mạng tốc độ cao cùng với các server chậm bởi vì các máy chủ có thể trong tình trạng thắt nút cổ chai. Tuy nhiên một bộ lưu trữ dữ liệu nhanh và tính toán các máy chủ có thể vượt qua hiệu suất mạng. Tất nhiên, sẽ không có gì hoạt động tốt nếu hiệu suất mạng thấp và kém chất lượng. Hoạt động cơ sở hạ tầng Một thiết kế quan trọng cần quan tâm là quản lý hoạt động cơ sở hạ tầng.
Mức cao nhất về hiệu suất và tính linh hoạt chỉ xuất hiện trong một môi trường được quản lý tốt. Các nhà quản lý dữ liệu có thể dự đoán và ngăn chặn các thất bại thảm hại, như vậy giữ được sự toàn vẹn của dữ liệu và duy trì quy trình nghiệp vụ.2 Cơ sở hạ tầng an ninh An ninh và bảo mật trong Big data tương tự như các yêu cầu về môi trường dữ liệu thông thường. Các yêu cầu về an ninh phải được liên kết chặt chẽ với nhu cầu nghiệp vụ cụ thể. Một số thách thức phát sinh khi Big data trở thành một phần của chiến lược bao gồm: - Truy cập dữ liệu: Khả năng truy cập dữ liệu của người dùng để tính toán dữ liệu lớn có cùng mức độ yêu cầu kĩ thuật như triển khai dữ liệu không lớn.
Dữ liệu cần có chỉ dành cho những người có nhu cầu nghiệp vụ để kiểm tra hoặc tương tác với nó. Hầu hết các nền tảng lưu trữ dữ liệu có hệ thống an ninh nghiêm ngặt và thường được tăng cường với mộ khả năng nhận dạng hợp nhất, cung cấp truy cập thích hợp trên nhiều lớp của kiến trúc. - Truy cập ứng dụng: Truy cập dữ liệu ứng dụng cũng tương đối đơn giản từ góc độ kĩ thuật. Hầu hết các giao diện lập trình ứng dụng (API) cung cấp bảo vệ từ việc sử dụng trái phép hoặc truy cập.
Mức độ bảo vệ thích hợp nhất cho triển khai thực hiện Big data. 11 - Mã hóa dữ liệu: Mã hóa dữ liệu là thách thức lớn nhất về bảo mật trong môi trường Big data. Trong môi trường truyền thống, mã hóa và giải mã dữ liệu thực sự cần nguồn lực lớn của hệ thống. Với khối lượng, tốc độ và sự đa dạng của Big data, vấn đề này càng khó khăn hơn.
Mã hóa dữ liệu là cách tốt nhất để cung cấp khả năng tính toán nhiều hơn và nhanh hơn. Tuy nhiên điều này đi kèm với một bảng giá. Do vậy cần xác định phần dữ liệu nào cần bảo mật và để mã hóa các mục cần thiết. - Phát hiện đe dọa: Bao gồm các thiết bị di động và các mạng xã hội theo cấp số nhân tăng cả số lượng dữ liệu và các mối đe dọa an ninh.
Do đó điều quan trọng là các tổ chức có cách tiếp cận vòng ngoài an ninh.3 Giao diện ứng dụng và Internet Cơ sở hạ tầng vật lý cho phép tất cả mọi thứ và cơ sở hạ tầng an ninh bảo vệ tất cả các yếu tố trong môi trường Big data. Các cấp độ tiếp theo là các giao diện mà cung cấp truy cập hai chiều cho tất cả các thành phần của Stack – từ các ứng dụng doanh nghiệp đến dữ liệu từ Internet. Một phần quan trọng của việc thiết kế các giao diện này là tạo ra một cấu trúc phù hợp có thể chia sẻ cả bên trong lẫn bên ngoài công ty cũng như các đối tác trong kinh doanh. Trong nhiều thập kỷ, các lập tình viên đã sử dụng API để cung cấp truy cập đến và đi từ việc triển khai phần mềm.
Các nhà cung cấp công cụ và công nghệ sẽ đi đến độ dài lớn để đảm bảo rằng nó là một nhiệm vụ tương đối đơn giản để tạo ra các ứng dụng mới sử dụng sản phẩm của họ. Nó cần thiết cho các chuyên gia CNTT để tạo ra tùy chỉnh hoặc các API độc quyền cho công ty. Bạn cần làm điều này cho lợi thế cạnh tranh, một số nhu cầu nghiệp vụ và đó không phải là một nhiệm vụ đơn giản. API cần được lưu trữ và duy trì để bảo toàn giá trị cho doanh nghiệp.
Vì lý do này, một số công ty lựa chọn để sử dụng bộ công cụ API để có được một bước nhảy về hoạt động quan trọng này. Bộ công cụ API có một vài ưu điểm so với các API phát triển nội bộ. Đầu tiên là bộ công cụ API là sản phẩm được tạo ra, được quản lý và duy trì bởi một bên thứ ba dộc lập. Thứ hai, chúng được thiết kế để giải quyết một yêu cầu kỹ thuật cụ thể.
Nếu bạn cần các API cho ứng dụng web hoặc ứng dụng di động, có nhiều lựa chọn cho bạn bắt đầu. 12 Bởi vì thu thập dữ liệu và chuyển động có đặc điểm rất giống nhau, có thể thiết kế một bộ dịch vụ để thu thập, làm sạch, biến đổi, chuẩn hóa và lưu trữ các dữ liệu lớn trong hệ thống lưu trữ. Để tạo ra sự linh hoạt khi cần thiết, các nhà máy được điều khiển cùng với mô tả giao diện được viết bằng Extensible Markup Language (XML).