Ngân hàng đề — Microsoft Azure Data Fundamentals

Tìm thấy 328 câu.

Câu 301
A bank needs to ensure that after an account transfer transaction completes, the revised account balances persists even if the database system hosting the transaction becomes temporarily unavailable.

Of which ACID semantic is this an example?
  1. A durability
  2. B isolation
  3. C atomicity
  4. D consistency
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi mô tả một tình huống thực tế trong hệ thống ngân hàng: Sau khi một giao dịch chuyển khoản (account transfer transaction) hoàn tất (completes), số dư tài khoản đã được cập nhật (revised account balances) phải được lưu trữ một cách bền vững (persists), ngay cả khi hệ thống cơ sở dữ liệu (database system) tạm thời không khả dụng (temporarily unavailable).

🛠️ Mục tiêu chính: Xác định thuộc tính ACID nào trong cơ sở dữ liệu đảm bảo tính bền vững của dữ liệu sau khi giao dịch commit, đặc biệt trong môi trường cloud như AWS (ví dụ: Amazon RDS hỗ trợ ACID đầy đủ cho các engine như MySQL, PostgreSQL). Đây là khái niệm cốt lõi của ACID properties (Atomicity, Consistency, Isolation, Durability), được áp dụng rộng rãi trong các dịch vụ database của AWS đến năm 2026, đảm bảo tính toàn vẹn dữ liệu cho ứng dụng tài chính cao rủi ro.

✅ Đáp án đúng: durability

Lý do lựa chọn:
Thuộc tính durability (bền vững) chính là ví dụ điển hình ở đây! ✅ Sau khi giao dịch được commit (hoàn tất), tất cả thay đổi dữ liệu phải được lưu trữ vĩnh viễn trên đĩa (non-volatile storage), ngay cả khi hệ thống database gặp sự cố tạm thời như crash, mất điện hoặc unavailable. Trong AWS, các dịch vụ như Amazon RDS hoặc Aurora sử dụng Write-Ahead Logging (WAL) và replication để đảm bảo durability, giúp dữ liệu không bị mất ngay cả sau downtime. Điều này rất quan trọng cho ngân hàng để tránh mất mát số dư sau chuyển khoản.

📋 Giải thích tất cả các phương án (đúng và sai)

  • ✅ durability
    🟢 Đúng: Như đã giải thích, durability đảm bảo dữ liệu sau commit persists vĩnh viễn, chống lại sự cố hệ thống tạm thời. AWS RDS Multi-AZ deployment tăng cường durability lên 99.99% availability (dữ liệu 2026).

  • ❌ isolation
    🔴 Sai: Isolation (cách ly) chỉ đảm bảo các giao dịch chạy đồng thời không ảnh hưởng lẫn nhau (như tránh dirty read). Không liên quan đến việc dữ liệu persists sau unavailable.

  • ❌ atomicity
    🔴 Sai: Atomicity (nguyên tử) đảm bảo giao dịch toàn bộ thành công hoặc toàn bộ thất bại (all-or-nothing), không phải về việc lưu trữ bền vững sau hoàn tất.

  • ❌ consistency
    🔴 Sai: Consistency (tính nhất quán) yêu cầu dữ liệu luôn ở trạng thái hợp lệ theo rules (constraints, triggers). Không đảm bảo persists qua downtime.

📘 Tài liệu tham khảo

  • AWS Documentation: Amazon RDS ACID Compliance (cập nhật 2026: Hỗ trợ đầy đủ ACID cho Aurora Serverless v3).
  • AWS Well-Architected Framework: Reliability Pillar – Durability in Databases (whitepaper 2025).
  • Oracle SQL Standard (nguồn gốc ACID): Durability definition (áp dụng chung cho AWS engines).

Hy vọng phân tích này giúp bạn nắm vững ACID trong Azure/AWS! 🚀 Nếu cần thêm ví dụ thực hành, hãy hỏi nhé!

Câu 302
Which statement is an example of Data Manipulation Language (DML)?
  1. A INSERT
  2. B ALTER
  3. C DROP
  4. D CREATE
Xem giải thích

🧩 Phân tích chi tiết câu hỏi

Câu hỏi: "Which statement is an example of Data Manipulation Language (DML)?"
✅ Giải thích nội dung câu hỏi:
Câu hỏi này kiểm tra kiến thức cơ bản về các loại câu lệnh SQL trong cơ sở dữ liệu (Database). Cụ thể, nó yêu cầu xác định câu lệnh nào thuộc Data Manipulation Language (DML) – ngôn ngữ thao tác dữ liệu. DML dùng để xử lý, thay đổi dữ liệu thực tế trong bảng (như thêm, sửa, xóa dữ liệu), không thay đổi cấu trúc bảng. Đây là khái niệm chuẩn trong SQL, áp dụng cho các dịch vụ AWS như Amazon RDS (hỗ trợ MySQL, PostgreSQL, SQL Server) hoặc Amazon Aurora, với phiên bản cập nhật mới nhất đến năm 2026 (AWS RDS hỗ trợ SQL chuẩn ANSI SQL-92 trở lên, không thay đổi phân loại DML/DDL cơ bản).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: INSERT
🛠️ Lý do: INSERT là câu lệnh điển hình của DML, dùng để thêm dữ liệu mới vào bảng. Ví dụ: INSERT INTO table_name VALUES (value1, value2);. Nó chỉ thao tác dữ liệu, không ảnh hưởng cấu trúc bảng. Trong AWS RDS/Aurora (2026), INSERT hỗ trợ batch insert tối ưu hóa hiệu suất với hàng triệu records/giây.

📋 Giải thích tất cả các phương án (đúng/sai)

  • INSERT ✅ Đúng:
    Như đã giải thích, INSERT thuộc DML vì nó thao tác dữ liệu (thêm record). Không thay đổi schema bảng.
    Ví dụ AWS: Trong Amazon RDS for MySQL 8.0 (2026), INSERT có tính năng INSERT ... ON DUPLICATE KEY UPDATE để tránh lỗi trùng lặp.

  • ALTER ❌ Sai:
    ALTER thuộc Data Definition Language (DDL), dùng để thay đổi cấu trúc bảng (thêm/sửa/xóa cột, khóa chính). Ví dụ: ALTER TABLE table_name ADD COLUMN new_col INT;. Nó ảnh hưởng metadata, không thao tác dữ liệu.
    Ví dụ AWS: RDS hỗ trợ ALTER TABLE với online DDL (không lock bảng) từ MySQL 8.0+.

  • DROP ❌ Sai:
    DROP thuộc DDL, dùng để xóa hoàn toàn đối tượng như bảng, database (ví dụ: DROP TABLE table_name;). Nó phá hủy cấu trúc và dữ liệu liên quan, không phải thao tác dữ liệu thuần túy.
    Ví dụ AWS: Trong Aurora (2026), DROP yêu cầu quyền cao và có thể recover qua backup PITR.

  • CREATE ❌ Sai:
    CREATE thuộc DDL, dùng để tạo mới đối tượng như bảng, view, index (ví dụ: CREATE TABLE table_name (col1 INT);). Nó định nghĩa cấu trúc, không thêm/sửa dữ liệu.
    Ví dụ AWS: RDS hỗ trợ CREATE với partitioning/table compression từ PostgreSQL 16+ (2026).

📘 Tài liệu tham khảo

  • AWS RDS Documentation (2026): Amazon RDS SQL Reference – Phân loại DML/DDL chuẩn.
  • AWS re:Post & MySQL 8.4 Docs: Xác nhận INSERT là DML chính thức.
  • Oracle SQL Standards (ANSI): DML bao gồm INSERT/UPDATE/DELETE/SELECT/MERGE (không thay đổi đến 2026).

🧠 Kết luận: Câu hỏi nhấn mạnh sự khác biệt DML (dữ liệu) vs DDL (cấu trúc), rất quan trọng cho chứng chỉ AWS Certified Data Engineer hoặc Azure Data Fundamentals khi làm việc cross-cloud!

Câu 303
Which language is used to define queries in Azure Synapse Data Explorer?
  1. A Bash
  2. B PowerShell
  3. C KQL
  4. D SQL
Xem giải thích

🧠 Phân Tích Câu Hỏi Trắc Nghiệm: Microsoft Azure Data Fundamentals

🔍 Giải thích nội dung câu hỏi một cách chi tiết và rõ ràng:
Câu hỏi tập trung vào Azure Synapse Data Explorer (trước đây gọi là Azure Data Explorer), một dịch vụ phân tích dữ liệu lớn thời gian thực trong hệ sinh thái Microsoft Azure. Cụ thể, nó hỏi về ngôn ngữ lập trình hoặc truy vấn (query language) được sử dụng để định nghĩa và thực thi các truy vấn dữ liệu trong công cụ này. Azure Synapse Data Explorer được thiết kế để xử lý dữ liệu lớn (big data), log, và telemetry với tốc độ cao, và nó yêu cầu một ngôn ngữ truy vấn chuyên biệt để khai thác dữ liệu hiệu quả. Đây là kiến thức cơ bản trong chứng chỉ DP-900: Microsoft Azure Data Fundamentals, nhấn mạnh sự khác biệt giữa các ngôn ngữ truy vấn trong Azure so với các dịch vụ khác. (Kiến thức cập nhật đến năm 2026: Azure Synapse Analytics vẫn sử dụng KQL làm ngôn ngữ chính thức cho Data Explorer pools, theo tài liệu Microsoft mới nhất).

✅ Đáp án đúng: KQL
Lý do lựa chọn: KQL (Kusto Query Language) là ngôn ngữ truy vấn chính thức và được thiết kế dành riêng cho Azure Synapse Data Explorer. Nó hỗ trợ các phép toán mạnh mẽ như tìm kiếm, tổng hợp, join dữ liệu lớn với cú pháp đơn giản, hiệu suất cao (hàng tỷ bản ghi/giây). KQL được phát triển bởi Microsoft để tối ưu hóa cho dữ liệu không cấu trúc và bán cấu trúc, khác biệt hoàn toàn với SQL truyền thống. Ví dụ: Một truy vấn cơ bản như StormEvents | where State == "TEXAS" | take 10 minh họa sức mạnh của nó. Đây là tiêu chuẩn bắt buộc trong Azure Synapse (phiên bản 2026 vẫn giữ nguyên).

📋 Giải thích chi tiết tất cả các phương án (đúng và sai):

  • ❌ Bash: Sai vì Bash là một shell scripting language dùng cho tự động hóa lệnh hệ thống Unix/Linux (như chạy script trên EC2 AWS hoặc VM Azure). Nó không phải ngôn ngữ truy vấn dữ liệu, mà chỉ dùng cho quản trị hệ thống, không liên quan đến việc định nghĩa query trong Data Explorer.

  • ❌ PowerShell: Sai vì PowerShell là scripting language của Microsoft dùng cho automation, quản lý tài nguyên Azure (qua Azure PowerShell module). Nó có thể gọi API Data Explorer nhưng không dùng để viết query dữ liệu trực tiếp – query vẫn cần KQL.

  • ✅ KQL: Đúng hoàn toàn! Như đã giải thích ở trên, KQL là ngôn ngữ cốt lõi cho mọi truy vấn trong Azure Synapse Data Explorer, hỗ trợ pipeline phức tạp, machine learning integration.

  • ❌ SQL: Sai vì mặc dù SQL là ngôn ngữ truy vấn phổ biến cho cơ sở dữ liệu quan hệ (như Azure SQL Database), nhưng Data Explorer KHÔNG sử dụng SQL làm ngôn ngữ chính. SQL chỉ hỗ trợ hạn chế qua connector, còn KQL mới là native và tối ưu cho dữ liệu lớn, thời gian thực.

📘 Tài liệu tham khảo (cập nhật mới nhất 2026):

Hy vọng phân tích này giúp bạn nắm vững kiến thức Azure! 🚀 Nếu cần thêm ví dụ query KQL, hãy hỏi nhé!

Câu 304
Which Azure Cosmos DB API should you use for a graph database?
  1. A Azure Cosmos DB for Table
  2. B Azure Cosmos DB for Apache Cassandra
  3. C Azure Cosmos DB for NoSQL
  4. D Azure Cosmos DB for Apache Gremlin
Xem giải thích

🧩 Phân tích chi tiết câu hỏi

Câu hỏi: "Which Azure Cosmos DB API should you use for a graph database?"
📘 Giải thích nội dung câu hỏi:
Câu hỏi này tập trung vào việc lựa chọn API phù hợp nhất trong Azure Cosmos DB để xây dựng và quản lý một cơ sở dữ liệu đồ thị (graph database). Azure Cosmos DB là dịch vụ cơ sở dữ liệu NoSQL đa mô hình của Microsoft Azure, hỗ trợ nhiều API khác nhau để tương thích với các công cụ và ngôn ngữ truy vấn phổ biến. Trong đó, graph database sử dụng mô hình dữ liệu dựa trên nút (vertices/nodes), cạnh (edges) và thuộc tính để biểu diễn mối quan hệ phức tạp (như mạng xã hội, khuyến nghị sản phẩm). Câu hỏi yêu cầu xác định API chuyên biệt cho loại dữ liệu này, dựa trên các tính năng cốt lõi của Cosmos DB (cập nhật đến năm 2026, với hỗ trợ Gremlin API đầy đủ cho graph queries).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Azure Cosmos DB for Apache Gremlin
🛠️ Lý do:
Azure Cosmos DB for Apache Gremlin là API chuyên dụng cho graph database, sử dụng ngôn ngữ truy vấn Gremlin (tiêu chuẩn mở từ Apache TinkerPop). Nó cho phép thực hiện các thao tác phức tạp như duyệt đồ thị (traversal), tìm đường đi ngắn nhất, phân tích mối quan hệ với hiệu suất cao và khả năng mở rộng toàn cầu. Đây là lựa chọn chính thức từ Microsoft cho các workload graph (xác nhận trong tài liệu Azure 2026).

📋 Giải thích tất cả các phương án

Dưới đây là phân tích từng lựa chọn một cách chi tiết, giữ nguyên văn bản gốc bằng tiếng Anh. Mỗi phương án được đánh giá ✅ (đúng) hoặc ❌ (sai), kèm lý do bằng tiếng Việt:

  • ❌ Azure Cosmos DB for Table
    🧩 Phân tích: Phương án này dành cho cơ sở dữ liệu key-value/table đơn giản, tương thích với Azure Table Storage cũ. Nó không hỗ trợ mô hình graph (không có vertices/edges), chỉ phù hợp cho dữ liệu dạng bảng phẳng như telemetry hoặc session data. Không thể thực hiện graph queries.

  • ❌ Azure Cosmos DB for Apache Cassandra
    🧩 Phân tích: API này tương thích với Apache Cassandra, chuyên cho cơ sở dữ liệu cột rộng (wide-column store) với mô hình phân tán cao. Nó xử lý dữ liệu lớn theo hàng/cột, nhưng không hỗ trợ graph model (không có Gremlin queries), chỉ dùng cho workload NoSQL columnar như time-series.

  • ❌ Azure Cosmos DB for NoSQL
    🧩 Phân tích: Đây là API mặc định (SQL API) cho dữ liệu JSON document-based. Nó mạnh về truy vấn linh hoạt với SQL-like syntax, nhưng không được thiết kế cho graph (không hỗ trợ traversal edges tự nhiên). Phải dùng workaround kém hiệu quả cho graph workload.

  • ✅ Azure Cosmos DB for Apache Gremlin
    🛠️ Phân tích: Như đã giải thích ở trên, đây là API duy nhất hỗ trợ graph database đầy đủ với Gremlin query engine, tích hợp multi-model của Cosmos DB (global distribution, TTL, indexing tự động). Hiệu suất vượt trội cho graph analytics (cập nhật 2026: hỗ trợ vector search hybrid).

📚 Tài liệu tham khảo

  • Microsoft Docs (Azure Cosmos DB APIs): Azure Cosmos DB API for Gremlin (cập nhật 2026: Graph API enhancements).
  • Azure Data Fundamentals (DP-900): Phần Cosmos DB multi-model APIs.
  • Apache TinkerPop: Gremlin Documentation – Tiêu chuẩn graph được Cosmos DB hỗ trợ native.

Hy vọng phân tích này giúp bạn nắm vững kiến thức Azure Cosmos DB! 🚀 Nếu cần thêm ví dụ code Gremlin, hãy hỏi nhé!

Câu 305
A bank needs to ensure that a transaction involving debiting funds from a source account and crediting the same funds to a destination account must complete both actions. If either action falls to complete, the other action must fail.

Of which ACID semantic is this an example?
  1. A consistency
  2. B durability
  3. C atomicity
  4. D isolation
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi mô tả một tình huống thực tế trong hệ thống ngân hàng: Một ngân hàng cần đảm bảo rằng giao dịch liên quan đến việc trích tiền (debit) từ tài khoản nguồn và ghi có (credit) tiền vào tài khoản đích phải hoàn thành cả hai hành động hoặc không hành động nào được thực hiện. Nếu một trong hai hành động thất bại, hành động kia cũng phải thất bại hoàn toàn.

📘 Bối cảnh: Đây là ví dụ kinh điển về tính chất ACID trong cơ sở dữ liệu (Database Transactions), một khái niệm cốt lõi được AWS áp dụng rộng rãi trong các dịch vụ như Amazon DynamoDB (hỗ trợ ACID transactions đầy đủ từ năm 2018 và cập nhật liên tục đến 2026), Amazon RDS, Amazon Aurora, hay Amazon QLDB. ACID bao gồm 4 thuộc tính chính: Atomicity (Tính nguyên tử), Consistency (Tính nhất quán), Isolation (Tính cô lập), Durability (Tính bền vững). Câu hỏi yêu cầu xác định thuộc tính ACID nào đang được minh họa ở đây – cụ thể là yêu cầu toàn bộ giao dịch phải là một đơn vị không thể chia cắt (all-or-nothing).

Nguồn tham khảo:

  • AWS Documentation: Amazon DynamoDB Transactions (cập nhật 2026, xác nhận DynamoDB hỗ trợ ACID đầy đủ cho multi-item transactions).
  • AWS Well-Architected Framework: Reliability Pillar – Transactions (2024-2026 editions).

✅ Đáp án đúng: atomicity

Lý do lựa chọn:
🛠️ Atomicity (Tính nguyên tử) chính là thuộc tính đảm bảo rằng toàn bộ giao dịch được thực hiện như một đơn vị duy nhất và không thể chia cắt. Trong ví dụ ngân hàng, việc debit và credit phải cùng thành công (commit) hoặc cùng thất bại (rollback) để tránh tình trạng tiền "mất tích" hoặc "nhân đôi". AWS triển khai atomicity qua cơ chế transaction manager trong DynamoDB (TransactWriteItems API) và RDS (SQL COMMIT/ROLLBACK), đảm bảo tính toàn vẹn dữ liệu ngay cả khi có lỗi hệ thống. Đây là match hoàn hảo với yêu cầu "both actions complete or both fail"!

📋 Giải thích tất cả các phương án (đúng/sai)

  • ❌ consistency
    Phân tích sai: Consistency đảm bảo dữ liệu luôn ở trạng thái hợp lệ theo các quy tắc kinh doanh (constraints, foreign keys) sau khi giao dịch hoàn tất, chứ không tập trung vào việc "cả hai hành động cùng thành công hay thất bại". Ví dụ: Nó kiểm tra số dư tài khoản không âm, nhưng không ngăn chặn partial failure như debit thành công mà credit thất bại. Trong AWS, consistency ở DynamoDB là eventual/strong consistency model, không phải atomicity.

  • ❌ durability
    Phân tích sai: Durability đảm bảo rằng dữ liệu đã commit sẽ được lưu trữ vĩnh viễn, ngay cả khi hệ thống crash (qua WAL - Write-Ahead Logging). Nó không liên quan đến việc "các hành động phải cùng hoàn thành". AWS RDS/Aurora dùng durability với replication multi-AZ, nhưng nếu transaction chưa commit, durability không áp dụng.

  • ✅ atomicity
    Phân tích đúng: Như đã giải thích ở trên, atomicity chính là "all-or-nothing" – toàn bộ giao dịch là một khối nguyên tử. AWS hỗ trợ qua Transact APIs ở DynamoDB (lên đến 100 actions/transaction, atomic across items/tables đến 2026), khớp 100% với kịch bản ngân hàng.

  • ❌ isolation
    Phân tích sai: Isolation ngăn chặn các giao dịch khác "nhìn thấy" dữ liệu trung gian (dirty reads, phantoms) của giao dịch đang chạy, đảm bảo tính cô lập. Nó không xử lý "both fail if one fails", mà chỉ về concurrency control. AWS dùng isolation levels như Serializable ở RDS hoặc Linearizable ở DynamoDB, nhưng không phải trọng tâm câu hỏi.

🧠 Kết luận nổi bật: Đây là kiến thức nền tảng cho AWS Certified Database - Specialty hoặc Solutions Architect (2026 syllabus). Hãy thực hành với AWS Free Tier để test DynamoDB transactions! 🚀

Câu 306
Blob rehydration occurs in Azure Blob storage when a blob moves between which access tiers?
  1. A Hot to Cool
  2. B Hot to Archive
  3. C Cool to Archive
  4. D Archive to Cool
Xem giải thích

🧩 Phân tích chi tiết câu hỏi

Câu hỏi tập trung vào khái niệm Blob rehydration trong Azure Blob Storage – một dịch vụ lưu trữ đối tượng (object storage) của Microsoft Azure. Blob rehydration là quá trình khôi phục dữ liệu từ tier lưu trữ Archive (dạng lưu trữ ngoại tuyến, chi phí thấp nhưng thời gian truy cập lâu) sang các tier có thể truy cập nhanh hơn như Hot hoặc Cool.

🛠️ Chi tiết nội dung câu hỏi:

  • Azure Blob Storage hỗ trợ 3 access tiers chính: Hot (truy cập thường xuyên, chi phí cao), Cool (truy cập ít thường xuyên, chi phí cân bằng), và Archive (lưu trữ dài hạn, rẻ nhất nhưng dữ liệu bị "đóng băng" – không đọc được ngay lập tức).
  • Khi blob ở tier Archive, bạn phải thực hiện rehydration (tái hydrate) để "đánh thức" dữ liệu, chuyển nó sang tier khác để có thể đọc/ghi. Quá trình này mất thời gian (giờ đến ngày) và có chi phí.
  • Câu hỏi hỏi cụ thể: Blob rehydration xảy ra khi blob di chuyển giữa các access tiers nào? (Dựa trên phiên bản Azure Storage mới nhất đến năm 2026, không có thay đổi lớn về cơ chế này).

📘 Tài liệu tham khảo:

✅ Đáp án đúng: Archive to Cool

Lý do lựa chọn:
Đây là trường hợp chính xác vì rehydration chỉ xảy ra khi blob di chuyển từ Archive sang Cool (hoặc Hot). Quá trình này được gọi là rehydration to Cool tier, giúp dữ liệu từ trạng thái ngoại tuyến (Archive) trở nên khả dụng với chi phí và thời gian ưu tiên (thường nhanh hơn rehydrate to Hot). Azure hỗ trợ hai chế độ: Standard (khoảng 15 giờ) và Priority (dưới 1 giờ). Đây là tính năng cốt lõi để tối ưu hóa chi phí lưu trữ dài hạn.

🧩 Giải thích tất cả các phương án (đúng/sai)

  • ❌ Hot to Cool:
    Sai vì di chuyển từ Hot sang Cool chỉ là thay đổi tier thông thường (transition), không liên quan đến rehydration. Hot và Cool đều là tier online (truy cập ngay lập tức), không cần "khôi phục dữ liệu đóng băng" như Archive.

  • ❌ Hot to Archive:
    Sai vì đây là quá trình chuyển sang lưu trữ ngoại tuyến (dehydration), ngược lại hoàn toàn với rehydration. Blob sẽ bị "đóng băng" và không đọc được cho đến khi rehydrate sau.

  • ❌ Cool to Archive:
    Sai tương tự như trên, đây chỉ là transition tier từ online (Cool) sang offline (Archive), không phải rehydration. Không có khôi phục dữ liệu nào xảy ra.

  • ✅ Archive to Cool:
    Đúng như đã giải thích ở trên. Đây là một trong hai lựa chọn rehydration phổ biến (Archive → Cool hoặc Archive → Hot), giúp blob sẵn sàng truy cập mà không cần chuyển hẳn sang Hot (đắt hơn).

Câu 307
Which activity is most common for transactional workloads?
  1. A recording small units of work events in real time
  2. B aggregating massive amounts of data
  3. C producing complex reports
  4. D performing self-service data exploration
Xem giải thích

🧩 Phân tích chi tiết câu hỏi trắc nghiệm

📖 Nội dung câu hỏi:
Câu hỏi: "Which activity is most common for transactional workloads?"
🛠️ Câu hỏi này tập trung vào đặc trưng chính của transactional workloads (các khối lượng công việc giao dịch) trong môi trường đám mây AWS. Transactional workloads thường đề cập đến OLTP (Online Transaction Processing) – hệ thống xử lý giao dịch trực tuyến, nơi dữ liệu được ghi nhận nhanh chóng, liên tục với các đơn vị công việc nhỏ (small units of work), đảm bảo tính nhất quán (ACID), độ trễ thấp và xử lý thời gian thực. Điều này phổ biến trong các ứng dụng như hệ thống ngân hàng, đặt hàng trực tuyến, theo dõi kho hàng... Ngược lại, các hoạt động phân tích lớn (analytics) thuộc OLAP (Online Analytical Processing). Kiến thức dựa trên AWS Well-Architected Framework và dịch vụ như Amazon DynamoDB, RDS (cập nhật đến 2026, với các cải tiến như DynamoDB Streams và Global Tables cho real-time processing).

✅ Đáp án đúng:
recording small units of work events in real time
Lý do lựa chọn: Đây là hoạt động phổ biến nhất cho transactional workloads vì OLTP ưu tiên ghi nhận nhanh chóng các sự kiện nhỏ (như một giao dịch mua hàng) theo thời gian thực, đảm bảo dữ liệu luôn cập nhật và sẵn sàng cho ứng dụng. Trong AWS, DynamoDB hoặc Aurora hỗ trợ điều này với throughput cao, latency thấp (dưới ms), phù hợp cho workloads có hàng triệu giao dịch/giây. ✅

📋 Giải thích tất cả các phương án (đúng và sai)

  • ✅ [ĐÚNG] recording small units of work events in real time
    🧩 Phương án này chính xác vì transactional workloads (OLTP) tập trung vào việc ghi nhận nhanh các sự kiện nhỏ thời gian thực, duy trì tính toàn vẹn dữ liệu (ACID properties). AWS khuyến nghị sử dụng DynamoDB cho NoSQL OLTP hoặc RDS/Aurora cho relational OLTP, với tính năng như point-in-time recovery và real-time replication (cập nhật 2026).

  • ❌ [SAI] aggregating massive amounts of data
    🛠️ Phương án này sai vì hoạt động tổng hợp dữ liệu lớn (aggregation) thuộc analytical workloads (OLAP), không phải transactional. Trong AWS, dùng Amazon EMR, Redshift hoặc Glue cho việc này, xử lý batch data lớn thay vì giao dịch real-time.

  • ❌ [SAI] producing complex reports
    🧩 Phương án này sai vì tạo báo cáo phức tạp là nhiệm vụ của business intelligence (BI) và analytics, thường chạy batch hoặc ad-hoc trên dữ liệu lịch sử. AWS QuickSight hoặc Redshift Spectrum phù hợp hơn, không phải transactional systems như RDS.

  • ❌ [SAI] performing self-service data exploration
    🛠️ Phương án này sai vì khám phá dữ liệu tự phục vụ (self-service exploration) thuộc data lake/analytics layer, sử dụng công cụ như Amazon Athena hoặc SageMaker Data Wrangler cho query tương tác trên dữ liệu lớn, không liên quan đến giao dịch thời gian thực.

📘 Tài liệu tham khảo:

Hy vọng phân tích này giúp bạn nắm vững sự khác biệt giữa OLTP và OLAP trên AWS! 🚀

Câu 308
You have a banking application that transfers money in to and out of accounts.

Of which type of solution is this is an example?
  1. A online transaction processing (OLTP)
  2. B online analytical processing (OLAP)
  3. C extract, transform and load (ETL)
  4. D a data warehouse
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi mô tả một ứng dụng ngân hàng thực hiện các giao dịch chuyển tiền vào và ra khỏi tài khoản. Đây là ví dụ điển hình về hệ thống xử lý dữ liệu thời gian thực, nơi mỗi giao dịch cần được xử lý nhanh chóng, chính xác, đảm bảo tính toàn vẹn dữ liệu (ACID: Atomicity, Consistency, Isolation, Durability) và hỗ trợ nhiều người dùng đồng thời. 🏦💰
Câu hỏi yêu cầu xác định loại giải pháp mà ứng dụng này thuộc về, dựa trên các khái niệm cốt lõi trong xử lý dữ liệu trên AWS (như Amazon RDS cho OLTP hoặc Amazon Redshift cho OLAP). Kiến thức dựa trên tài liệu AWS mới nhất đến năm 2026, nơi OLTP vẫn là nền tảng cho các ứng dụng giao dịch cao tải. 📘

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: online transaction processing (OLTP)
👉 Lý do: Ứng dụng ngân hàng xử lý các giao dịch ngắn gọn, thời gian thực (như chuyển tiền), cập nhật dữ liệu liên tục với khối lượng giao dịch cao (hàng nghìn/giây). OLTP trên AWS (ví dụ: Amazon Aurora, RDS) được thiết kế chính xác cho điều này, hỗ trợ đọc/ghi nhanh, index tối ưu và phục hồi nhanh chóng. Không giống các loại khác, OLTP tập trung vào giao dịch cá nhân thay vì phân tích tổng hợp. 🛠️ Hoàn hảo khớp với mô tả!

📋 Giải thích tất cả các phương án

Dưới đây là phân tích chi tiết từng lựa chọn, giữ nguyên văn bản gốc tiếng Anh. Mỗi phương án được đánh giá ✅ (đúng) hoặc ❌ (sai), kèm lý do cụ thể dựa trên AWS:

  • ✅ online transaction processing (OLTP)
    Phương án này hoàn toàn đúng vì OLTP dành cho hệ thống giao dịch trực tuyến như ngân hàng, ATM, bán lẻ trực tuyến. Trên AWS, dịch vụ như Amazon DynamoDB hoặc RDS hỗ trợ OLTP với throughput cao, latency thấp (<10ms), và scale tự động. Đây là lựa chọn chuẩn cho ứng dụng chuyển tiền thời gian thực. 🚀

  • ❌ online analytical processing (OLAP)
    Phương án này sai vì OLAP dùng cho phân tích dữ liệu lớn, báo cáo tổng hợp (query phức tạp trên dữ liệu lịch sử), không phải giao dịch thời gian thực. Trên AWS, OLAP dùng Amazon Redshift hoặc Athena, phù hợp dashboard BI chứ không xử lý chuyển tiền ngay lập tức (latency cao hơn). Không khớp với ứng dụng ngân hàng! 🔍

  • ❌ extract, transform and load (ETL)
    Phương án này sai vì ETL là quá trình di chuyển và biến đổi dữ liệu từ nguồn sang đích (như AWS Glue hoặc Data Pipeline), không phải loại giải pháp ứng dụng. ETL dùng để chuẩn bị dữ liệu cho phân tích, chứ không xử lý giao dịch trực tiếp như chuyển tiền. Chỉ là công cụ hỗ trợ, không phải hệ thống chính! 🔄

  • ❌ a data warehouse
    Phương án này sai vì data warehouse (kho dữ liệu) lưu trữ dữ liệu lịch sử lớn cho phân tích dài hạn (AWS Redshift, Snowflake on AWS), không hỗ trợ giao dịch cập nhật thời gian thực. Nó read-heavy, schema-on-read, dễ bị lỗi nếu dùng cho OLTP (vì không ACID tốt). Không phù hợp ngân hàng giao dịch! 📊

📚 Tài liệu tham khảo (AWS cập nhật 2026)

  • AWS OLTP Guide: What is OLTP? – Giải thích chi tiết OLTP vs OLAP.
  • Amazon RDS/Aurora Docs: Transactional Workloads – Ví dụ OLTP banking.
  • AWS Glue ETL: ETL Services – Phân biệt ETL.
  • Redshift OLAP: Data Warehousing – So sánh với OLTP.
    Tất cả dựa trên phiên bản AWS Well-Architected Framework 2026, nhấn mạnh OLTP cho high-velocity transactions. 🌐
Câu 309
You need to accept and store large quantities of IoT streaming data.

Which database solution should you use?
  1. A Azure Database for PostgreSQL
  2. B Azure Database for MariaDB
  3. C Azure Cache for Redis
  4. D Azure Cosmos DB
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi yêu cầu chọn giải pháp cơ sở dữ liệu phù hợp để chấp nhận và lưu trữ lượng lớn dữ liệu streaming từ IoT (Internet of Things). Đây là tình huống điển hình trong các ứng dụng IoT, nơi dữ liệu được tạo ra liên tục với tốc độ cao, khối lượng lớn (high-velocity, high-volume data), cần độ trễ thấp (low latency), khả năng mở rộng toàn cầu (global scalability) và hỗ trợ xử lý thời gian thực.
📘 Bối cảnh: IoT streaming data thường không có cấu trúc cố định (semi-structured hoặc unstructured), đòi hỏi cơ sở dữ liệu NoSQL linh hoạt, hỗ trợ ingestion nhanh chóng và tích hợp với các dịch vụ streaming như Azure Stream Analytics hoặc Azure IoT Hub. Kiến thức cập nhật đến năm 2026 (Azure Cosmos DB phiên bản mới nhất hỗ trợ API cho MongoDB, Cassandra, Gremlin, Table, SQL với tính năng multi-region writes và serverless scaling).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Azure Cosmos DB
🛠️ Lý do: Azure Cosmos DB là dịch vụ NoSQL đa mô hình (multi-model), được thiết kế đặc biệt cho dữ liệu streaming lớn từ IoT. Nó hỗ trợ:

  • Ingestion dữ liệu tốc độ cao với throughput không giới hạn (RU/s - Request Units per second) và tự động scale.
  • Change Feed để xử lý streaming real-time.
  • Tích hợp chặt chẽ với Azure IoT Hub, Event Hubs và Stream Analytics cho IoT workloads.
  • Global distribution với multi-master replication, độ trễ <10ms ở 99th percentile.
  • Hỗ trợ JSON documents lý tưởng cho dữ liệu IoT sensor.
    Đây là lựa chọn tối ưu theo best practices Microsoft Azure cho IoT scenarios (cập nhật 2026: hỗ trợ vector search cho AIoT).

📋 Giải thích chi tiết tất cả các phương án

Dưới đây là phân tích từng lựa chọn, giữ nguyên văn bản gốc bằng tiếng Anh. Mỗi phương án được đánh giá đúng/sai với lý do cụ thể:

  • [SAI] Azure Database for PostgreSQL
    ❌ Sai vì: Đây là cơ sở dữ liệu quan hệ (RDBMS) dành cho dữ liệu có cấu trúc cố định (structured data), không tối ưu cho streaming dữ liệu IoT lớn với tốc độ cao. PostgreSQL gặp bottleneck ở ingestion real-time (cần ETL phức tạp), thiếu global distribution tự động và scale horizontally kém hơn NoSQL. Phù hợp hơn cho OLTP/OLAP truyền thống, không phải high-velocity IoT.

  • [SAI] Azure Database for MariaDB
    ❌ Sai vì: Tương tự PostgreSQL, MariaDB là RDBMS mã nguồn mở, tập trung vào workload giao dịch (transactional) với schema cố định. Không hỗ trợ tốt streaming lớn (giới hạn IOPS, cần sharding thủ công), độ trễ cao hơn ở scale global, và không có tính năng native cho IoT như change data capture real-time. Không phải lựa chọn cho "large quantities of streaming data".

  • [SAI] Azure Cache for Redis
    ❌ Sai vì: Đây là dịch vụ cache in-memory (key-value store), dùng cho caching tạm thời (session, leaderboard) với tốc độ cực cao nhưng không phải storage lâu dài. Dữ liệu dễ mất khi restart pod, giới hạn dung lượng (không scale vô hạn như Cosmos DB), và không hỗ trợ query phức tạp cho IoT analytics. Chỉ bổ trợ, không thay thế database chính cho lưu trữ lớn.

  • [ĐÚNG] Azure Cosmos DB
    ✅ Đúng vì: Như đã giải thích ở phần đáp án đúng, đây là giải pháp lý tưởng cho IoT streaming với khả năng handle petabyte-scale data, auto-scale, multi-region, và tích hợp streaming native. Đáp ứng đầy đủ yêu cầu "accept and store large quantities".

📚 Tài liệu tham khảo

Hy vọng phân tích này giúp bạn nắm vững kiến thức Azure Data Fundamentals! 🚀 Nếu cần thêm ví dụ code hoặc lab, hãy hỏi nhé!

Câu 310
SELECT, INSERT, and UPDATE are examples of which type of SQL statement?
  1. A Data Definition Language (DDL)
  2. B Data Control Language (DCL)
  3. C Data Manipulation Language (DML)
Xem giải thích

🔍 Phân tích câu hỏi trắc nghiệm SQL trong ngữ cảnh AWS

🧩 Giải thích nội dung câu hỏi một cách chi tiết:
Câu hỏi tập trung vào phân loại các câu lệnh SQL cơ bản: SELECT (truy vấn dữ liệu), INSERT (thêm dữ liệu mới), và UPDATE (cập nhật dữ liệu hiện có). Đây là những hoạt động phổ biến khi làm việc với cơ sở dữ liệu quan hệ (RDBMS) trên AWS, chẳng hạn như Amazon RDS (hỗ trợ MySQL, PostgreSQL, SQL Server, Oracle) hoặc Amazon Aurora. SQL được chuẩn hóa theo ANSI/ISO, và các loại câu lệnh được phân loại rõ ràng để quản lý dữ liệu hiệu quả. Câu hỏi kiểm tra kiến thức cơ bản về Data Manipulation Language (DML) so với các loại khác, áp dụng trực tiếp trong các dịch vụ AWS như RDS (phiên bản mới nhất 2026 hỗ trợ SQL Server 2022, PostgreSQL 17, MySQL 8.0+).

✅ Đáp án đúng: Data Manipulation Language (DML)
Lý do lựa chọn: SELECT, INSERT, UPDATE là các câu lệnh dùng để thao tác dữ liệu (manipulate data), không thay đổi cấu trúc cơ sở dữ liệu. Chúng thuộc DML theo chuẩn SQL (ANSI SQL-92 trở lên), được AWS hỗ trợ đầy đủ trong RDS/Aurora để thực hiện CRUD operations (Create, Read, Update, Delete). Ví dụ: SELECT * FROM users; để đọc, INSERT INTO users VALUES (...); để thêm, UPDATE users SET name='New' WHERE id=1; để sửa. Đây là kiến thức cốt lõi trong AWS Certified Database - Specialty (2026 update).

📋 Giải thích tất cả các phương án (đúng và sai):

  • ❌ [SAI] Data Definition Language (DDL): Phương án này sai vì DDL dùng để định nghĩa và quản lý cấu trúc cơ sở dữ liệu, như CREATE TABLE, ALTER TABLE, DROP TABLE, TRUNCATE. Không liên quan đến thao tác dữ liệu mà chỉ thay đổi schema (ví dụ: CREATE TABLE users (id INT);). Trong AWS RDS, DDL yêu cầu quyền cao hơn và có thể trigger backup tự động.

  • ❌ [SAI] Data Control Language (DCL): Phương án này sai vì DCL dùng để kiểm soát quyền truy cập, như GRANT (cấp quyền), REVOKE (thu hồi). Không thao tác dữ liệu mà quản lý bảo mật (ví dụ: GRANT SELECT ON users TO role;). AWS IAM tích hợp DCL qua RDS roles, nhưng không phải loại của SELECT/INSERT/UPDATE.

  • ✅ [ĐÚNG] Data Manipulation Language (DML): Phương án đúng vì đây chính là loại dành cho thao tác dữ liệu thuần túy (SELECT đọc, INSERT thêm, UPDATE sửa, DELETE xóa). AWS RDS tối ưu DML với read replicas và query optimizer (cập nhật 2026: hỗ trợ vector search trong Aurora PostgreSQL).

📘 Tài liệu tham khảo:

  • AWS RDS Documentation: SQL Language Reference (cập nhật 2026).
  • AWS Certified Database - Specialty Exam Guide (2024-2026): Phần DML/DDL/DCL.
  • ANSI SQL Standard (ISO/IEC 9075:2023): Phân loại DML chính thức.
  • Microsoft Azure SQL (tương đương): Transact-SQL Reference – phù hợp vai trò Azure Data Fundamentals.

🛠️ Lời khuyên học tập: Thực hành DML trên AWS Free Tier RDS để nắm vững! 🚀