Unit 5: Introduction to Apache HBase - Practice Quiz

INT312 — Big Data Fundamentals 60 Questions
0 Correct 0 Wrong 60 Left
0/60

1 Which software is required to run Apache HBase?

Installation of Apache HBase Easy
A. Node.js runtime
B. Java Development Kit
C. Ruby interpreter
D. PHP runtime

2 Which script is commonly used to start Apache HBase?

Installation of Apache HBase Easy
A. launch-hive.sh
B. start-hbase.sh
C. run-hadoop.sh
D. open-hbase.sh

3 What type of database is Apache HBase?

HBase Fundamentals Easy
A. Column-oriented NoSQL database
B. Document-only database
C. Graph-oriented database
D. Relational SQL database

4 Apache HBase is designed to provide random, real-time access to data stored mainly in which system?

HBase Fundamentals Easy
A. FAT32
B. Amazon EBS
C. NTFS
D. HDFS

5 What uniquely identifies a row in an HBase table?

HBase Data Model Easy
A. Table name
B. Region number
C. Row key
D. Column value

6 How are related columns grouped in the HBase data model?

HBase Data Model Easy
A. Stored procedures
B. Database views
C. Column families
D. Foreign keys

7 In the HBase column name personal:name, what does name represent?

HBase Data Model Easy
A. Table identifier
B. Column qualifier
C. Row timestamp
D. Column family

8 What allows HBase to keep multiple versions of a cell value?

HBase Data Model Easy
A. Region name
B. Table index
C. Timestamp
D. Foreign key

9 Which HBase component manages administrative operations such as assigning regions?

HBase Architecture Easy
A. DataNode
B. HMaster
C. HBase Shell
D. RegionServer

10 Which HBase component handles read and write requests for table regions?

HBase Architecture Easy
A. NameNode
B. ZooKeeper client
C. RegionServer
D. HMaster

11 What is the primary role of Apache ZooKeeper in an HBase cluster?

HBase Architecture Easy
A. Query compilation
B. Cluster coordination
C. Data visualization
D. File compression

12 Which HBase Shell command creates a new table?

General Commands in Apache HBase Easy
A. generate
B. insert
C. build
D. create

13 Which HBase Shell command retrieves one row using its row key?

General Commands in Apache HBase Easy
A. list
B. scan
C. get
D. describe

14 Which HBase Shell command displays multiple rows from a table?

General Commands in Apache HBase Easy
A. put
B. count
C. scan
D. disable

15 What does an HBase PrefixFilter examine?

Prefix filtering in HBase Easy
A. Length of column values
B. Beginning of row keys
C. Number of column families
D. Ending of table names

16 Which filter would select row keys beginning with user?

Prefix filtering in HBase Easy
A. PrefixFilter('user')
B. QualifierFilter('user')
C. FamilyFilter('user')
D. ValueFilter('user')

17 What is the purpose of SingleColumnValueFilter in HBase?

Single value column filtering in HBase Easy
A. Create versions of a row
B. Filter rows by a column value
C. Rename a selected column family
D. Sort tables by their names

18 Which information is specified when using SingleColumnValueFilter?

Single value column filtering in HBase Easy
A. Family, qualifier, operator, and comparator
B. Table, region, server, and port
C. Row, timestamp, user, and password
D. Master, backup, block, and file

19 What does TTL mean in Apache HBase?

TTL for columns in HBase Easy
A. Total Transaction Length
B. Time To Live
C. Temporary Table Link
D. Table Transfer Limit

20 At which level is TTL commonly configured in the HBase schema?

TTL for columns in HBase Easy
A. Row key level
B. Column family level
C. RegionServer level
D. ZooKeeper level

21 After installing HBase, running start-hbase.sh fails with an error indicating that Java cannot be found. Which configuration should be checked first?

Installation of Apache HBase Medium
A. The column family settings in the HBase shell
B. The RegionServer heap data in ZooKeeper
C. The hbase.rootdir setting in hbase-site.xml
D. The JAVA_HOME setting in hbase-env.sh

22 An administrator wants HBase to run in pseudo-distributed mode and store its data in HDFS. Which configuration is most appropriate?

Installation of Apache HBase Medium
A. Set hbase.cluster.distributed to false and use a local path
B. Set hbase.cluster.distributed to true and remove hbase.rootdir
C. Set hbase.cluster.distributed to true and use an HDFS root path
D. Set hbase.cluster.distributed to false and disable ZooKeeper

23 A banking application must update two different HBase rows as one indivisible transaction. Which limitation must the designer consider?

HBase Fundamentals Medium
A. HBase guarantees atomicity only within a single row
B. HBase guarantees atomicity across all rows in a table
C. HBase guarantees atomicity only within a column family
D. HBase guarantees atomicity across all rows in a region

24 A table stores optional attributes, and most rows contain values for only a few columns. Why is HBase suitable for this design?

HBase Fundamentals Medium
A. It stores empty values for every undefined column
B. It converts missing columns into zero-valued cells
C. It physically stores only cells that contain values
D. It requires every row to use the same qualifiers

25 The value of profile:email for row user42 is updated several times. What distinguishes the stored versions of this cell?

HBase Data Model Medium
A. A distinct timestamp
B. A unique region name
C. A different row key
D. A separate table name

26 A table receives very heavy sequential writes using row keys such as 000001, 000002, and 000003. Which redesign best reduces the risk of a single-region hotspot?

HBase Data Model Medium
A. Increase the number of versions for each cell
B. Replace timestamps with sequential integer values
C. Move every qualifier into its own column family
D. Add a hash or salt prefix to each row key

27 A table has the column families info and metrics. Which item can be introduced dynamically without altering the table schema?

HBase Data Model Medium
A. A new table namespace
B. A qualifier under info
C. A region assignment rule
D. A replacement row-key type

28 A client writes a value to HBase using normal durability. Which sequence best describes the RegionServer write path?

HBase Architecture Medium
A. Write to the HMaster, update hbase:meta, and then split the region
B. Append to the WAL, update the MemStore, and later flush to HFiles
C. Write to an HFile, update ZooKeeper, and then update the WAL
D. Update the BlockCache, compact the region, and then append to HDFS

29 A RegionServer fails before its MemStore has been flushed. Which component is primarily used to recover the unflushed edits?

HBase Architecture Medium
A. The BlockCache
B. The HFile index
C. The Bloom filter
D. The Write-Ahead Log

30 A region grows beyond its configured size and is split. Which outcome is expected?

HBase Architecture Medium
A. The region becomes two daughter regions covering adjacent key ranges
B. The HFiles are converted into ZooKeeper transaction records
C. The column families move into separate independent namespaces
D. The table becomes two tables containing identical row-key ranges

31 Which HBase component is mainly responsible for assigning regions to RegionServers and coordinating load balancing?

HBase Architecture Medium
A. HMaster
B. MemStore
C. BlockCache
D. DataNode

32 Which HBase shell command correctly creates a table named orders with column families info and items?

General Commands in Apache HBase Medium
A. put 'orders', 'info', 'items'
B. create 'orders', 'info', 'items'
C. alter 'orders', 'info:items'
D. create 'orders:info', 'orders:items'

33 Which command correctly stores PAID in column info:status of row order101 in table orders?

General Commands in Apache HBase Medium
A. get 'orders', 'order101', 'info:status', 'PAID'
B. scan 'orders', 'order101', 'info:status', 'PAID'
C. create 'orders', 'order101', 'info:status', 'PAID'
D. put 'orders', 'order101', 'info:status', 'PAID'

34 An administrator executes drop 'archive' while the archive table is enabled. What should be done first?

General Commands in Apache HBase Medium
A. Run truncate 'archive'
B. Run compact 'archive'
C. Run unassign 'archive'
D. Run disable 'archive'

35 A table contains row keys such as cust#100, cust#205, and order#300. Which scan returns only rows whose keys begin with cust#?

Prefix filtering in HBase Medium
A. scan 'records', {FILTER => "PrefixFilter('cust#')"}
B. scan 'records', {FILTER => "FamilyFilter('cust#')"}
C. scan 'records', {FILTER => "QualifierFilter('cust#')"}
D. scan 'records', {FILTER => "ValueFilter('cust#')"}

36 A scan uses PrefixFilter('sensor#12'). Which row key is guaranteed to match this filter?

Prefix filtering in HBase Medium
A. site#sensor#12
B. sensor#12-east
C. sensor#012
D. east-sensor#12

37 A scan should return rows where info:status equals PAID. Which filter is designed for this requirement?

Single value column filtering in HBase Medium
A. ColumnPrefixFilter('PAID')
B. FamilyFilter(=, 'binary:PAID')
C. PrefixFilter('info:status')
D. SingleColumnValueFilter('info', 'status', =, 'binary:PAID')

38 A SingleColumnValueFilter searches for info:status = ACTIVE, but rows missing info:status must also be excluded. Which setting is required?

Single value column filtering in HBase Medium
A. Set filterIfMissing to true
B. Set latestVersionOnly to true
C. Set filterIfMissing to false
D. Set latestVersionOnly to false

39 A column family has TTL => 3600. A cell uses a timestamp from two hours ago. How should HBase treat the cell during a normal read?

TTL for columns in HBase Medium
A. Return it because deletion requires a manual command
B. Move it automatically into a different column family
C. Return it until the table is disabled and enabled
D. Treat it as expired and omit it from the result

40 Which HBase shell command configures the events column family of table logs to retain cells for one day?

TTL for columns in HBase Medium
A. create 'logs', {NAME => 'events', BLOCKSIZE => 86400}
B. alter 'logs', {NAME => 'events', TTL => 86400}
C. alter 'logs', {NAME => 'events', VERSIONS => 86400}
D. put 'logs', 'events', 'TTL', 86400

41 A fully distributed HBase installation starts HMaster successfully, but RegionServers repeatedly fail because they cannot access the configured root directory. Which configuration is the most appropriate?

Installation of Apache HBase Hard
A. Set hbase.rootdir to the HMaster's local filesystem directory
B. Set hbase.rootdir to the same HDFS URI on every HBase node
C. Set hbase.rootdir to a separate local directory on each RegionServer
D. Set hbase.rootdir to the ZooKeeper data directory on every node

42 An administrator configures hbase.cluster.distributed as true and points hbase.rootdir to HDFS. HBase daemons start, but RegionServers cannot register reliably because different nodes resolve the ZooKeeper hosts differently. What is the best corrective action?

Installation of Apache HBase Hard
A. Configure a consistent reachable hbase.zookeeper.quorum on every HBase node
B. Replace the ZooKeeper quorum with the HDFS NameNode RPC address
C. Configure a unique hbase.zookeeper.quorum value for each RegionServer
D. Disable ZooKeeper because HMaster can track every RegionServer directly

43 A transaction updates two qualifiers in the same row and one qualifier in another row. Which atomicity guarantee does native HBase provide?

HBase Fundamentals Hard
A. The qualifiers in one row can be updated atomically, but the second row is separate
B. All qualifiers across both rows are committed atomically as one transaction
C. Each individual byte in every qualifier is committed as a separate transaction
D. Only updates within the same HFile are guaranteed to be committed atomically

44 A client writes a row successfully and immediately performs a strongly consistent Get for that row. The MemStore has not yet been flushed to an HFile. What should the client observe?

HBase Fundamentals Hard
A. No value, because the WAL cannot be read until a region flush
B. The old value, because only HFiles participate in consistent reads
C. The new value, because reads consult in-memory and persisted stores
D. An exception, because reads are blocked while a MemStore is dirty

45 Two cells have the same row key, column family, and qualifier but timestamps of 100 and 200. Assuming no delete markers and VERSIONS => 1, which cell is returned by a normal read?

HBase Data Model Hard
A. The cell at timestamp 200, because it is the newest version
B. Both cells, because timestamps form independent columns
C. Neither cell, because duplicate coordinates are rejected
D. The cell at timestamp 100, because it was written first

46 A table uses monotonically increasing timestamps as the leading bytes of each row key. Under heavy ingestion, one RegionServer receives nearly all writes. Which redesign most directly distributes the write load while preserving timestamp-based retrieval through controlled scans?

HBase Data Model Hard
A. Move the timestamp from the row key into the column family name
B. Store all records under one row and use timestamps as cell versions
C. Prefix each key with a bounded hash bucket and scan the required buckets
D. Increase the maximum number of versions for every column family

47 A table has column families profile and metrics. Most requests read only profile, while metrics is large and rarely accessed. Why can separating them into different families improve read behavior?

HBase Data Model Hard
A. Each family becomes a relational table joined by the original HBase row key
B. Each family has separate stores and HFiles, so unrequested family data can be skipped
C. Each family is assigned to a different RegionServer for every row automatically
D. Each family uses a separate row-key ordering that eliminates region hotspots

48 Which sequence best represents the durable write path for a normal HBase Put before any MemStore flush occurs?

HBase Architecture Hard
A. ZooKeeper stores the cell, HMaster assigns it, and RegionServer acknowledges
B. RegionServer writes an HFile, updates ZooKeeper, and acknowledges the client
C. HMaster appends to the WAL, updates BlockCache, and acknowledges the client
D. RegionServer appends to the WAL, updates MemStore, and acknowledges the client

49 A RegionServer crashes after acknowledging writes that remain only in its WAL and MemStores. How are those unflushed writes normally recovered?

HBase Architecture Hard
A. The HMaster reconstructs values from ZooKeeper's region membership records
B. The NameNode converts WAL blocks directly into complete region HFiles
C. The WAL is split, and relevant edits are replayed when regions are reassigned
D. Clients resend every acknowledged mutation after detecting the server failure

50 A client has stale region-location information because a table region recently split. What is the expected recovery behavior?

HBase Architecture Hard
A. The HMaster proxies every subsequent read until both daughter regions compact
B. The parent region continues serving all requests until every client cache expires
C. The client asks ZooKeeper to return the row value from the parent region
D. The client refreshes region metadata and retries against the appropriate daughter region

51 A Store accumulates many small HFiles, increasing read amplification. Which HBase operation most directly reduces the number of HFiles while also permanently removing eligible delete markers and expired cells?

HBase Architecture Hard
A. A WAL roll that starts a new write-ahead log
B. A MemStore flush that creates another Store file
C. A major compaction that rewrites all Store files
D. A region assignment that moves files between servers

52 A table events has presplit region boundaries that must be retained while all data is removed. Which HBase shell command is designed for this operation?

General Commands in Apache HBase Hard
A. truncate 'events'
B. truncate_preserve 'events'
C. major_compact 'events'
D. deleteall 'events', '*'

53 Rows have keys a10, a20, b10, and b20. What does the shell command scan 't', {STARTROW => 'a20', STOPROW => 'b20'} return, assuming no filters?

General Commands in Apache HBase Hard
A. Rows a10, a20, and b10, because STARTROW is advisory
B. Rows a20 and b10, because STOPROW is exclusive
C. Rows a10 and a20, because both bounds are prefixes
D. Rows a20, b10, and b20, because both bounds are inclusive

54 An administrator wants to remove table archive completely. Which command sequence satisfies the normal HBase shell state requirements?

General Commands in Apache HBase Hard
A. unassign 'archive' followed by drop 'archive'
B. deleteall 'archive' followed by drop 'archive'
C. major_compact 'archive' followed by drop 'archive'
D. disable 'archive' followed by drop 'archive'

55 A very large table is scanned with only PrefixFilter('acct#42#'). The matching rows occupy a narrow contiguous row-key interval. Which change most directly reduces unnecessary row traversal?

Prefix filtering in HBase Hard
A. Increase VERSIONS so the filter can compare additional cell versions
B. Add matching start and stop row bounds while retaining the prefix filter
C. Move the prefix value into a qualifier and use the same row filter
D. Run a major compaction before every prefix-filtered table scan

56 Row keys are arbitrary byte arrays, and a desired prefix ends entirely in 0xFF bytes. Why can computing an exclusive stop row for that prefix be problematic?

Prefix filtering in HBase Hard
A. HBase converts 0xFF to UTF-8 replacement characters before comparing row keys
B. That prefix may have no finite lexicographic successor, so a filter may still be required
C. Prefix filters cannot compare binary row keys unless all bytes are printable ASCII
D. A stop row ending in 0xFF is interpreted as inclusive by the RegionServer

57 A SingleColumnValueFilter checks whether status:value equals ACTIVE. Some rows do not contain status:value, and those rows must be excluded. Which setting is essential?

Single value column filtering in HBase Hard
A. Set latestVersionOnly to false
B. Set filterIfMissing to true
C. Set filterIfMissing to false
D. Set the comparison operator to NO_OP

58 A column has an older version equal to APPROVED and a latest version equal to REVOKED. A SingleColumnValueFilter compares against APPROVED. Which configuration allows the older matching version to make the row pass?

Single value column filtering in HBase Hard
A. Set filterIfMissing to false and compare with NO_OP
B. Set latestVersionOnly to true and request only one version
C. Set latestVersionOnly to false and request enough versions
D. Set filterIfMissing to true and request only one version

59 A column family has TTL => 3600. A client writes a cell at wall-clock time 10,000 but explicitly assigns the cell timestamp 5,000. At wall-clock time 10,100, how is TTL eligibility determined?

TTL for columns in HBase Hard
A. The cell remains valid because custom timestamps disable family TTL
B. The cell is expired only after the hosting region performs a split
C. The cell remains valid because TTL is evaluated from RPC arrival time
D. The cell is expired because TTL is evaluated from its assigned timestamp

60 A column family is configured with TTL => 86400, MIN_VERSIONS => 1, and VERSIONS => 3. All versions of a qualifier are older than the TTL. What is the intended effect of MIN_VERSIONS => 1?

TTL for columns in HBase Hard
A. At least one version can be retained even though all versions exceed the TTL
B. All three versions remain forever because MIN_VERSIONS overrides compaction
C. The newest version receives a new timestamp whenever it reaches the TTL
D. Exactly one version is deleted whenever the TTL interval elapses