Câu hỏi: BDI302c - Phần 3: Hadoop và nền tảng lập trình cho dữ liệu lớn
31 câu trắc nghiệm kèm lời giải của môn BDI302c - Dữ liệu lớn, xếp theo thứ tự nhập vào ngân hàng. Trang 2/2 — câu 21–31.
Danh sách câu hỏi
31/31 câuHết danh sách
21What does IaaS offer?4 lựa chọn
AHardware Only
BComputing Environment
CSoftware On-Demand
DLOud software
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Hardware Only". IaaS (Infrastructure as a Service, hạ tầng như một dịch vụ) là tầng dưới cùng của mô hình đám mây: nhà cung cấp cho thuê hạ tầng phần cứng đã ảo hoá gồm máy ảo, ổ lưu trữ, mạng, còn hệ điều hành, runtime và ứng dụng do người dùng tự cài và tự quản lý, ví dụ Amazon EC2. Dễ nhầm nhất là "Computing Environment": môi trường tính toán gồm hệ điều hành, runtime, thư viện, công cụ phát triển dựng sẵn là thứ PaaS (Platform as a Service) cung cấp, không phải IaaS, vì với IaaS người dùng chỉ nhận phần cứng ảo hoá trống và tự dựng môi trường phía trên. "Software On-Demand" là SaaS, phần mềm hoàn chỉnh dùng ngay qua mạng mà không phải cài đặt hay quản lý gì. "LOud software" không phải thuật ngữ của điện toán đám mây và không ứng với tầng dịch vụ nào.
A32 MB
B64 MB
C128 MB
D256 MB
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "128 MB". HDFS chia mỗi tệp thành các khối (block) lớn rồi phân tán và sao lưu chúng trên các DataNode; từ Hadoop 2.x kích thước khối mặc định là 128 MB, đặt qua tham số dfs.blocksize. Khối lớn giúp giảm số siêu dữ liệu NameNode phải giữ trong bộ nhớ và giảm thời gian tìm kiếm so với thời gian truyền dữ liệu. "32 MB" chưa từng là mặc định của HDFS, khối nhỏ như vậy làm số khối tăng vọt và đè nặng NameNode. "64 MB" là kích thước mặc định của Hadoop 1.x, đã được tăng lên ở phiên bản 2.x mà câu hỏi nhắc tới. "256 MB" là giá trị quản trị viên thường tự cấu hình cho cụm có tệp rất lớn, nhưng không phải mặc định. Ví dụ một tệp 300 MB sẽ được chia thành hai khối 128 MB và một khối 44 MB.
23Spark runs on which computing engine?4 lựa chọn
AYARN
BFlume
CSqoop
DZookeeper
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "YARN". Spark có thể chạy ở nhiều chế độ quản lý cụm như standalone, Mesos, Kubernetes, và phổ biến nhất trong hệ sinh thái Hadoop là chạy trên YARN: khi đó Spark xin container từ ResourceManager để khởi chạy các executor trên những NodeManager, dùng chung tài nguyên với các ứng dụng Hadoop khác và đọc dữ liệu ngay trên HDFS. "Flume" sai vì nó là dịch vụ thu thập và chuyển dữ liệu log, sự kiện vào HDFS, không cấp tài nguyên tính toán. "Sqoop" sai vì nó chỉ chuyển dữ liệu giữa Hadoop và cơ sở dữ liệu quan hệ. "Zookeeper" sai vì nó cung cấp dịch vụ điều phối như lưu cấu hình, đồng bộ, bầu chọn nút chủ cho hệ phân tán, chứ không phải nơi phân bổ CPU, bộ nhớ để chạy tác vụ Spark.
AResource Manager and Container
BApplications Master and Container
CNode Manager and Applications Master
DResource Manager and Node Manager
ENode Manager and Container
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Resource Manager and Node Manager". Trong YARN của Hadoop, ResourceManager và NodeManager là hai thành phần thường trực tạo nên data-computation framework (khung tính toán dữ liệu): ResourceManager chạy ở nút chủ, nắm toàn bộ tài nguyên cụm và quyết định cấp phát cho các ứng dụng; NodeManager chạy trên mỗi nút thợ, quản lý tài nguyên của máy đó, khởi chạy và giám sát container rồi báo cáo về ResourceManager. "Resource Manager and Container" thiếu NodeManager, vì container chỉ là gói tài nguyên CPU và bộ nhớ được cấp phát chứ không phải thành phần quản lý. "Applications Master and Container" gồm hai thứ chỉ tồn tại theo từng ứng dụng, không phải nền tảng thường trực. "Node Manager and Applications Master" thiếu ResourceManager, đầu mối cấp phát tài nguyên toàn cụm; ApplicationMaster chỉ thương lượng tài nguyên cho riêng một ứng dụng. "Node Manager and Container" chỉ là phần thực thi ở một nút, không có bộ điều phối tài nguyên chung.
AGiraph, for SQL-like queries.
BPig, for real-time and in-memory processing of big data.
CZookeeper, analyze social graphs.
DZookeeper, management system for animal named related components
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Zookeeper, management system for animal named related components". ZooKeeper là công cụ mã nguồn mở của hệ sinh thái Hadoop cung cấp dịch vụ điều phối tập trung cho hệ phân tán: lưu cấu hình, đặt tên, đồng bộ, bầu chọn nút chủ; cái tên mang ý chơi chữ người giữ vườn thú vì nhiều thành phần Hadoop được đặt theo tên con vật như Pig (con lợn), Hive (tổ ong) và chính chú voi Hadoop, nên mô tả này đúng về bản chất là hệ điều phối cho các thành phần đó. "Giraph, for SQL-like queries." sai vì Giraph là nền tảng xử lý đồ thị lặp theo mô hình Pregel; truy vấn kiểu SQL là việc của Hive. "Pig, for real-time and in-memory processing of big data." sai vì Pig chạy luồng dữ liệu theo lô, còn xử lý trong bộ nhớ tốc độ cao là đặc trưng của Spark. "Zookeeper, analyze social graphs." sai vì ZooKeeper không phân tích dữ liệu nào; phân tích đồ thị mạng xã hội là việc của Giraph hoặc GraphX.
26ZooKeeper is primarily used for:4 lựa chọn
AData mining
BCoordination services (e.g., configuration, synchronization)
CFull cluster resource management
DBoth a and c
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Coordination services (e.g., configuration, synchronization)". ZooKeeper là dịch vụ điều phối tập trung cho ứng dụng phân tán: nó lưu dữ liệu nhỏ trong cây znode, cung cấp nơi giữ cấu hình chung, khoá phân tán để đồng bộ, đặt tên, theo dõi nút nào còn sống và bầu chọn nút chủ; HBase, Kafka hay HDFS chế độ sẵn sàng cao đều dựa vào nó. "Data mining" sai vì ZooKeeper không phân tích dữ liệu, nó chỉ giữ trạng thái điều phối. "Full cluster resource management" sai vì quản lý và cấp phát tài nguyên của cả cụm là việc của YARN với ResourceManager; ZooKeeper có thể giúp ResourceManager chuyển đổi dự phòng nhưng không tự cấp CPU, bộ nhớ. "Both a and c" ghép khai phá dữ liệu với quản lý toàn bộ tài nguyên cụm, hai việc đều không phải chức năng của ZooKeeper nên cũng sai.
27What are the roles of the two key parts of HDFS?4 lựa chọn
ANameNode for metadata and DataNode for block storage.
BFASTA for genome sequence and Rasters for geospatial data.
CNameNode for block storage and Data Node for metadata.
DNone of the above
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "NameNode for metadata and DataNode for block storage.". HDFS theo kiến trúc chủ tớ: NameNode là nút chủ giữ không gian tên và siêu dữ liệu (metadata), tức cây thư mục, quyền truy cập, mỗi tệp gồm những khối nào và khối nằm trên DataNode nào; các DataNode là nút tớ lưu khối dữ liệu thật trên đĩa, phục vụ đọc ghi và gửi tín hiệu heartbeat định kỳ về NameNode. Khi đọc tệp, máy khách hỏi NameNode vị trí khối rồi đọc thẳng từ DataNode. "NameNode for block storage and Data Node for metadata." đảo ngược vai trò hai thành phần. "FASTA for genome sequence and Rasters for geospatial data." nói về định dạng dữ liệu khoa học, FASTA cho trình tự gen và raster cho dữ liệu không gian địa lý, không phải thành phần của HDFS. "None of the above" sai vì đã có một mô tả đúng.
AHive
BKafka
CPig
DHBase
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Kafka". Apache Kafka là nền tảng truyền thông điệp phân tán theo mô hình publish subscribe: dữ liệu như log, sự kiện được ghi vào các topic chia thành nhiều phân vùng (partition) trên nhiều broker, mỗi phân vùng được sao chép sang broker khác, nên vừa mở rộng ngang được vừa chịu lỗi khi một máy hỏng, và nhiều hệ thống có thể cùng đọc một dòng dữ liệu. "Hive" là kho dữ liệu trên Hadoop để truy vấn dữ liệu đã lưu bằng HiveQL, không vận chuyển log. "Pig" là nền tảng xử lý dữ liệu bằng ngôn ngữ kịch bản Pig Latin, biến đổi dữ liệu đã nằm trong HDFS. "HBase" là cơ sở dữ liệu NoSQL dạng cột trên HDFS cho đọc ghi ngẫu nhiên theo khoá, là nơi lưu chứ không phải kênh chuyển dữ liệu.
29What is the full form of HDFS?4 lựa chọn
AHadoop File Distribution System
BHadoop File Data System
CHadoop Distributed File System
DHadoop Digital File Store
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Hadoop Distributed File System". HDFS là hệ thống tệp phân tán của Hadoop, tầng lưu trữ của cả hệ sinh thái: tệp lớn được chia thành các khối (mặc định 128 MB từ Hadoop 2), mỗi khối được nhân bản ra nhiều DataNode, thường là ba bản, còn NameNode giữ siêu dữ liệu về vị trí các khối; nhờ vậy dữ liệu chịu được hỏng máy và được đọc song song. "Hadoop File Distribution System" đảo trật tự chữ, gợi ý một hệ thống phân phát tệp chứ không phải hệ thống tệp phân tán. "Hadoop File Data System" bỏ mất chữ Distributed, vốn là đặc trưng quan trọng nhất của HDFS. "Hadoop Digital File Store" là tên không tồn tại, vì HDFS không phải một kho tệp số mà là hệ thống tệp trải trên nhiều máy.
AFault
BEffective error
CLatent error
DFailure
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Latent error". Câu này thuộc thuật ngữ độ tin cậy hệ thống (dependability), không phải kiến thức dữ liệu lớn, và các phương án dùng bộ thuật ngữ kinh điển gồm lỗi tiềm ẩn, lỗi hiệu lực và hỏng hóc. Theo bộ thuật ngữ đó, một chỗ sai đã nằm trong mã nhưng chưa được thực thi tới là latent error (lỗi tiềm ẩn). "Effective error" là trạng thái khi chỗ sai đã được kích hoạt, tức đoạn mã chứa nó chạy và sinh ra dữ liệu hoặc trạng thái sai bên trong hệ thống. "Failure" là khi sai lệch lan tới đầu ra, làm dịch vụ hệ thống lệch khỏi đặc tả và người dùng thấy được. "Fault" trong bộ thuật ngữ kinh điển là nguyên nhân gốc, như sai lầm của người viết mã. Cần nói thẳng chỗ tranh cãi: trong cách gọi mới hơn của cùng lĩnh vực, một khiếm khuyết trong mã chưa được kích hoạt lại được gọi là lỗi gốc đang ngủ (dormant fault), nên "Fault" cũng bảo vệ được; câu này chấm theo bộ thuật ngữ mà chính các phương án đang dùng, nơi trạng thái đó mang tên lỗi tiềm ẩn.
ACheck system compatibility with Cloudera VM requirements
BInstall Cloudera Manager
CDownload the course data sets
DRun Jupyter Notebooks
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Check system compatibility with Cloudera VM requirements". Cloudera VM là máy ảo đóng gói sẵn Hadoop và các công cụ hệ sinh thái, chạy trong phần mềm ảo hoá như VirtualBox; máy ảo này đòi hỏi nhiều bộ nhớ RAM, dung lượng đĩa trống và CPU 64 bit có bật ảo hoá phần cứng, nên việc đầu tiên là kiểm tra máy có đáp ứng các yêu cầu đó không, tránh tải về hàng gigabyte rồi không khởi động được. "Install Cloudera Manager" không phải bước chuẩn bị máy cá nhân, vì công cụ quản trị cụm này được kèm sẵn bên trong máy ảo. "Download the course data sets" chỉ làm sau khi máy ảo đã chạy được để có chỗ nạp dữ liệu. "Run Jupyter Notebooks" là bước thực hành phân tích, nằm ở cuối chuỗi chuẩn bị.