Big data là gì? Học big data cần chuẩn bị những gì?

1
Dịch vụ dạy kèm gia sư lập trình

Big data là gì? Tại sao big data lại trở nên quan trọng đến như vậy? Đây có lẽ là câu hỏi mà rất nhiều bạn thắc mắc.

Trong thời đại công nghệ 4.0 ngày nay, có lẽ các bạn được nghe rất nhiều về AI, big data Machine Learning hay điện toán đám mây… Nhưng tất cả những công nghệ đó đều phải dựa vào một khái niệm, là tài nguyên của người dùng: đó là Big data.

Tại Việt Nam, các công ty công nghệ lớn đều rất cần các kỹ sư big data, sẵn sàng trả một mức lương hậu hĩnh. Nhưng thật tiếc, nhân lực về Big data ở Việt Nam quá ít, hay nói chính xác hơn là rất hiếm.

Vậy tại sao, bạn không phải là người tiên phong trong số đó. Nhanh chóng đón xu hướng và bắt tay vào học để trở thành một kỹ sư big data.

Qua bài viết này, chúng ta sẽ cùng nhau tìm hiểu những khái niệm cơ bản nhất: Big data là gì. Để trở thành thành một kỹ sư big data, bạn cần phải bắt đầu từ đâu.

Chúng ta bắt đầu nhé

Big data là gì

#Data là gì?

Data được hiểu là dữ liệu, là tập hợp số lượng, ký tự hoặc ký hiệu mà trên đó hoạt động được thực hiện bởi máy tính, được lưu trữ và truyền dưới dạng tín hiệu điện và được ghi trên phương tiện ghi từ tính, quang học hoặc cơ học. Thông thường, data sẽ được quản lý bởi các phần mềm quản trị cơ sở dữ liệu.

Nếu trước đây, bạn học trong trường đại học, bạn thường được các thầy dạy về dữ liệu, các hệ quản trị cơ sở dữ liệu. Bạn có biết về MySQL, MS SQL Server… Rồi cách thiết kế các bảng, mối quan hệ giữa các bảng, primary key…

Khi ngày nay, khi các công nghệ tiên tiến như AI, ML, Deep learning… ra đời thì dữ liệu không chỉ còn gói là những bảng dữ liệu quan hệ với nhau nữa. Mà đó là những dữ liệu chẳng có quan hệ gì với nhau, được tạo bởi người dùng một cách ngẫu nhiên… người ta gọi đó là NoSQL.

Có thể bạn quan tâm:

#Phân tích dữ liệu là gì?

Phân tích dữ liệu là gì

Nếu dữ liệu chỉ được thu thập và để ở một chỗ thì nó không có ý nghĩa gì cả. Để dữ liệu đó có tác dụng với bạn, thì dữ liệu đó cần phải được phân tích.

Ví dụ: website bán sản phẩm của bạn thu thập dữ liệu của rất nhiều nhiều khách hàng từ địa chỉ email, tên tuổi, sở thích, vị trí, giới tính… Việc tiếp theo, bạn cần phải chỉ ra được: bao nhiêu % người dùng là nam? Sản phẩm thích hợp với người có độ tuổi bao nhiêu? Có sở thích là gì?…

Từ những kết quả phân tích đó thì mới giúp ích cho chiến lược kinh doanh của bạn được.

Những số liệu mà bạn rút ra được ở trên là kết quả của quá trình phân tích dữ liệu.

Phân tích dữ liệu là quá trình đánh giá dữ liệu bằng các công cụ phân tích và thống kê để khám phá những thông tin hữu ích và hỗ trợ trong việc ra quyết định kinh doanh.

Có một số phương pháp phân tích dữ liệu bao gồm:

  • Khai thác dữ liệu
  • Phân tích văn bản,
  • Kinh doanh thông minh và trực quan hóa dữ liệu.

Khi mà dữ liệu không chỉ giới hạn trong vài trăm, vài nghìn người mà lên tới hàng triệu, hàng tỷ… thì bắt đầu nảy sinh khái niệm big data.

Vậy big data là gì? mời bạn đọc tiếp.

#Big data là gì?

Với mình, hiểu đơn giản khi data trở lên nhiều không đếm xuể thì là big data (dữ liệu lớn). Đơn giản vậy thôi.

Nhưng theo thuật ngữ chuyên ngành thì bạn sẽ hiểu đầy đủ hơn big data là gì.

Big Data hiểu nôm na là các tập dữ liệu cực lớn có thể được phân tích tính toán để cho thấy các mô hình, xu hướng, mối liên kết, đặc biệt liên quan đến hành vi và tương tác của con người.

Big data thường bao gồm các tập dữ liệu với kích thước vượt quá khả năng của các công cụ phần mềm thường được sử dụng để thu thập, quản lý, quản lý và xử lý dữ liệu trong khoảng thời gian đã chấp nhận được.

Kích thước của big data là mục tiêu di chuyển liên tục, tính đến năm 2012, từ vài chục terabyte đến nhiều zettabyte dữ liệu (khoảng 1 tỷ terabyte).

#Tìm hiểu về Big data

Mặc dù khái niệm big data là tương đối mới, nhưng nguồn gốc của big data bắt đầu từ những năm 1960 và 70. Khi thế giới dữ liệu chỉ mới bắt đầu với các trung tâm dữ liệu đầu tiên và sự phát triển của cơ sở dữ liệu SQL (relational database).

Khoảng năm 2005, người ta bắt đầu nhận ra số lượng người dùng tạo ra thông qua Facebook, YouTube và các dịch vụ trực tuyến khác là vô cùng lớn.

Hadoop (một framework open source được tạo riêng để lưu trữ và phân tích big data) đã được phát triển cùng năm đó. NoSQL cũng bắt đầu trở nên phổ biến trong thời gian này.

Sự phát triển của các framework, như Hadoop (và gần đây là Spark) rất cần thiết cho sự phát triển của big data. Vì chúng làm cho big data dễ dàng hoạt động hơn và lưu trữ rẻ hơn.

Trong những năm trở lại đây, khối lượng big data đã tăng vọt. Người dùng vẫn đang tạo ra một lượng dữ liệu khổng lồ. Và một điều cực thú vị là những dữ liệu đó không chỉ do con người tạo ra, mà chủ yếu là do máy móc tạo ra.

Với sự ra đời của Internet of Things (IoT), nhiều đối tượng và thiết bị được kết nối với internet, thu thập dữ liệu về mô hình sử dụng của khách hàng và hiệu suất sản phẩm. Sự xuất hiện của IoT đã tạo ra nhiều dữ liệu hơn.

#3 đặc điểm chính (3V) của Big data

Big data thường đặc trưng với ba V:

  • Volume: Khối lượng dữ liệu
  • Variety: Sự đa dạng của dữ liệu
  • Velocity: Tốc độ xử lý và phân tích dữ liệu

Đặc điểm của dữ liệu lớn

1. Volume

Các tổ chức thu thập dữ liệu từ nhiều nguồn khác nhau, bao gồm các giao dịch kinh doanh, phương tiện truyền thông xã hội và thông tin từ cảm biến hoặc dữ liệu từ máy sang máy.

Trước đây, việc lưu trữ nó sẽ là một vấn đề – nhưng các công nghệ mới (như Hadoop) đã giảm bớt gánh nặng này.

2. Velocity

Luồng dữ liệu với tốc độ chưa từng thấy và phải được xử lý kịp thời. Thẻ RFID, cảm biến và đo sáng thông minh đang thúc đẩy nhu cầu xử lý các luồng dữ liệu trong thời gian gần như realtime.

3. Variety

Dữ liệu có ở tất cả các loại định dạng – từ có cấu trúc, dữ liệu số trong cơ sở dữ liệu truyền thống đến tài liệu văn bản phi cấu trúc, email, video, âm thanh, dữ liệu đánh dấu chứng khoán và giao dịch tài chính.

#Các công nghệ đặc biệt dành riêng cho Big data

Big data có giá trị to lớn và đòi hỏi một cuộc cách mạng trong lưu trữ và xử lý dữ liệu.

Tuy nhiên, các cơ sở dữ liệu quan hệ truyền thống như Oracle, SQL Server, DB2… không thể xử lý việc này.

Vì vậy, cần phải có những công nghệ chuyên biệt cho big data. Công nghệ mới này được thiết kế để phân tích, xử lý và trích xuất thông tin từ một bộ dữ liệu cực kỳ lớn và phức tạp. Điều mà những phần mềm quản trị cơ sở dữ liệu truyền thống không bao giờ làm được.

Chúng ta cần công nghệ xử lý big data để phân tích lượng dữ liệu thời gian thực khổng lồ này và đưa ra kết luận và dự đoán để giảm thiểu rủi ro trong tương lai.

Công nghệ Big data chủ yếu được phân thành hai loại:

  • Công nghệ lưu trữ và tạo data.
  • Công nghệ phân tích big data (Big data analysis)

các công nghệ phục vụ big data

Thứ nhất, Big data là tất cả về dữ liệu thông thường hàng ngày mà chúng ta tạo ra. Đây có thể là giao dịch trực tuyến, phương tiện truyền thông xã hội hoặc dữ liệu từ một Tổ chức cụ thể, v.v.

Bạn thậm chí có thể coi đây là một loại dữ liệu thô được sử dụng để cung cấp cho công nghệ phân tích big data.

Ví dụ ứng dụng của Big data

Một vài ứng dụng về dữ liệu được tạo cho big data:

  • Đặt vé trực tuyến
  • Mua sắm trực tuyến
  • Dữ liệu từ các trang mạng xã hội như Facebook, Instagram, các ứng dụng
  • Các chi tiết nhân viên của một Công ty đa quốc gia nào đó.

Phân tích big data giống như phiên bản nâng cao của phân tích dữ liệu. Phân tích big data là nơi phần hiệu suất thực tế xuất hiện và các quyết định kinh doanh thời gian thực quan trọng được đưa ra bằng cách phân tích Dữ liệu lớn hoạt động.

Một số ví dụ ứng dụng của việc phân tích big data:

  • Tiếp thị chứng khoán
  • Thực hiện các nhiệm vụ không gian trong đó mỗi một thông tin là rất quan trọng.
  • Thông tin dự báo thời tiết.
  • Lĩnh vực y tế nơi một tình trạng sức khỏe bệnh nhân cụ thể có thể được theo dõi.

Các công nghệ big data hàng đầu được chia thành 4 lĩnh vực được phân loại như sau:

  • Lưu trữ dữ liệu
  • Khai thác dữ liệu
  • Phân tích dữ liệu
  • Trực quan hóa dữ liệu

#Học big data cần gì?

học big data cần gì

Cách học big data như thế nào và bắt đầu từ đâu? Học Big Data cần một quá trình với các bước cơ bản như sau:

1. Bắt đầu bằng cách học một ngôn ngữ lập trình

Nếu bạn muốn giải quyết các bài toán big data, bạn nên biết Python/Java. Nếu bạn không biết cả hai thứ này thì lời khuyên là bắt đầu với Python.

Sau khi bạn đã nắm được những kiến thức của bản của một ngôn ngữ lập trình như Python, Java. Bước tiếp theo là tìm hiểu các công nghệ sử dụng cho Big data

>> Tip dành cho bạn: Kinh nghiệm học một ngôn ngữ lập trình hiệu quả

Bạn cần tìm hiểu về một số Công nghệ dữ liệu lớn như Hadoop/Spark. Bạn nên bắt đầu học về Hadoop vì nó có thể cung cấp cho bạn nhiều nền tảng hơn về Mô hình lập trình MapReduce.

2. Tìm hiểu những kĩ thuật cơ bản Big data

MapReduce là một kỹ thuật xử lý và mô hình chương trình cho tính toán phân tán dựa trên Java.

Thuật toán MapReduce chứa hai nhiệm vụ quan trọng là

  • Map (Bản đồ)
  • Giảm (Reduce).

Map lấy một tập hợp dữ liệu và chuyển đổi nó thành một tập hợp dữ liệu khác, trong đó các phần tử riêng lẻ được chia thành các bộ dữ liệu (cặp khóa / giá trị).

Thứ hai, giảm tác vụ, lấy đầu ra từ bản đồ làm đầu vào và kết hợp các bộ dữ liệu đó thành một bộ dữ liệu nhỏ hơn.

Như trình tự của tên MapReduce ngụ ý, tác vụ rút gọn luôn được thực hiện sau công việc bản đồ.

Ưu điểm chính của MapReduce là dễ dàng mở rộng quy mô xử lý dữ liệu trên nhiều nút tính toán. Theo mô hình MapReduce, các nguyên hàm xử lý dữ liệu được gọi là trình ánh xạ và trình khử. Việc phân tách một ứng dụng xử lý dữ liệu thành các trình ánh xạ và bộ giảm tốc đôi khi không cần thiết.

Nhưng, một khi chúng ta viết một ứng dụng ở dạng MapReduce, việc mở rộng ứng dụng để chạy trên hàng trăm, hàng ngàn hoặc thậm chí hàng chục nghìn máy trong một cụm chỉ là một sự thay đổi cấu hình.

Khả năng mở rộng đơn giản này là điều đã thu hút nhiều lập trình viên sử dụng mô hình MapReduce.

3. Sơ lược về mô hình lập trình MapReduce

Nói chung, mô hình MapReduce dựa trên việc gửi máy tính đến nơi chứa dữ liệu.

Chương trình MapReduce thực thi trong ba giai đoạn, đó là giai đoạn bản đồ, giai đoạn xáo trộn và giai đoạn giảm.

  • Giai đoạn Map – Công việc ánh xạ hoặc ánh xạ là xử lý dữ liệu đầu vào. Nói chung, dữ liệu đầu vào ở dạng tệp hoặc thư mục và được lưu trữ trong hệ thống tệp Hadoop (HDFS). Các tập tin đầu vào được chuyển đến dòng chức năng ánh xạ theo dòng. Trình ánh xạ xử lý dữ liệu và tạo ra một số lượng nhỏ dữ liệu.
  • Giai đoạn Reduce– Giai đoạn này là sự kết hợp giữa giai đoạn Shuffle và giai đoạn Giảm. Công việc Reducer sườn là xử lý dữ liệu xuất phát từ trình ánh xạ. Sau khi xử lý, nó tạo ra một bộ đầu ra mới, sẽ được lưu trữ trong HDFS.

Trong công việc MapReduce, Hadoop gửi Map và Giảm các tác vụ đến các máy chủ phù hợp trong cụm.

Khung quản lý tất cả các chi tiết truyền dữ liệu, chẳng hạn như phát hành tác vụ, xác minh hoàn thành nhiệm vụ và sao chép dữ liệu xung quanh cụm giữa các nút.

Hầu hết các tính toán diễn ra trên các nút có dữ liệu trên các đĩa cục bộ làm giảm lưu lượng mạng.

Sau khi hoàn thành các nhiệm vụ nhất định, cụm thu thập và giảm dữ liệu để tạo thành một kết quả phù hợp và gửi lại cho máy chủ Hadoop.

#Tạm kết

Tóm lại, Big data là đang là một cơ hội lớn cho cả doanh nghiệp và người đi làm. Doanh nghiệp sở hữu big data là sở hữu nguồn tài nguyên còn quý hơn cả dầu mỏ.

Còn với chúng ta, nếu sở hữu những kỹ năng về Big data là đã có một tấm vé nhận lương rất cao.

Mình hi vọng, qua bài viết này, các bạn đã hiểu big data là gì, biết được những kiến thức cần chuẩn bị để trở thành một kỹ sư Big data.

Hẹn gặp lại các bạn ở bài viết sau nhé, đừng quên like và chia sẻ cho bạn bè.

Dịch vụ phát triển ứng dụng mobile giá rẻ - chất lượng
Bài trướcNhững câu hỏi phỏng vấn lập trình viên hay gặp nhất
Bài tiếp theoGitlab CI – dịch vụ git thay thế Github hoàn hảo
Tên đầy đủ là Dương Anh Sơn. Tốt nghiệp ĐH Bách Khoa Hà Nội. Mình bắt đầu nghiệp coder khi mà ra trường chẳng xin được việc đúng chuyên ngành. Mình tin rằng chỉ có chia sẻ kiến thức mới là cách học tập nhanh nhất. Các bạn góp ý bài viết của mình bằng cách comment bên dưới nhé !

1
Bình luận. Cùng nhau thảo luận nhé!

avatar
  Theo dõi bình luận  
Mới nhất Cũ nhất Nhiều voted nhất
Thông báo
Nguyen Tri Thanh
Guest
Nguyen Tri Thanh

Hay