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. Java Development Kit
B. Node.js runtime
C. Ruby interpreter
D. PHP runtime

2 Which script is commonly used to start Apache HBase?

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

3 What type of database is Apache HBase?

HBase Fundamentals Easy
A. Graph-oriented database
B. Document-only database
C. Column-oriented NoSQL 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. NTFS
B. Amazon EBS
C. FAT32
D. HDFS

5 What uniquely identifies a row in an HBase table?

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

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

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

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

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

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

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

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

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

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

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

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

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

12 Which HBase Shell command creates a new table?

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

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

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

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

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

15 What does an HBase PrefixFilter examine?

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

16 Which filter would select row keys beginning with user?

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

17 What is the purpose of SingleColumnValueFilter in HBase?

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

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. Master, backup, block, and file
D. Row, timestamp, user, and password

19 What does TTL mean in Apache HBase?

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

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

TTL for columns in HBase Easy
A. ZooKeeper level
B. Row key level
C. Column family level
D. RegionServer 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 hbase.rootdir setting in hbase-site.xml
B. The JAVA_HOME setting in hbase-env.sh
C. The RegionServer heap data in ZooKeeper
D. The column family settings in the HBase shell

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 true and remove hbase.rootdir
B. Set hbase.cluster.distributed to false and use a local path
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 region
C. HBase guarantees atomicity only within a column family
D. HBase guarantees atomicity across all rows in a table

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 requires every row to use the same qualifiers
C. It converts missing columns into zero-valued cells
D. It physically stores only cells that contain values

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 separate table name
B. A different row key
C. A unique region name
D. A distinct timestamp

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. Replace timestamps with sequential integer values
B. Increase the number of versions for each cell
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 qualifier under info
B. A new table namespace
C. A replacement row-key type
D. A region assignment rule

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. Write to an HFile, update ZooKeeper, and then update the WAL
C. Update the BlockCache, compact the region, and then append to HDFS
D. Append to the WAL, update the MemStore, and later flush to HFiles

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 Bloom filter
B. The Write-Ahead Log
C. The HFile index
D. The BlockCache

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

HBase Architecture Medium
A. The column families move into separate independent namespaces
B. The region becomes two daughter regions covering adjacent key ranges
C. The HFiles are converted into ZooKeeper transaction records
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. BlockCache
C. DataNode
D. MemStore

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

General Commands in Apache HBase Medium
A. alter 'orders', 'info:items'
B. create 'orders', 'info', 'items'
C. create 'orders:info', 'orders:items'
D. put 'orders', 'info', '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. put 'orders', 'order101', 'info:status', 'PAID'
C. create 'orders', 'order101', 'info:status', 'PAID'
D. scan '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 unassign 'archive'
B. Run compact 'archive'
C. Run disable 'archive'
D. Run truncate '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 => "QualifierFilter('cust#')"}
C. scan 'records', {FILTER => "ValueFilter('cust#')"}
D. scan 'records', {FILTER => "FamilyFilter('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. east-sensor#12
D. sensor#012

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. PrefixFilter('info:status')
C. FamilyFilter(=, 'binary:PAID')
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 latestVersionOnly to false
B. Set filterIfMissing to true
C. Set filterIfMissing to false
D. Set latestVersionOnly to true

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. Treat it as expired and omit it from the result
C. Return it until the table is disabled and enabled
D. Move it automatically into a different column family

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. put 'logs', 'events', 'TTL', 86400
C. alter 'logs', {NAME => 'events', TTL => 86400}
D. alter 'logs', {NAME => 'events', VERSIONS => 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 ZooKeeper data directory on every node
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 HMaster's local filesystem directory

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. Disable ZooKeeper because HMaster can track every RegionServer directly
B. Replace the ZooKeeper quorum with the HDFS NameNode RPC address
C. Configure a consistent reachable hbase.zookeeper.quorum on every HBase node
D. Configure a unique hbase.zookeeper.quorum value for each RegionServer

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. Only updates within the same HFile are guaranteed to be committed atomically
B. All qualifiers across both rows are committed atomically as one transaction
C. The qualifiers in one row can be updated atomically, but the second row is separate
D. Each individual byte in every qualifier is committed as a separate transaction

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. An exception, because reads are blocked while a MemStore is dirty
C. The new value, because reads consult in-memory and persisted stores
D. The old value, because only HFiles participate in consistent reads

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. Prefix each key with a bounded hash bucket and scan the required buckets
B. Move the timestamp from the row key into the column family name
C. Store all records under one row and use timestamps as cell versions
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 has separate stores and HFiles, so unrequested family data can be skipped
B. Each family becomes a relational table joined by the original HBase row key
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. HMaster appends to the WAL, updates BlockCache, and acknowledges the client
B. RegionServer appends to the WAL, updates MemStore, and acknowledges the client
C. ZooKeeper stores the cell, HMaster assigns it, and RegionServer acknowledges
D. RegionServer writes an HFile, updates ZooKeeper, 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. Clients resend every acknowledged mutation after detecting the server failure
B. The WAL is split, and relevant edits are replayed when regions are reassigned
C. The NameNode converts WAL blocks directly into complete region HFiles
D. The HMaster reconstructs values from ZooKeeper's region membership records

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 client asks ZooKeeper to return the row value from the parent region
C. The client refreshes region metadata and retries against the appropriate daughter region
D. The parent region continues serving all requests until every client cache expires

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 region assignment that moves files between servers
B. A major compaction that rewrites all Store files
C. A WAL roll that starts a new write-ahead log
D. A MemStore flush that creates another Store file

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. deleteall 'events', '*'
B. truncate 'events'
C. truncate_preserve 'events'
D. major_compact '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 a20 and b10, because STOPROW is exclusive
B. Rows a10 and a20, because both bounds are prefixes
C. Rows a10, a20, and b10, because STARTROW is advisory
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. major_compact 'archive' followed by drop 'archive'
B. disable 'archive' followed by drop 'archive'
C. deleteall 'archive' followed by drop 'archive'
D. unassign '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. Run a major compaction before every prefix-filtered table scan
B. Increase VERSIONS so the filter can compare additional cell versions
C. Move the prefix value into a qualifier and use the same row filter
D. Add matching start and stop row bounds while retaining the prefix filter

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

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 true and request only one version
B. Set filterIfMissing to false and compare with NO_OP
C. Set latestVersionOnly to true and request only one version
D. Set latestVersionOnly to false and request enough versions

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 TTL is evaluated from RPC arrival time
B. The cell is expired because TTL is evaluated from its assigned timestamp
C. The cell is expired only after the hosting region performs a split
D. The cell remains valid because custom timestamps disable family TTL

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. The newest version receives a new timestamp whenever it reaches the TTL
B. At least one version can be retained even though all versions exceed the TTL
C. All three versions remain forever because MIN_VERSIONS overrides compaction
D. Exactly one version is deleted whenever the TTL interval elapses