📖 Scenario: You work as a data engineer managing a Hadoop cluster. To protect sensitive data moving between nodes, you need to enable wire encryption. This ensures data is encrypted while traveling across the network, preventing eavesdropping.
🎯 Goal: Enable wire encryption for Hadoop data in transit by configuring the core-site.xml file with the correct properties.
📋 What You'll Learn
Create a dictionary called hadoop_config with initial Hadoop configuration properties.
Add a configuration variable enable_wire_encryption set to true to control encryption activation.
Use a comprehension to add wire encryption properties to hadoop_config only if enable_wire_encryption is true.
Print the final hadoop_config dictionary showing all properties.
💡 Why This Matters
🌍 Real World
Wire encryption protects data moving between Hadoop nodes from being intercepted or read by unauthorized users on the network.
💼 Career
Data engineers and Hadoop administrators must configure secure data transfer to comply with data privacy and security standards.
Progress0 / 4 steps
1
Create initial Hadoop configuration dictionary
Create a dictionary called hadoop_config with these exact entries: 'fs.defaultFS': 'hdfs://localhost:9000', 'hadoop.security.authentication': 'simple', and 'dfs.encrypt.data.transfer': 'false'.
Hadoop
Hint
Use curly braces {} to create a dictionary with the exact keys and values.
2
Add encryption enable flag
Create a variable called enable_wire_encryption and set it to true.
Hadoop
Hint
Just assign true to the variable enable_wire_encryption.
3
Add wire encryption properties conditionally
Use an if statement to check if enable_wire_encryption is true. Inside it, update hadoop_config with these exact entries: 'dfs.encrypt.data.transfer': 'true', 'dfs.encrypt.data.transfer.algorithm': 'AES/CTR/NoPadding', and 'dfs.encrypt.data.transfer.cipher.suites': 'AES/CTR/NoPadding'.
Hadoop
Hint
Use hadoop_config.update() inside the if block to add the encryption properties.
4
Print the final Hadoop configuration
Write a print statement to display the hadoop_config dictionary.
Hadoop
Hint
Use print(hadoop_config) to show the final dictionary.
Practice
(1/5)
1. What is the main purpose of wire encryption in Hadoop data transfer?
easy
A. To compress data for faster transfer
B. To store data permanently on disk
C. To protect data while it moves between computers
D. To backup data automatically
Solution
Step 1: Understand wire encryption concept
Wire encryption protects data during transfer to prevent unauthorized access.
Step 2: Identify the purpose in Hadoop context
In Hadoop, wire encryption secures data moving between nodes, not compression or storage.
Final Answer:
To protect data while it moves between computers -> Option C
Quick Check:
Wire encryption = Data protection in transit [OK]
Hint: Wire encryption means data safety during transfer [OK]
Common Mistakes:
Confusing encryption with compression
Thinking encryption stores data
Mixing encryption with backup
2. Which Hadoop configuration property enables wire encryption for data transfer?
easy
A. dfs.transfer.encryption.active
B. dfs.data.transfer.protection
C. dfs.secure.transfer.enable
D. dfs.encrypt.data.transfer
Solution
Step 1: Recall Hadoop encryption setting
The correct property to enable wire encryption is dfs.encrypt.data.transfer.
Step 2: Compare options with known property
Only dfs.encrypt.data.transfer matches the exact property name used in Hadoop configuration.