LỜI MỞ ĐẦU Sự phát triển của xã hội dẫn đến bùng nổ dữ liệu trong những thập niên gần đây. Những sản phẩm công nghệ mới đem lại nhiều tiện ích trong cuộc sống, đƣợc ứng dụng ở nhiều lĩnh vực thông tin truyền thông. Hệ thống thông tin điện tử, trực tuyến, các website của những doanh nghiệp tổ chức đƣợc phát triển mạnh mẽ góp phần tăng cƣờng mối quan hệ, hợp tác ở nhiều lĩnh vực nhƣ văn hóa xã hội, khoa học công nghệ, y tế, giáo dục, giải trí… Con ngƣời có trong tay nhiều công cụ để chia sẻ thông tin qua blog, website, diễn đàn, các mạng xã hội trực tuyến nhƣ Facebook, Twitter, Youtube…Cách đây không lâu, vào năm 2000, chỉ mới có một phần tƣ lƣợng thông tin lƣu trữ ở dạng kỹ thuật số trên thế giới. Ba phần tƣ còn lại đƣợc lƣu trữ trên giấy tờ, phim, và các phƣơng tiện analog khác.
Nhƣng do lƣợng dữ liệu kỹ thuật số bùng nổ quá nhanh – cứ 3 năm lại tăng gấp đôi – cục diện trên nhanh chóng đảo ngƣợc. Ngày nay, chỉ dƣới 2% tổng lƣợng thông tin chƣa đƣợc chuyển sang lƣu trữ ở dạng kỹ thuật số. Tuy nhiên những phƣơng thức lƣu trữ dữ liệu đã bộc lộ rất nhiều hạn chế. Ngày nay khối lƣợng dữ liệu vô cùng lớn, kích cỡ lên đến hàng trăm terabyte cho đến petabyte chỉ cho một tập hợp dữ liệu.
Cùng với đó khi mà hơn 80% dữ liệu sinh ra là phi cấu trúc (tài liệu, blog, hình ảnh, video, bài hát, dữ liệu cảm biến, thiết bị chăm sóc sức khỏe…) thì những phƣơng pháp lƣu trữ dữ liệu truyền thống không thể đảm đƣơng đƣợc. Những phƣơng pháp đó không cho phép liên kết và phân tích nhiều dạng dữ liệu khác nhau. Khối lƣợng dữ liệu gia tăng nhanh nhƣng tốc độ xử lý dữ liệu (thu nhận, xử lý, đáp trả) mất rất nhiều thời gian trong khi nhu cầu của con ngƣời muốn xử lý đƣợc ngay dữ liệu tức thời (tính đến bằng mili giây). Điều đó thúc đẩy con ngƣời tạo ra một phƣơng pháp và quản lý dữ liệu khác phù hợp hơn.
Và Big data ra đời đã đánh dấu một trang mới trong lịch sử phát triển công nghệ. Big data là một hệ thống dữ liệu liệu vô cùng lớn, đến mức không thể lƣu trữ trong các hệ thống cơ sở dữ liệu truyền thống. Sự phức tạp và không thể định hình thành một thể thống nhất của dữ liệu Big data cũng là một nhân tố làm nó trở nên khó đồng bộ để lƣu trữ trong một hệ thống cơ sở dữ liệu truyền thống. Dữ liệu đƣợc thu thập từ nhiều nguồn khác nhau bao gồm: dữ liệu không giới hạn từ internet, web 2.0, từ các thiết bị nghiên cứu (dữ liệu thiên văn, dịch vụ y tế…), dữ liệu từ các thiết bị thông minh (hay còn gọi là smart device).
Do đó nó mang cấu trúc không cố định.Big data đã thể hiện đƣợc sức mạnh và tầm ảnh hƣởng đến mọi lĩnh vực trong xã hội. 7 Trong đề tài này em sẽ trình bày về công nghệ quản lý Big data, mô hình xử lý dữ liệu phân tán Mapreduce và hệ thống Hadoop. 8 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.