IDEA連線Hadoop
因為一些學習的需要,用到了idea連線hadoop,並對它進行一些相關的讀寫操作,總結一下大概的流程。
一、使hadoop叢集可以被遠端訪問,配置一些檔案,可以參考一些其它博主的教程,記住配置的URL或者IP地址以及遠端訪問用到的埠號。
二、在idea中建一個連線,測試一下是否可以連線hadoop
注意URL、密碼、使用者,URL寫jdbc:hive2://IP:埠,ip可以寫成自己配的對映
三、新建測試類
package com.hua;
import org.junit.Test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class test {
@Test
public void select()
{
String url = "jdbc:hive2://node1:10000/default";
String username = "root";
String password = "hadoop";
// 建立資料庫連線
try {
Connection connection = DriverManager.getConnection(url, username, password);
System.out.println("連線成功!");
// 執行查詢
Statement statement = connection.createStatement();
String sql = "SELECT * FROM me";
ResultSet resultSet = statement.executeQuery(sql);
// 處理查詢結果
while (resultSet.next()) {
// 獲取結果集中的資料
int empId = resultSet.getInt("id");
String empName = resultSet.getString("name");
// 輸出結果
System.out.println("Employee ID: " + empId);
System.out.println("Employee Name: " + empName);
}
// 關閉連線
resultSet.close();
statement.close();
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public void delete()
{
}
public void add()
{
}
public void update()
{
}
}
連線成功
四、對資料庫的修改以及刪除操作,不用用sql中的delete以及update,hadoop不允許,可以搜一搜insert overwrite嘗試一下,下面有相關的例項,大家可以瞭解一下
- 更新操作:
假設有一個名為employees
的表,其中包含員工的資訊(id、name、salary等)。要更新表中id為1的員工的薪水為5000,可以使用以下語句:
sql
INSERT OVERWRITE TABLE employees | |
SELECT | |
id, | |
name, | |
CASE | |
WHEN id = 1 THEN 5000 | |
ELSE salary | |
END AS salary | |
FROM employees; |
上述語句將從employees
表中選擇所有欄位,並使用CASE語句將id為1的員工的薪水更新為5000,其他員工的薪水保持不變。然後,將結果寫回到原始表employees
,實現了更新操作。
- 刪除操作:
假設有一個名為sales
的表,其中記錄了銷售資料。要刪除表中所有銷售額小於100的記錄,可以使用以下語句:
INSERT OVERWRITE TABLE sales | |
SELECT * | |
FROM sales | |
WHERE amount >= 100; |
原文作者:杳無音訊
原文連結:https://www.cnblogs.com/130-gzh/p/17694143.html