Big Data #19 – Cách trở thành nhà khoa học về dữ liệu (data scientist) và học về khoa học dữ liệu

Data Scientist (nhà khoa học dữ liệu) là 1 từ mới, mọi người dường như muốn trở thành data scientist. Duyệt qua 1 vài chủ đề chính liên quan đến data scientist. Trước hết chúng ta sẽ hiểu daa scientist là gì?

Trong thế giới mới của big data, tôi thấy nhiều người muốn trở thành data scientist và có nhiều người đã tuyên bố họ là data scientist.

Data scientist là gì?

Data scientists là các chuyên gia (expert) những người hiểu các khía cạnh khác nhau của kinh doanh và biết chiến lượt dữ liệu nào để đạt được mục tiêu kinh doanh. Họ có 1 nền tảng vững chắc các thuật toán dữ liệu khác nhau, mô hình và phương pháp thống kê. (more…)

Big Data #18 – Cơ bản về phân tích dữ liệu lớn (big data)

Khi bạn có nhiều dữ liệu xung quan, điều đầu tiên cần nghĩ đến là gì?

“Tất cả dữ liệu có nghĩa là gì?”

Chính xác – tôi cũng có cùng suy nghĩ như vậy. Tôi luôn muốn biết tất cả dữ liệu có nghĩa là gì. Hầu hết các dự án big data đều được xây dựng để truy xuất các thông minh khác nhau mà tất cả dữ liệu chứa đựng. Lấy ví dụ Facebook. Khi tôi nhìn danh sách bạn bè của Facebook, tôi luôn muốn hỏi nhiều câu hỏi như: (more…)

Big Data #17 – Tương tác với Hadoop – Sqoop là gì? – Zookeeper là gì?

Có 2 thành phần quan trọng nhất nên học khi học về tương tác với Hadoop – Sqoop và Zookper.

Sqoop là gì?

Hầu hết các công ty lưu dữ liệu trong RDBMS và các giải pháp kho dữ liệu khác. Họ cần 1 cách để di chuyển dữ liệu vào Hadoop để làm các xử lý khác nhau và trả kết quả trở về RDBMS từ Hadoop. Sự di chuyển dữ liệu có thể xảy ra trong thời gian thực (real time) hoặc tại nhiều thời điểm (interval) khác nhau. Chúng ta cần 1 công cụ giúp di chuyển dữ liệu từ SQL sang Hadoop và từ Hadoop sang SQL. Sqoop (SQL to Hadoop) là 1 công cụ như vậy, dùng trích xuất (extract) dữ liệu từ non-Hadoop và chuyển đổi (transform) chúng vào định dạng mà Hadoop có thể dùng và sau đó nạp (load) chúng vào HDFS. Cơ bản nó là công cụ ETL (Extracts, Transform và Load) từ SQL vào Hadoop. Điểm hay là nó trích xuất (extract) dữ liệu từ Hadoop và nạp (load) chúng vào Non-SQL (hoặc RDBMS). Cơ bản, Sqoop là 1 công cụ dòng lệnh làm SQL thành Hadoop và Hadoop thành SQL. Nó là 1 trình thông dịch dòng lệnh. Nó tạo MapReduce job đằng sau để import dữ liệu từ CSDL bên ngoài vào HDFS. Nó rất hiệu quả và dễ học. (more…)

Big Data #16 – Tương tác với Hadoop – PIG là gì? – PIG Latin là gì?

Yahoo bắt đầu làm việc với Pig cho các triển khai ứng dụng của họ trên Hadoop. Mục tiêu của Yahoo là quản lý dữ liệu không cấu trúc.

Pig là gì và Pig Latin là gì?

pig

Pig là 1 nền tảng (platform) cấp cao để tạo các chương trình MapReduce được dùng với Hadoop và ngôn ngữ chúng ta dùng cho nền tảng này được gọi là PIG Latin. Pig được thiết kế để giúp Hadoop thân thiện với người dùng hơn và thích hợp hơn. PIG là 1 môi trường thực thi tương tác hỗ trợ ngôn ngữ Pig Latin. Ngôn ngữ Pig Latin hỗ trợ nạp (load) và xử lý (process) dữ liệu đầu vào với 1 chuỗi các biến đổi (transform) để tạo ra kết quả mong muốn. (more…)

Big Data #15 – Khai thác dữ liệu (data mining) với Hive – Hive là gì? – HiveSQL (HSQL) là gì?

Yahoo bắt đầu làm việc với PIG (sẽ nói sau) cho các triển khai ứng dụng của họ trên Hadoop. Mục tiêu của Yahoo để quản lý dữ liệu không cấu trúc. Tương tự, Facebook bắt đầu triển khai các giải pháp kho dữ liệu (warehouse) của họ trên Hadoop với HIVE. Lý do chọn dùng HIVE là bởi vì các giải pháp kho dữ liệu (warehouse) truyền thống rất đắt.

HIVE là gì?

hive

Hive là hạ tầng kho dữ liệu cho Hadoop. Nhiệm vụ chính là cung cấp sự tổng hợp dữ liệu, truy vấn và phân tích. Nó hỗ trợ phân tích các tập dữ liệu lớn được lưu trong HDFS của Hadoop cũng như trên Amazon S3. Điểm hay của HIVE là hỗ trợ truy xuất giống SQL đến dữ liệu có cấu trúc, được biết với tên HiveSQL (hoặc HQL) cũng như phân tích big data với MapReduce. Hive không được xây dựng để hồi đáp nhanh các câu truy vấn nhưng nó được xây dựng cho các ứng dụng khai thác dữ liệu (data mining). Các ứng dụng khai thác dữ liệu có thể mất nhiều phút đến nhiều giờ để phân tích dữ liệu và HIVE được dùng chủ yếu. (more…)

Big Data #14 – Các lọai CSDL hỗ trợ Big Data – Columnar, Graph và Spatial Databases

Columnar Databases

CSDL quan hệ là row store database hoặc row oriented database. Columnar databases là column oriented or column store database. Như đã nói về big data, chúng ta có các loại dữ liệu khác nhau và chúng ta cần lưu trữ trong database. Khi chúng ta có columnar database, nó rất dễ làm iđều này chỉ bằng cách thêm 1 cột mới vào columnar database. HBasae là 1 trong các columnar database phổ biến nhất. Nó dùng hệ thống tập tin Hadoop và MapReduce cho hệ thống lưu trữ dữ liệu lõi. Tuy nhiên, nhớ rằng đây không phải là sự lựa chọn tốt cho mọi ứng dụng. Điều này đặc biệt tốt cho các CSDL có khối lượng dữ liệu lớn (volume) được thu thập và xử lý. (more…)