Trang 15 BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TYHình 2 1 Lộ trình thực tập Data Engineer2.2.2 SQLChủ đề tìm hiểu về SQL kéo dài 4 ngày, gồm các phần
GIỚI THIỆU CHUNG ĐƠN VỊ THỰC TẬP
Thông tin về đơn vị thực tập
Tập đoàn Bưu chính Viễn thông Việt Nam (VNPT) được thành lập ngày
Tập đoàn Bưu chính Viễn thông Việt Nam (VNPT) được thành lập vào ngày 26 tháng 3 năm 1995, là một doanh nghiệp nhà nước hàng đầu trong lĩnh vực đầu tư, sản xuất và kinh doanh Viễn thông và Công nghệ thông tin tại Việt Nam Với vị thế là tập đoàn kinh tế nhà nước đứng thứ 2 về lĩnh vực Bưu chính, Viễn thông, VNPT đóng vai trò quan trọng trong việc phát triển và cung cấp dịch vụ viễn thông tại Việt Nam.
Các lĩnh vực hoạt động chủ yếu:
Dịch vụ thoại: điện thoại cố định PSTN, di động VinaPhone
Dịch vụ truyền dữ liệu: MegaVNN, FiberVNN
Dịch vụ truyền hình: MyTV
Dịch vụ vệ tinh: VINASAT-1, VINASAT-2
Dịch vụ giải pháp: thiết kế hạ tầng mạng, tích hợp hệ thống
Dịch vụ tài chính số: Ví điện tử VNPT Money, Mobile Money
Hệ sinh thái số: DigiLife, MyVNPT
Các đơn vị thành viên của VNPT bao gồm:
Tổng công ty dịch vụ viễn thông (VNPT-VinaPhone)
Tổng công ty hạ tầng mạng (VNPT-Net)
Tổng công ty truyền thông (VNPT-Media)
Công ty Công nghệ thông tin VNPT (VNPT-IT)
Hình 1 1 Logo và khẩu hiệu VNPT
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ ĐƠN VỊ THỰC TẬP
Tổng công ty truyền thông (VNPT-Media): Địa chỉ: 57A Huỳnh Thúc Kháng, phường Láng Hạ, quận Đống Đa, TP.
VNPT hoạt động trong 2 lĩnh vực kinh doanh cốt lõi gồm: Viễn thông và Công nghệ thông tin
Hình 1 2 Mô hình tổ chức VNPT-Media
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ ĐƠN VỊ THỰC TẬP
Thông tin về công ty sinh viên tham gia thực tập
Chúng tôi cung cấp các chương trình đào tạo chuyên sâu cho fresher trong nhiều lĩnh vực công nghệ thông tin như Net, Java, Python, PHP, Android, IOS, Embedded, Tester, AI, Data Engineer và An toàn thông tin Với thời gian đào tạo linh hoạt từ 3 đến 6 tháng, các chương trình này không chỉ giúp bạn nâng cao kỹ năng mà còn được hỗ trợ tiền lương trong suốt quá trình học tập.
Chương trình thực tập dành cho sinh viên kéo dài 2 tháng với đa dạng vị trí công việc như Net, Java, Python, PHP, Android, IOS, Embedded, Tester, AI, Data Engineer và An toàn thông tin Thông qua chương trình này, sinh viên sẽ được ôn luyện kiến thức chuyên môn, tham gia dự án thực tế và có cơ hội phát triển sự nghiệp khi được tuyển dụng vào vị trí Fresher chính thức.
Hình 1 3 Các chương trình đào tạo của VNPT
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ ĐƠN VỊ THỰC TẬP
Khi tham gia thực tập hay làm việc tại VNPT, các lớp học sẽ có 1 hoặc
Mỗi lớp học được quản lý bởi hai nhân viên hướng dẫn tận tình, sẵn sàng giải đáp mọi thắc mắc của sinh viên về công việc, nội quy và các vấn đề liên quan tại công ty Đội ngũ giảng viên của chúng tôi là những chuyên gia giàu kinh nghiệm, đang làm việc tại VNPT và trực tiếp tham gia các dự án thực tế, giúp truyền đạt kiến thức chuyên sâu và kinh nghiệm thực tế một cách hiệu quả cho học viên.
Chúng tôi cung cấp môi trường học tập hiện đại và đầy đủ tiện nghi, bao gồm văn phòng, nơi làm việc, dịch vụ bảo vệ, nhà ăn và các khu vực giải trí như phòng nghỉ, phòng gym, Bên cạnh đó, chương trình học luôn được cập nhật liên tục, giúp học viên tiếp cận với những công nghệ mới nhất và nâng cao khả năng cạnh tranh trong thị trường lao động.
Học viên sau khi thực tập có thể được tuyển Fresher
Ngoài giờ học chính thức, học viên được thực hành miễn phí, không giới hạn thời gian.
Hỗ trợ cơ sở vật chất, mạng wifi, tài khoản công việc
Hỗ trợ cơ sở vật chất giải trí như bóng bàn, tập gym, phòng nghỉ, …
Hỗ trợ cơ sở vật chất nhà ăn cho công nhân viên.
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY .11
Tiến độ thực hiện công việc
Chủ đề Số ngày thực hiện
5 Viết và trình bày báo cáo giữa kỳ 5 24/7-28/7
8 Lý thuyết xử lý phân tán 5 7/8-11/8
9 Viết và trình bày báo cáo cuối kỳ 5 14/8-18/8
Quá trình thực tập
Khi tham gia chương trình thực tập tại công ty VNPT-Media, sinh viên sẽ bắt đầu với các bài học giới thiệu tổng quan về tập đoàn VNPT và công ty VNPT-Media, cũng như các nội quy cần tuân thủ Tiếp theo, sinh viên sẽ được lựa chọn một trong các định hướng thực tập đa dạng như Net, Java, Python, PHP, Android, IOS, Embedded, Tester, AI, Data Engineer, An toàn thông tin Cuối cùng, sinh viên sẽ được phân bổ về các phòng ban tương ứng và nhận được lộ trình cụ thể để tìm hiểu sâu về lĩnh vực đã chọn.
Em đã lựa chọn định hướng Data Engineer với lộ trình như sau:
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Hình 2 1 Lộ trình thực tập Data Engineer
Chủ đề tìm hiểu về SQL kéo dài 4 ngày, gồm các phần:
Luyện tập viết SQL trên MySQL/Oracle
Link các bài tập SQL đã làm: BT SQL
Trong giao tiếp cơ sở dữ liệu (CSDL) theo phương thức truyền thống, connection pool đóng vai trò quan trọng như một lớp trung gian giữa client và database Nhiệm vụ chính của connection pool là quản lý kết nối và cung cấp chúng cho client khi cần thiết, giúp cải thiện hiệu suất ứng dụng và tối ưu tài nguyên Thay vì tạo một kết nối mới mỗi khi cần truy cập vào cơ sở dữ liệu, connection pool tạo ra một nhóm các kết nối đã được khởi tạo trước để sử dụng lại, từ đó nâng cao hiệu quả và giảm thiểu thời gian chờ.
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Hình 2 2 Mô hình Connection Pool
Ví dụ về giao tiếp CSDL theo phương thức truyền thống: o Kết nối Python với MySQL
Hình 2 3 Kết nối Python với MySQL o Thực hiện câu lệnh Insert
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY o Thực hiện câu lệnh Select
Hình 2 5 Lệnh Select o Thực hiện câu lệnh Update
Hình 2 6 Lệnh Update o Thực hiện câu lệnh Delete
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Chủ đề tìm hiểu về SQL kéo dài 5 ngày, gồm các phần:
NoSQL (Not Only SQL) là một thuật ngữ chỉ các hệ quản trị cơ sở dữ liệu phi quan hệ, không sử dụng ngôn ngữ truy vấn SQL, thường được thiết kế để xử lý dữ liệu phi cấu trúc, không đồng nhất hoặc lớn Ưu điểm của NoSQL bao gồm mô hình dữ liệu linh hoạt, khả năng mở rộng dễ dàng, hiệu suất cao, dễ dàng chia sẻ dữ liệu và hỗ trợ phân tán Về phân loại, NoSQL được chia thành 4 loại chính: Cơ sở dữ liệu hướng cột, Cơ sở dữ liệu hướng tài liệu, Cơ sở dữ liệu key-value và Cơ sở dữ liệu dạng lược đồ.
Giao tiếp với MongoDB là một hệ quản trị cơ sở dữ liệu phi quan hệ (NoSQL) mã nguồn mở được sử dụng nhiều nhất trên thế giới, được thiết kế để lưu trữ dữ liệu dạng Document JSON, cho phép truy vấn nhanh hơn và linh hoạt trong lưu trữ dữ liệu Mô hình tổ chức dữ liệu của MongoDB bao gồm Database, Collection và Document, giúp quản lý và truy xuất dữ liệu một cách hiệu quả.
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Hình 2 9 Mô hình tổ chức dữ liệu MongoDB
Ví dụ về giao tiếp với MongoDB o Khởi tạo kết nối MongoDB
Hình 2 10 Khởi tạo kết nối MongoDB o Câu lệnh Insert
Hình 2 11 Lệnh Insert o Câu lệnh Select
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY o Câu lệnh Update
Hình 2 13 Lệnh Update o Câu lệnh Delete
Giao tiếp với Cassandra là một hệ thống cơ sở dữ liệu phân tán mã nguồn mở, được thiết kế để xử lý dữ liệu lớn và có khả năng mở rộng tuyến tính Cassandra sử dụng mô hình cột và hoạt động trên một cụm máy chủ phân tán, với các mục tiêu chính như khả năng mở rộng, khả năng chịu lỗi, hiệu suất cao và linh hoạt trong việc xử lý dữ liệu Mô hình tổ chức dữ liệu của Cassandra bao gồm Cụm, Nút, Keyspace và Bảng, giúp cho việc quản lý và truy cập dữ liệu trở nên hiệu quả hơn.
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Hình 2 15 Mô hình tổ chức dữ liệu Cassandra
Chủ đề tìm hiểu về Kafka kéo dài 4 ngày, gồm các phần:
Apache Kafka là một hệ thống xử lý, lưu trữ và chuyển tiếp dữ liệu dạng luồng, được thiết kế để xử lý lưu lượng dữ liệu lớn và đạt hiệu suất cao, đồng thời cung cấp tính tin cậy cao và khả năng mở rộng Với khả năng này, Kafka thường được xem như một hệ thống xếp hàng hoặc một hệ thống giao tiếp theo kiểu publish-subscribe, giúp xử lý và truyền tải dữ liệu một cách hiệu quả và đáng tin cậy.
Apache Kafka cho phép các ứng dụng trao đổi dữ liệu thông qua các chủ đề (topic) và tin nhắn (message) tương ứng, cho phép các ứng dụng gửi dữ liệu (producer) tới Kafka và các ứng dụng khác đọc dữ liệu (consumer) từ Kafka Đây là giải pháp lý tưởng cho các hệ thống xử lý dữ liệu lớn, hệ thống phân tán và hệ thống theo thời gian thực (real-time), cũng như các ứng dụng thu thập, xử lý và phân phối dữ liệu từ nhiều nguồn khác nhau.
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Hình 2 16 Mô hình hoạt động Kafka
Message Queue (MQ) là một hệ thống hoặc công nghệ cho phép gửi và nhận các thông điệp giữa các thành phần trong một hệ thống phân tán, hoạt động như một cơ chế giao tiếp bất đồng bộ Điều này có nghĩa là các thành phần không cần phải trực tiếp liên lạc với nhau để trao đổi thông tin, mà thay vào đó sử dụng hàng đợi làm trung gian, giúp tăng cường hiệu suất và giảm tải cho hệ thống.
Viết chương trình ví dụ về Producer và Consumer trong Kafka o Tạo hàm producer
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Hình 2 18 Tạo hàm Producer o Tạo hàm consumer
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY o Kết quả
2.2.5 Viết và trình bày báo cáo giữa kỳ
Nội dung này kéo dài trong 5 ngày, gồm viết báo cáo, viết slide và trình bày trước người hướng dẫn.
Sau khi nghe những nhận xét của người hướng dẫn về bài báo cáo của mình, em đã nhận ra những điểm chưa đúng hay còn thiếu sót và rút ra được nhiều kinh nghiệm quý giá trong việc viết báo cáo và trình bày báo cáo, giúp em hoàn thiện hơn trong tương lai.
Chủ đề tìm hiểu về Big Data kéo dài 2 ngày, gồm các phần:
Big Data là một thuật ngữ chỉ khối lượng lớn và phức tạp của dữ liệu được tạo ra từ nhiều nguồn khác nhau, bao gồm cả dữ liệu cấu trúc và phi cấu trúc Dữ liệu này có thể tồn tại dưới nhiều dạng khác nhau như văn bản, hình ảnh, âm thanh, video, dữ liệu từ mạng xã hội, máy móc, thiết bị cảm biến và nhiều nguồn dữ liệu khác, tạo nên một kho dữ liệu khổng lồ và đa dạng.
Big Data thường được đặc trưng bởi 4 yếu tố chính, bao gồm Volume (Khối lượng), Velocity (Tốc độ), Variety (Đa dạng) và Veracity (Độ chính xác) Khối lượng dữ liệu lớn được tạo ra và tích lũy từ nhiều nguồn khác nhau, trong khi tốc độ tạo và xử lý dữ liệu diễn ra liên tục và nhanh chóng Dữ liệu cũng đa dạng về dạng và định dạng, đòi hỏi phải có phương pháp xử lý và phân tích phù hợp Cuối cùng, độ chính xác và chất lượng của dữ liệu cũng là yếu tố quan trọng, quyết định đến giá trị và độ tin cậy của thông tin thu được từ Big Data.
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Hình 2 21 Bốn 'V' của Big data
Kiến trúc Big Data là một hệ thống phức tạp bao gồm 4 lớp chính, mỗi lớp có một nhiệm vụ quan trọng Lớp thu thập dữ liệu thu thập thông tin từ nhiều nguồn khác nhau, sau đó chuyển đến lớp lưu trữ dữ liệu để được tổ chức và lưu trữ theo một định dạng dễ truy cập và phân tích Tiếp theo, lớp xử lý dữ liệu sẽ làm sạch và chuẩn bị dữ liệu để phân tích, giúp loại bỏ các dữ liệu không cần thiết và tăng cường độ chính xác Cuối cùng, lớp trực quan hóa dữ liệu sẽ tạo ra các biểu đồ và đồ thị để người dùng có thể hiểu và phân tích dữ liệu một cách dễ dàng, giúp dữ liệu trở nên dễ tiếp cận và có giá trị hơn.
Chủ đề tìm hiểu về HDFS kéo dài 3 ngày, gồm các phần:
Hệ thống lưu trữ dữ liệu phân tán HDFS (Hadoop Distributed File System) là một thành phần quan trọng của dự án Apache Hadoop, được thiết kế để lưu trữ và xử lý dữ liệu lớn trên các cụm máy tính có quy mô lớn Với khả năng phân tán cao và chịu lỗi, HDFS cho phép lưu trữ và quản lý dữ liệu một cách hiệu quả, đảm bảo tính sẵn sàng và độ tin cậy của dữ liệu trong môi trường phân tán.
Hệ thống lưu trữ dữ liệu này hoạt động bằng cách chia nhỏ dữ liệu thành các khối và phân tán chúng trên nhiều máy tính trong một cụm Dữ liệu được sao chép và lưu trữ trên nhiều máy tính DataNode để đảm bảo tính toàn vẹn và khả năng chịu lỗi của dữ liệu Đồng thời, máy chủ NameNode đóng vai trò quan trọng trong việc duy trì siêu dữ liệu của toàn bộ hệ thống tệp, bao gồm thông tin về vị trí của từng khối dữ liệu trên các DataNode, giúp đảm bảo tính toàn vẹn và dễ dàng truy cập dữ liệu.
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
BÁO CÁO THỰC TẬP TỐT NGHIỆP CHƯƠNG 2: NỘI DUNG CÔNG VIỆC THỰC TẬP TẠI CÔNG TY
Kiến trúc HDFS bao gồm ba thành phần chính: NameNode, DataNode và Client NameNode đóng vai trò trung tâm, quản lý siêu dữ liệu của hệ thống tệp, bao gồm thông tin về cấu trúc thư mục, vị trí vật lý của các khối dữ liệu và các thông tin liên quan khác DataNode chịu trách nhiệm lưu trữ các khối dữ liệu và thực hiện các hoạt động đọc/ghi dữ liệu dựa trên yêu cầu từ Client hoặc từ NameNode Trong khi đó, Client là ứng dụng hoặc công cụ sử dụng HDFS để truy cập và thao tác dữ liệu, cung cấp giao diện cho người dùng hoặc ứng dụng để truy xuất và tương tác với dữ liệu trong HDFS.