7,5 MỞ RỘNG HỆ SINH THÁI LỚN DỮ LIỆU ỨNG DỤNGTại thời điểm này, một vài điểm quan trọng liên quan đến sự phát triển của ứng dụng lớn dữ liệu cần được làm rõ. Trước tiên, bất chấp sự đơn giản của việc tải xuống và cài đặt cốt lõi các thành phần của một lớn dữ liệu phát triển và thực hiện môi trường như Hadoop, thiết kế, phát triển, và triển khai ứng dụng phân tích vẫn còn đòi hỏi một số kỹ năng và chuyên môn. Thứ hai, một trong những phải phân biệt giữa các nhiệm vụ liên quan đến ứng dụng thiết kế và phát triển và các nhiệm vụ liên quan đến architecting hệ thống lớn dữ liệu, lựa chọn và kết nối các thành phần, cấu hình hệ thống, cũng như hệ thống giám sát và tiếp tục bảo trì.Nói cách khác, chuyển tiếp từ một hệ thống thử nghiệm "phòng thí nghiệm" vào một môi trường sản xuất đòi hỏi nhiều hơn là chỉ truy cập vào máy tính, bộ nhớ, lưu trữ, và tài nguyên mạng. Có là một nhu cầu để mở rộng các hệ sinh thái để kết hợp một loạt các khả năng bổ sung, chẳng hạn như quản lý cấu hình, tổ chức dữ liệu, phát triển ứng dụng, và tối ưu hóa, cũng như khả năng bổ sung để hỗ trợ phân tích chế biến. Chúng tôi kiểm tra của một nền tảng dữ liệu lớn nguyên mẫu thiết kế bằng cách sử dụng Hadoop tiếp tục bằng cách nhìn vào một số thành phần bổ sung thường có thể được coi là một phần của hệ sinh thái.7.6 ZOOKEEPERBất cứ khi nào có là nhiều nhiệm vụ và công việc hoạt động trong một môi trường phân phối duy nhất, có là một nhu cầu cho quản lý cấu hình và đồng bộ hóa của các khía cạnh khác nhau của đặt tên và phối hợp. Trang web của dự án chỉ định nó rõ ràng hơn: "Zookeeper là một dịch vụ tập trung cho việc duy trì thông tin cấu hình, đặt tên, cung cấp phân phối đồng bộ hoá và cung cấp các nhóm dịch vụ."3 Zookeeper quản lý một đăng ký đặt tên và có hiệu quả thực hiện một hệ thống cho việc quản lý các khác nhau tĩnh và không lâu tên đối tượng một cách phân cấp, giống như một hệ thống tập tin. Ngoài ra, nó cho phép phối hợp để thực hiện kiểm soát nguồn lực được chia sẻ bị ảnh hưởng bởi điều kiện chủng tộc (trong đó sản lượng dự kiến của một quá trình bị ảnh hưởng bởi các biến thể trong thời gian) và bế tắc (trong nhiều nhiệm vụ mà cạnh tranh cho quyền kiểm soát của tài nguyên cùng một hiệu quả khóa nhau ra khỏi bất cứ công việc có thể sử dụng các nguồn tài nguyên). Chia sẻ điều phối dịch vụ như những người cung cấp ở Zookeeper cho phép nhà phát triểnsử dụng các điều khiển mà không cần phải phát triển chúng từ đầu.7.7 HBASEHBase là một ví dụ khác của một môi trường quản lý dữ liệu nonrelational phân phối lớn datasets trên khuôn khổ Hadoop tiềm ẩn. HBase có nguồn gốc từ BigTable của Google và là một bố trí cột theo định hướng dữ liệu đó, khi lớp trên đầu trang của Hadoop, cung cấp một phương pháp lỗi khoan dung cho lưu trữ và thao tác bảng dữ liệu lớn. Như đã được thảo luận trong chương 6, dữ liệu được lưu trữ trong một bố trí cột là amenable để nén, tăng số lượng dữ liệu mà có thể được biểu diễn trong khi giảm dấu chân thực tế lí. Ngoài ra, HBase hỗ trợ thực hiện trong bộ nhớ.HBase không phải là một cơ sở dữ liệu quan hệ, và nó không hỗ trợ truy vấn SQL. Có một số hoạt động cơ bản cho HBase: Get (mà truy cập một hàng cụ thể trong bảng), đặt (mà mua sắm hoặc cập nhật một hàng trong bảng), quét (trong đó iterates trên một tập hợp các hàng trong bảng), và xóa (mà loại bỏ một hàng từ các bảng). Bởi vì nó có thể được sử dụng để tổ chức datasets, cùng với hiệu suất cung cấp bởi các khía cạnh của định hướng cột, HBase là một lựa chọn hợp lý như là một mô hình lưu trữ liên tục khi chạy ứng dụng MapReduce.7.8 HIVEMột trong những vấn đề thường ghi nhận với MapReduce là rằng mặc dù nó cung cấp một phương pháp để phát triển và thực hiện các ứng dụng sử dụng một lượng lớn dữ liệu, nó không phải là nhiều hơn thế. Và trong khi các dữ liệu có thể được quản lý trong tập tin bằng cách sử dụng HDFS, ứng dụng kinh doanh nhiều hy vọng các đại diện của dữ liệu trong cơ sở dữ liệu có cấu trúc bảng. Đó là động lực cho sự phát triển của tổ ong, trong đó (theo site4 web Apache Hive) là "dữ liệu kho hệ thống Hadoop mà tạo điều kiện dễ dàng dữ liệu tổng hợp, truy vấn quảng cáo-hoc, và phân tích datasets lớn được lưu trữ trong hệ thống tập tin tương thích Hadoop." Tổ được thiết kế đặc biệt cho kho dữ liệu truy vấn và báo cáo và không có ý định để sử dụng như trong hệ thống đó có yêu cầu truy vấn thời gian thực thực hiện hoặc giao dịch ngữ nghĩa cho nhất quán ở mức hàng xử lý giao dịch.Tổ lớp trên đầu trang của các tập tin hệ thống và thực hiện khuôn khổ cho Hadoop và cho phép các ứng dụng và người sử dụng để tổ chức các dữ liệu trong một nhà kho dữ liệu có cấu trúc và do đó truy vấn dữ liệu bằng cách sử dụng một ngôn ngữ truy vấn được gọi là HiveQL mà là tương tự như SQL (các cấu trúc truy vấn ngôn ngữ tiêu chuẩn được sử dụng cho hệ thống quản lý cơ sở dữ liệu quan hệ hiện đại nhất). Hive hệ thống cung cấp công cụ cho giải nén / chuyển đổi/tải dữ liệu (ETL) vào một loạt các định dạng dữ liệu khác nhau. Và bởi vì hệ thống kho dữ liệu được xây dựng trên đầu trang của Hadoop, nó cho phép bản địa quyền truy cập vào các mô hình MapReduce, cho phép lập trình để phát triển bản đồ tuỳ chỉnh và làm giảm chức năng có thể được tích hợp trực tiếp vào HiveQL truy vấn. Hive cung cấp khả năng mở rộng và mở rộng cho phong cách hàng loạt truy vấn để báo cáo qua datasets lớn thường được đang được mở rộng trong khi dựa trên faulttolerant các khía cạnh của mô hình cơ bản thực hiện Hadoop.7.9 LỢNMặc dù mô hình lập trình MapReduce là tương đối đơn giản, nó vẫn còn cần một số kỹ năng và sự hiểu biết về lập trình song song và phân phối và Java tốt nhất tận dụng lợi thế của mô hình. Dự án lợn là một nỗ lực đơn giản hoá quá trình ứng dụng phát triển bởi abstracting một số chi tiết đi qua một mức độ cao lập trình ngôn ngữ được gọi là lợn Latin. Theo các dự án web site5, ngôn ngữ lập trình cao cấp của lợn cho phép các nhà phát triển để xác định như thế nào các phân tích được thực hiện. Lần lượt, một trình biên dịch biến đặc tả Pig Latin vào chương trình MapReduce.Mục đích là để nhúng một tập đáng kể các quốc gia sử dụng song song và chức năng chứa trong một chuỗi kiểm soát các chỉ thị để được áp dụng cho datasets theo cách đó là hơi tương tự như cách SQL phát biểu được áp dụng cho cơ sở dữ liệu có cấu trúc truyền thống. Một số ví dụ bao gồm tạo ra datasets, lọc ra tập con, tham gia, datasets chia tách, loại bỏ trùng lặp. Cho các ứng dụng đơn giản, bằng cách sử dụng con lợn cung cấp đáng kể dễ phát triển, và công việc phức tạp hơn có thể được thiết kế như là trình tự của các quốc gia sử dụng ứng dụng.Ngoài ra, sử dụng một ngôn ngữ cấp cao cũng cho phép trình biên dịch để xác định các cơ hội để tối ưu hóa có thể có được bỏ qua bởi một lập trình viên thiếu kinh nghiệm. Cùng lúc đó, môi trường lợn cho phép nhà phát triển để tạo mới chức năng người dùng định nghĩa (UDFs) mà sau đó có thể được tích hợp vào chương trình phát triển.7,10 MAHOUT(70)Cố gắng sử dụng dữ liệu lớn f
đang được dịch, vui lòng đợi..
