13 May, 2021
Học về khoa học dữ liệu
Một sinh viên viết cho tôi: “Em mê mải về bài báo của thầy về dữ liệu lớn và muốn học thêm về nó. Là một sinh viên năm thứ nhất trong quản lí hệ thông tin, em không biết đây có phải là lĩnh vực đúng để học hay em phải chuyển sang khoa học máy tính? Em phải học ngôn ngữ lập trình nào trong khu vực này? Xin thầy lời khuyên.”
Đáp: Nếu bạn học Quản lí hệ thông tin (ISM) bạn ở đúng lĩnh vực để theo đuổi nghề trong Big Data rồi. Trong khi có nhiều ngôn ngữ lập trình được dạy trong đại học như C++, Java, hay Python nhưng nhiều ứng dụng Big Data đang dùng ngôn ngữ khác có tên là “R” vì các công cụ Big Data như Pig/Hive và Hadoop phần lớn được viết trong ngôn ngữ “R”. Ngôn ngữ này được thiết kế đặc biệt cho tính toán thống kê và đồ hoạ và được dùng rộng rãi trong các nhà thống kê Big data và các chuyên viên khai phá dữ liệu để phát triển phần mềm thống kê và phân tích dữ liệu. “R” cũng hội tụ vào kĩ thuật đồ hoạ như mô hình tuyến tính và phi tuyến, phân tích chuỗi thời gian, và phân loại.
Tuy nhiên nếu bạn đã biết một ngôn ngữ tốt, dễ học ngôn ngữ khác. Nếu bạn có thể lập trình trong Java hay C++, bạn có thể học R hay Python trong vài tuần cho nên tôi sẽ không quá bận tâm với ngôn ngữ lập trình. Điều bạn cần là hiểu cách dữ liệu được thu thập, tổ chức và phân tích để trích rút thông tin quan trọng.
Để bắt đầu, bạn nên bắt đầu với Excel, chương trình trang tính lưu giữ, tổ chức và thao tác dữ liệu. Bạn sẽ học đưa dữ liệu vào ô trang tính, dùng các công thức toán học để tính toán hay thao tác các dữ liệu này. Đây là kĩ năng cơ bản nhất mà bạn phải biết cách thực hiện các phép toán cơ bản để tìm các giá trị như lợi nhuận và tổn thất trong ứng dụng tài chính v.v. Bạn sẽ học cách tạo ra hiển thị đồ hoạ từ những dữ liệu này hay tạo ra báo cáo.
Sau khi bạn đã làm chủ khái niệm về trang tính Excel, bạn có thể chuyển sang cơ sở dữ liệu để học thêm về quan hệ giữa các dữ liệu này. Bạn sẽ học cách thu thập dữ liệu, tổ chức chúng thành các tệp và bản ghi, và lưu chúng để truy nhập nhanh. Bạn cũng học cách xây dựng bảng và chỉ số để thao tác các dữ liệu này và phân tích chúng để tạo ra báo cáo đặc biệt. Bạn học dùng Hệ quản trị cơ sở dữ liệu (DBMS), chương trình phần mềm giúp bạn tạo ra và quản lí các cơ sở dữ liệu. Bạn có thể dùng SQL server của Microsoft, Oracle, hay MySQL để làm chủ kĩ năng của bạn trong quản trị cơ sở dữ liệu. (Cơ sở dữ liệu được dạy trong năm thứ ba trong chương trình ISM.)
Sau khi bạn học về cơ sở dữ liệu bạn có thể chuyển sang học về Trinh sát doanh nghiệp (BI), ứng dụng phần mềm được dùng để phân tích dữ liệu để nhận diện thông tin có giá trị. BI được tạo nên từ vài hoạt động có liên quan như khai phá dữ liệu, xử lí phân tích trực tuyến, truy vấn và làm báo cáo. Ngày nay phần lớn các công ti đều dùng BI để cải tiến việc ra quyết định quản lí, giảm lãng phí hay nhận diện cơ hội kinh doanh mới. (BI thường được dạy ở năm thứ ba hay thứ tư trong chương trình ISM.)
Phần lớn các chương trình bằng cử nhân trong Quản lí hệ thông tin (ISM) bao quát quản lí cơ sở dữ liệu và trinh sát doanh nghiệp nhưng để học thêm về Big data, bạn sẽ cần tiếp tục học bằng thạc sĩ trong khoa học dữ liệu, phân tích dữ liệu qui mô lớn hay khoa học tính toán v.v. Trong những chương trình này bạn sẽ học nhiều hơn về khuôn khổ Big Data như các công cụ Hadoop; các công cụ như Pig và Hive, NonSQL, MapReduce v.v. Tôi đã viết nhiều bài báo về Big Data trong blog này mà bạn có thể đọc thêm để biết thêm về Big Data.
—English version—
Learning about data science
A student wrote to me: “I am fascinated about your articles on big data and want to learn more about it. As a first year student in Information System Management, I do not know is this the right field to study or should I switch to Computer Science? Which programming language should I learn so I can work in this area? Please advice.”
Answer: If you study Information System Management (ISM) you are in the right field to pursue a career in Big Data. While there are many programming languages that are being taught in college such as C++, Java, or Python but many Big Data applications are using another language called “R” since Big Data tools such as Pig/Hive and Hadoop are mostly written in “R” language. This language is designed especially for statistical computing and graphics and widely used among Big data statisticians and data mining specialist for developing statistical software and data analysis. “R” is also focusing on graphical techniques such as linear and nonlinear modeling, time-series analysis, and classification.
However if you already know one programming language well, it is easy to learn another. If you can program in Java or C++, you can learn R or Python in a matter of few weeks so I would not be too concerned with the programming language. What you need is to understand how data are collected, organized, and analyzed to extract the important information.
To start, you should begin with Excel, the spreadsheet program that store, organize and manipulating data. You will learn to put data into spreadsheet cells, using mathematics formulas to calculate or manipulate these data. This is the most basic skill that you must know how to perform basic operations to find values such as profit or loss as in finance applications etc. You will learn how to create graphic display from these data or create reports.
After you have mastered the concept of Excel spreadsheet, you can move on to database to learn more about the relationships between these data. You will learn how to collect data, organize them into files and records, and store them for quick access. You also learn how to build table and index to manipulate these data and analyze them to create special reports. You learn to use Database Management System (DBMS), the software program that help you to create and manage of databases. You may use Microsoft’s SQL server, Oracle, or MySQL to master your skill in database management. (Database is often taught in the third year in the ISM program)
After you learn about database you may move on to learn about Business intelligence (BI), the software applications used to analyze data to identify valuable information. BI is made up of several related activities such as data mining, online analytical processing, querying and reporting. Today most companies are using BI to improve management decision making, reduce wastes or identify new business opportunities. (BI is often taught in the third or fourth year in the ISM program)
Most bachelor’s degree programs in Information System Management (ISM) cover database management and business intelligent but to learn more about Big data, you will need to continue to the Master’s degree in Data science, Large Scale data analysis or Computational science etc. In these programs you will learn more about Big Data frameworks such as Hadoop; tools such as Pig and Hive, NonSQL, MapReduce etc. I have written several articles on Big Data in this blog that you can read further to learn more about Big Data.