So sánh ngôn ngữ CSDL và ngôn ngữ lập trình bậc cao

Trường THCS – THPT Huỳnh Văn Nghệ Kiểm tra 1 tiếtHọ và tên:………………………………. Thời gian 45 phútLớp………… Môn tin học 12Đề 01A. Trắc nghiệm( 3 đ )Câu 1. Ngôn ngữ định nghĩa dữ liệu bao gồm các lệnh cho phépa. Mô tả các đối tượng được lưu trữ trong CSDLb. Đảm bảo tính độc lập dữ liệuc. Khai báo kiểu, cấu trúc, các ràng buộc trên dữ liệu của CSDL*d. Khai báo kiểu dữ liệu của CSDLCâu 2. Em hiểu như thế nào về cụm từ “Hệ quản trị cơ sở dữ liệu” ?a. Hệ quản trị cơ sở dữ liệu là một loại thiết bị hỗ trợ màn hình máy tínhb. Hệ quản trị cơ sở dữ liệu là một loại dữ liệu được lưu trữ trên máy tínhc. Hệ quản trị cơ sở dữ liệu là một loại phần mềm máy tính*d. Hệ quản trị cơ sở dữ liệu là một loại thiết bị hỗ trợ mạng máy tínhCâu 3. Thành phần chính của hệ QTCSDL:a. Bộ quản lý tập tin và bộ xử lí truy vấn b. Bộ truy xuất dữ liệu và bộ bộ quản lý tập tin c. Bộ quản lý tập tin và bộ truy xuất dữ liệu d. Bộ xử lý truy vấn và bộ quản lý dữ *Câu 4. Chức năng nào dưới đây không phải là chức năng của hệ QTCSDL?a. Cung cấp môi trường khai thác thông tin của CSDL b. Cung cấp môi trường lưu trữ CSDLc. Cung cấp thiết bị nhớ để lưu trữ CSDL* d. Cung cấp môi trường tạo lập CSDLCâu 5. Một CSDL quản lí điểm của học sinh cho phép giáo viên được chỉnh sửa điểm của học sinh, học sinh chỉ được phép xem kết quả điểm của mình. Nhưng trong quá trình đưa vào khai thác, học sinh A khi xem điểm thấy điểm môn tin của mình sai so với thực tế vì vậy học sinh A đã sửa lại cho đúng. Điểm sửa đó đã được cập nhật vào CSDL. Quy tắc nào đã không được tuân thủ khi thiết kế CSDL trên?a. Tính không dư thừa dữ liệu b. Tính cấu trúcb. Tính an toàn và bảo mật thông tin* d. Tính độc lậpCâu 6. Ngôn ngữ để người dùng diễn tả yêu cầu cập nhật hay khai thác thông tin được gọi là:a. Ngôn ngữ CSDL b. Ngôn ngữ lập trình bậc caoc. Ngôn ngữ định nghĩa dữ liệu d. Ngôn ngữ khai thác dữ liệu*Câu 7. Một cơ sở dữ liệu là một tập hợp các dữ liệu có liên quan với nhau, được lưu trữ trên ? a. Rom b. CPU c. Ram d. Bộ nhớ ngoài*Câu 8. Các thành phần của hệ CSDL gồm:a. CSDL, hệ QTCSDL* b. CSDL, hệ QTCSDL, con ngườic. Con người, CSDL, phần mềm ứng dụng d.Con người, phần mềm ứng dụng, hệ Câu 9. Người nào đã tạo ra các phần mềm ứng dụng đáp ứng nhu cầu khai thác thông tin từ CSDLa. Người lập trình ứng dụng* b. Người dùng cuối c. Người QTCSDL d. Cả ba người trênCâu 10. Hệ QTCSDL trực tiếp thực hiện những công việc nào trong các việc được nêu dưới đây?a. Xoá tệp khi có yêu cầu của người dùng.b. Tiếp nhận yêu cầu của người dùng, biến đổi và chuyển giao yêu cầu đó cho hệ điều hành ở dạng thích hợp.*c. Xác lập quan hệ giữa yêu cầu tìm kiếm, tra cứu dữ liệu lưu ở bộ nhớ ngoài.d. Cả ba đáp án trên.Câu 11. Nếu so sánh với một ngôn ngữ lập trình như Pascal thì ngôn ngữ địng nghĩa dữ liệu tương đương với thành phần nào?a. Các công cụ khai báo dữ liệu* b. Các chỉ thị nhập dữ liệuc. Các chỉ thị đóng/ mở tệp d. Cả ba thành phần trênCâu 12. Để thiết kế một CSDL cần phải tiếp cận theo trình tự nào?a. Mức khung nhìn → mức khái niệm → mức vật lý*b. Mức khung nhìn → mức vật lý → mức khái niệmc. Mức vật lý → mức khái niệmn → mức khung nhìnd. Mức khái niệm → mức khung nhìn → mức vật lýChý ý: Mỗi câu đúng được 0.25 điểmB. Phần tự luận( 7 điểm )Câu 1. Nêu khái niệm CSDL. (2đ)Câu 2. Hãy trình bày các công việc thường gặp khai xử lý thông tin của một tổ chức.(3 đ)Câu 3. Hãy mô tả sơ lược về hoạt động của một hệ QTCSDL.(2 đ)Duyệt của tổ chuyên mônTrường THCS – THPT Huỳnh Văn Nghệ Kiểm tra 1 tiếtHọ và tên:………………………………. Thời gian 45 phútLớp………… Môn tin học 12Đề 02A. Trắc nghiệm( 3 đ )Câu 1. Hãy nêu các ưu điểm khi sử dụng CSDL trên máy tính điện tử:a. Gọn, nhanh chóng b.Gọn, thời sự (Cập nhật đầy đủ, kịp thời...)c. Gọn, thời sự, nhanh chóng d. Gọn, thời sự, nhanh chóng, nhiều nguời có thể sử dụng chung CSDL*Câu 2. Hoạt động nào sau đây có sử dụng CSDL a. Bán hàng b. Bán vé máy bayc. Quản lý học sinh trong nhà trường d. Tất cả đều đúng*Câu 3. Người A dùng thẻ ATM của một ngân hàng để thực hiện việc chuyển tiền từ tài khoản của mình sang tài khoản của người B. trong khi giao dịch, máy báo có sự cố, sau đó người A kiểm tra tài khoản thấy số tiền bị trừ 500 ngàn đồng và trong khi đó tài khoản của người B không nhận được 500 ngàn đồng. Vậy CSDL đó đã vi phạm quy tắc nào sau đây:a. Tính toàn vẹn b. Tính nhất quán* c. Tính độc lập d. Tính an toàn và bảo mật thông tinCâu 4. Chức năng nào dưới đây không phải là chức năng của hệ QTCSDL?a. Cung cấp môi trường khai thác thông tin của CSDL b. Cung cấp môi trường lưu trữ CSDLc. Cung cấp thiết bị nhớ để lưu trữ CSDL* d. Cung cấp môi trường tạo lập CSDLCâu 5. Người nào có vai trò quan trọng trong vấn đề phân quyền hạn truy cập sử dụng CSDL trên mạng máy tính.a. Người dùng cuối b. Người lập trình c. Nguời quản trị CSDL* d. Cả ba người trênCâu 6. Ngôn ngữ để người dùng diễn tả yêu cầu cập nhật hay khai thác thông tin được gọi là:a. Ngôn ngữ CSDL b. Ngôn ngữ lập trình bậc caoc. Ngôn ngữ định nghĩa dữ liệu d. Ngôn ngữ khai thác dữ liệu*Câu 7. Hãy chọn câu mô tả sự tương tác giữa các thành phần trong một hệ CSDL:Cho biết: Con người1, Cơ sở dữ liệu 2, Hệ QTCSDL 3, Phần mềm ứng dụng 4a. 2134 b. 1342 c. 1324 d.1432*Câu 8. Hệ QTCSDL gồm mấy thành phần chính?a. 3 b. 2* c. 1 d. 4Câu 9. Hai bản thiết kế CSDL quản lý đoàn viên khác nhau duy nhất ở một trường; bản thiêt kế thứ nhất lưu tuổi Đoàn, bản thiết kế thứ hai lưu ngày vào Đoàn.Hãy cho biết ý kiến nào đúng:a. Thiết kế thứ nhất tốt hơn vì xác định được tuổi Đoàn mà không cần tính toán.b. Thiết kế thứ hai tốt hơn vì không cập nhật thông tin hằng năm về tuổi Đoàn.*c. Cả hai bản thiết kế tốt như nhau vì không vi phạm các yêu cầu cơ bản của CSDL.d. Cả ba đáp án trên.Câu 10. Hệ QTCSDL trực tiếp thực hiện những công việc nào trong các việc được nêu dưới đây?a. Xoá tệp khi có yêu cầu của người dùng.b. Tiếp nhận yêu cầu của người dùng, biến đổi và chuyển giao yêu cầu đó cho hệ điều hành ở dạng thích hợp.*c. Xác lập quan hệ giữa yêu cầu tìm kiếm, tra cứu dữ liệu lưu ở bộ nhớ ngoài.d. Cả ba đáp án trên.Câu 11. Nếu so sánh với một ngôn ngữ lập trình như Pascal thì ngôn ngữ địng nghĩa dữ liệu tương đương với thành phần nào?a. Các công cụ khai báo dữ liệu* b. Các chỉ thị nhập dữ liệuc. Các chỉ thị đóng/ mở tệp d. Cả ba thành phần trênCâu 12. Một CSDL quản lí điểm của học sinh cho phép giáo viên được chỉnh sửa điểm của học sinh, học sinh chỉ được phép xem kết quả điểm của mình. Nhưng trong quá trình đưa vào khai thác, học sinh A khi xem điểm thấy điểm môn tin của mình sai so với thực tế vì vậy học sinh A đã sửa lại cho đúng. Điểm sửa đó đã được cập nhật vào CSDL. Quy tắc nào đã không được tuân thủ khi thiết kế CSDL trên?a. Tính không dư thừa dữ liệu b. Tính cấu trúcb. Tính an toàn và bảo mật thông tin* d. Tính độc lậpNgười nào có vai trò quan trọng trong vấn đề Chý ý: Mỗi câu đúng được 0.25 điểmB. Phần tự luận( 7 điểm )Câu 1. Nêu khái niệm hệ QTCSDL. (2đ)Duyệt của tổ chuyên mônCâu 2. Hãy trình bày các yêu cầu cơ bản của hệ CSDL.(3 đ)Câu 3. Hãy ví dụ minh hoạ cho vài yêu cầu cơ bản đối với hệ CSDL.(2 đ)

Khoa học dữ liệu đã trở thành một trong những công nghệ phổ biến nhất của Thế kỷ 21. Với nhu cầu nhân lực cao trong ngành này, đòi hỏi nhiều nhà khoa học dữ liệu trang bị những kỹ năng cần thiết.

Bên cạnh các kỹ năng toán học, nhà khoa học dữ liệu cần có chuyên môn lập trình. Nhưng trước khi có được kiến thức chuyên môn, một nhà khoa học dữ liệu đầy tham vọng xác định được những loại ngôn ngữ lập trình cần thiết cho công việc.

Bài viết dưới đây cung cấp cho người đọc một số ngôn ngữ lập trình cần thiết để trở thành một nhà khoa học dữ liệu.

1. Python 

Python là ngôn ngữ lập trình hướng tới đối tượng bậc cao, dùng để phát triển website và nhiều ứng dụng khác nhau. Nó dễ dàng để tìm hiểu và đang nổi lên như một trong những ngôn ngữ lập trình nhập môn tốt nhất cho người lần đầu tiếp xúc với ngôn ngữ lập trình. 

So sánh ngôn ngữ CSDL và ngôn ngữ lập trình bậc cao

Python là ngôn ngữ lập trình hướng tới đối tượng bậc cao

Python có cấu trúc dữ liệu cấp cao mạnh mẽ và cách tiếp cận đơn giản nhưng hiệu quả đối với lập trình hướng đối tượng. Cú pháp lệnh của Python là điểm cộng vô cùng lớn vì sự rõ ràng, dễ hiểu và cách gõ linh động làm cho nó nhanh chóng trở thành một ngôn ngữ lý tưởng để viết script và phát triển ứng dụng trong nhiều lĩnh vực, ở hầu hết các nền tảng. 

2. R

R là một công cụ rất mạnh cho học máy, thống kê và phân tích dữ liệu. Do đó, nó rất phổ biến trong số các nhà thống kê. Nếu bạn muốn đi sâu vào phân tích dữ liệu và thống kê, thì R là ngôn ngữ dành cho bạn.

Hạn chế duy nhất của R là nó không phải là ngôn ngữ lập trình có mục đích chung, điều đó có nghĩa là nó không được sử dụng cho các nhiệm vụ khác ngoài lập trình thống kê.

So sánh ngôn ngữ CSDL và ngôn ngữ lập trình bậc cao

R là một công cụ rất mạnh cho học máy, thống kê và phân tích dữ liệu

Với hơn 10.000 gói trong kho lưu trữ nguồn mở của CRAN, R phục vụ cho tất cả các ứng dụng thống kê. Một sự phù hợp mạnh mẽ khác của R là khả năng xử lý đại số tuyến tính phức tạp. Điều này làm cho R lý tưởng cho không chỉ phân tích thống kê mà còn cho các mạng thần kinh.

Ngoài ra còn có các gói studio khác như Tidyverse và Sparklyr cung cấp giao diện Apache Spark cho các môi trường dựa trên R. R như RStudio đã giúp việc kết nối cơ sở dữ liệu dễ dàng hơn.

Nó có một gói tích hợp có tên là “RMyQuery”, cung cấp khả năng kết nối tự nhiên của R với MySQL. Tất cả các tính năng này làm cho R trở thành một lựa chọn lý tưởng cho các nhà khoa học dữ liệu.

3. SQL

SQL là kỹ năng quan trọng nhất mà nhà khoa học dữ liệu phải có. SQL hoặc ‘Structured Query Language’ là ngôn ngữ truy vấn dữ liệu từ các nguồn dữ liệu có tổ chức.

Trong Khoa học dữ liệu, SQL là để cập nhật, truy vấn và thao tác cơ sở dữ liệu. Là một nhà khoa học dữ liệu, biết cách lấy dữ liệu là rất quan trọng trong công việc của họ.

SQL là ngôn ngữ chuẩn cho hệ cơ sở dữ liệu quan hệ. Tất cả các hệ thống quản lý cơ sở dữ liệu quan hệ (RDMS) như MySQL, MS Access, Oracle, Sybase, Informix, Postgres và SQL Server đều sử dụng SQL làm ngôn ngữ cơ sở dữ liệu chuẩn.

  • Xem thêm: 10 kỹ năng cần thiết để trở thành Data Scientist

4. Scala

Scala là một phần mở rộng của ngôn ngữ lập trình Java hoạt động trên JVM. Nó là ngôn ngữ lập trình có mục đích chung có các tính năng của công nghệ hướng đối tượng cũng như ngôn ngữ lập trình chức năng.

Bạn có thể sử dụng Scala kết hợp với Spark, một nền tảng Big Data. Điều này làm cho Scala trở thành ngôn ngữ lập trình lý tưởng khi xử lý khối lượng dữ liệu lớn.

Một tính năng quan trọng nhất của Scala là khả năng hỗ trợ xử lý song song trên quy mô lớn. Tuy nhiên, ngôn ngữ lập trình Scala có lộ trình học tập phức tạp và chúng tôi không khuyên dùng nó cho người mới bắt đầu.

Cuối cùng, nếu sở thích của bạn là một nhà khoa học dữ liệu đang xử lý một khối lượng dữ liệu lớn, thì Scala + Spark là lựa chọn tốt nhất của bạn.

5. Julia

Julia là một ngôn ngữ lập trình được phát triển gần đây, phù hợp nhất cho máy tính kỹ thuật. Julia phổ biến vì nó đơn giản như Python và có hiệu suất nhanh như ngôn ngữ C. Điều này đã làm cho Julia trở thành một ngôn ngữ lý tưởng cho các lĩnh vực đòi hỏi các hoạt động toán học phức tạp.

Julia ra đời và nhanh chóng trở thành một trong những ngôn ngữ với khả năng vận hành thần tốc trên các tập dữ liệu lớn. Tóm lại, Julia giải quyết bất kỳ lỗi thường gặp nào mà các ngôn ngữ lập trình khác không được thiết kế đặc biệt cho khoa học dữ liệu hay mắc phải.

6. SAS

Giống như R, bạn có thể sử dụng SAS để phân tích thống kê. Sự khác biệt duy nhất là SAS không phải là mã nguồn mở như R.

Tuy nhiên, nó là một trong những ngôn ngữ lâu đời nhất được thiết kế để thống kê. Các nhà phát triển ngôn ngữ SAS đã phát triển bộ phần mềm của riêng họ để phân tích nâng cao, mô hình dự đoán và thông minh kinh doanh.

SAS có độ tin cậy cao và đã được các chuyên gia và nhà phân tích đánh giá cao. Các công ty đang tìm kiếm một nền tảng ổn định và an toàn, SAS là một ngôn ngữ lập trình hoàn toàn phù hợp với yêu cầu của họ.

Mặc dù SAS có thể là một phần mềm nguồn đóng, nó cung cấp một loạt các thư viện và gói để phân tích thống kê và học máy.

So sánh ngôn ngữ CSDL và ngôn ngữ lập trình bậc cao

SAS là ngôn ngữ lập trình để phân tích thống kê

SAS có một hệ thống hỗ trợ tuyệt vời cho công ty bạn. Tuy nhiên, SAS bị tụt lại phía sau với sự ra đời của phần mềm nguồn mở và tiên tiến. Điều đó tạo nên sự khó khăn và tốn chi phí khi kết hợp các công cụ và tính năng tiên tiến hơn trong SAS mà các ngôn ngữ lập trình hiện đại cung cấp.

Kết luận

Học 6 ngôn ngữ lập trình này sẽ giúp bạn có chỗ đứng nhất định trong lĩnh vực khoa học dữ liệu. Mặc dù không có thứ tự ưu tiên cụ thể của từng ngôn ngữ lập trình này, thế nhưng tôi nghĩ có lẽ bạn sẽ muốn tìm hiểu nhiều hơn một ngôn ngữ.

Điều này giúp vốn hiểu biết của bạn trở nên linh hoạt hơn và trở thành một nhà khoa học dữ liệu thực thụ.

  • Xem ngay 3 nhóm kiến thức cơ bản nào mọi Data Scientist cần có

Nguồn: data-flair.training

Cập nhật kiến thức mới

Nhập email để cập nhật nhanh nhất thông tin, kiến thức từ Viện ISB