Thư viện nguồn mở

OLYMPIC TIN HỌC SINH VIÊN VIỆT NAM NĂM 2012

Từ 27-30 tháng 11 năm 2012

Trường Đại học Công nghiệp Hà Nội

Thư viện cho phần thi “Mã nguồn mở”


Ngôn ngữ lập trình được chọn sử dụng trong nội dung thi “Mã nguồn mở” năm nay là Java và xoay quanh chủ đề xử lý dữ liệu quy mô lớn (Big Data Processing) với mô hình MapReduce.

Trong thời đại Công nghệ thông tin ngày nay, khi quy mô dữ liệu ngày càng bùng nổ thì việc xử lý thông tin trên một máy đơn đã không còn khả thi. Trước thực trạng đó, một số mô hình đã được giới thiệu phục vụ cho việc phân tải tính toán song song trên nhiều máy đơn. Một trong số đó là MapReduce, được giới thiệu bởi Google, sau này được cộng đồng hiện thực hoá với thư viện mã nguồn mở Hadoop. Hadoop đã được sử dụng bởi rất nhiều các công ty bao gồm: Facebook, Twitter, Linkedin, Amazon, IBM, eBay... với quy mô lên tới hàng ngàn máy.

Hệ điều hành sử dụng cho các đội thi là Ubuntu 12.04 (Precise Pangolin). Môi trường phát triển tích hợp (IDE) Eclipse 4.2, JDK 1.6 sẽ được cài đặt sẵn trên các máy của phòng thi. Các thư viện mã nguồn mở sẽ được sử dụng trong phần thi “Mã nguồn mở”: 
  • Hadoop 1.0.3 (http://hadoop.apache.org/): Thư viện mã nguồn mở phục vụ việc tính toán phân tán trên nhiều máy. Các module trong thư viện cần chú ý:
    • HDFS: Mô hình file phân tán
    • MapReduce: Mô hình tính toán dữ liệu phân tán 
Chú ý: Do điều kiện phòng thi, nên mỗi đội sẽ được cung cấp một máy đơn đã cài sẵn các thư viện cần thiết để phục vụ cho việc làm bài (Trong thực tế, để mô hình tính toán song song hiệu quả thường cần từ 5 máy trở lên). Các tutorial hữu ích cho việc cài đặt trên một máy

Các đội tuyển sẽ đọc, nghiên cứu, phân tích, và tìm hiểu các thư viện mã nguồn mở này để nắm được các chức năng chính, các giao tiếp, các thành phần (module) chính trong các bộ thư viện mã nguồn mở này. Đề thi cho phần thi “Mã nguồn mở” sẽ bao gồm một số bài toán Tin học và câu hỏi liên quan đến các thư viện đã công bố kết hợp với các kỹ năng, thao tác lập trình trực tiếp trên máy tính với nội dung chủ yếu dựa trên khả năng hiểu, nắm bắt, sử dụng, khai thác, sửa lỗi và nâng cấp bộ thư viện mã nguồn mở đã công khai trước khi thi.

Chú ý: Các thí sinh có thể tham khảo đề năm ngoái (Android) tại http://www.olp.vn/luu-tru/2011/de-thi