当前位置: 首页 > news >正文

郑州做网站软件“跨年”等关键词搜索达年内峰值

郑州做网站软件,“跨年”等关键词搜索达年内峰值,xp系统做网站服务器,网站的主题有哪些进入正文前,感谢宝子们订阅专题、点赞、评论、收藏!关注IT贫道,获取高质量博客内容! 🏡个人主页:含各种IT体系技术,IT贫道_Apache Doris,大数据OLAP体系技术栈,Kerberos安全认证-CSDN博客 &…

 进入正文前,感谢宝子们订阅专题、点赞、评论、收藏!关注IT贫道,获取高质量博客内容!

🏡个人主页:含各种IT体系技术,IT贫道_Apache Doris,大数据OLAP体系技术栈,Kerberos安全认证-CSDN博客

📌订阅:拥抱独家专题,你的订阅将点燃我的创作热情!

👍点赞:赞同优秀创作,你的点赞是对我创作最大的认可!

⭐️ 收藏:收藏原创博文,让我们一起打造IT界的荣耀与辉煌!

✏️评论:留下心声墨迹,你的评论将是我努力改进的方向!


目录

​​​​​​1. Java 读写ClickHouse API

2. Spark 写入 ClickHouse API


​​​​​​1. Java 读写ClickHouse API

Java读取ClickHouse中的数据API 。

1) 首先需要加入maven依赖

<!-- 连接ClickHouse需要驱动包-->
<dependency><groupId>ru.yandex.clickhouse</groupId><artifactId>clickhouse-jdbc</artifactId><version>0.2.4</version>
</dependency>

2) Java 读取ClickHouse单节点表数据

ClickHouseProperties props = new ClickHouseProperties();
props.setUser("default");
props.setPassword("");
BalancedClickhouseDataSource dataSource = new BalancedClickhouseDataSource("jdbc:clickhouse://node1:8123/default", props);
ClickHouseConnection conn = dataSource.getConnection();
ClickHouseStatement statement = conn.createStatement();
ResultSet rs = statement.executeQuery("select id,name,age from test");
while(rs.next()){int id = rs.getInt("id");String name = rs.getString("name");int age = rs.getInt("age");System.out.println("id = "+id+",name = "+name +",age = "+age);
}

3. Java 读取ClickHouse集群表数据

ClickHouseProperties props = new ClickHouseProperties();
props.setUser("default");
props.setPassword("");
BalancedClickhouseDataSource dataSource = new BalancedClickhouseDataSource("jdbc:clickhouse://node1:8123,node2:8123,node3:8123/default", props);
ClickHouseConnection conn = dataSource.getConnection();
ClickHouseStatement statement = conn.createStatement();
ResultSet rs = statement.executeQuery("select id,name from t_cluster");
while(rs.next()){int id = rs.getInt("id");String name = rs.getString("name");System.out.println("id = "+id+",name = "+name );
}

4) Java向ClickHouse 表中写入数据。

# API 操作:ClickHouseProperties props = new ClickHouseProperties();
props.setUser("default");
props.setPassword("");
BalancedClickhouseDataSource dataSource = new BalancedClickhouseDataSource("jdbc:clickhouse://node1:8123/default", props);
ClickHouseConnection conn = dataSource.getConnection();
ClickHouseStatement statement = conn.createStatement();
statement.execute("insert into test values (100,'王五',30)");//可以拼接批量插入多条#查询default库下 test表 数据:node1 :) select * from test;┌──id─┬─name─┬─age─┐│ 100 │ 王五   │  30 │└─────┴──────┴─────┘┌─id─┬─name─┬─age─┐│  1  │ 张三  │  18 ││  2  │ 李四  │  19 │└────┴──────┴─────┘

2. Spark 写入 ClickHouse API

SparkCore写入ClickHouse,可以直接采用写入方式。下面案例是使用SparkSQL将结果存入ClickHouse对应的表中。在ClickHouse中需要预先创建好对应的结果表。

1) 导入依赖

<!-- 连接ClickHouse需要驱动包-->
<dependency><groupId>ru.yandex.clickhouse</groupId><artifactId>clickhouse-jdbc</artifactId><version>0.2.4</version><!-- 去除与Spark 冲突的包 --><exclusions><exclusion><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></exclusion><exclusion><groupId>net.jpountz.lz4</groupId><artifactId>lz4</artifactId></exclusion>
</exclusions>
</dependency><!-- Spark-core -->
<dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.11</artifactId><version>2.3.1</version>
</dependency>
<!-- SparkSQL -->
<dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_2.11</artifactId><version>2.3.1</version>
</dependency>
<!-- SparkSQL  ON  Hive-->
<dependency><groupId>org.apache.spark</groupId><artifactId>spark-hive_2.11</artifactId><version>2.3.1</version>
</dependency>

2) 代码编写:

val session: SparkSession = SparkSession.builder().master("local").appName("test").getOrCreate()
val jsonList = List[String]("{\"id\":1,\"name\":\"张三\",\"age\":18}","{\"id\":2,\"name\":\"李四\",\"age\":19}","{\"id\":3,\"name\":\"王五\",\"age\":20}"
)//将jsonList数据转换成DataSet
import session.implicits._
val ds: Dataset[String] = jsonList.toDS()val df: DataFrame = session.read.json(ds)
df.show()//将结果写往ClickHouse
val url = "jdbc:clickhouse://node1:8123/default"
val table = "test"
val properties = new Properties()
properties.put("driver", "ru.yandex.clickhouse.ClickHouseDriver")
properties.put("user", "default")
properties.put("password", "")
properties.put("socket_timeout", "300000")
df.write.mode(SaveMode.Append).option(JDBCOptions.JDBC_BATCH_INSERT_SIZE, 100000).jdbc(url, table, properties)

👨‍💻如需博文中的资料请私信博主。


http://www.yidumall.com/news/78853.html

相关文章:

  • 软件工程师的就业前景网站seo优化课程
  • 揭阳网站制作专业如何分析百度指数
  • 可以用手机做网站吗北京搜索引擎优化主管
  • 南开网站建设公司网站设计制作一条龙
  • 网站制作的软件湖北疫情最新消息
  • 网站做的和别人一样违法关键词优化排名查询
  • 帝国生成网站地图网络seo优化公司
  • 重新建网站需要转域名吗优化公司网站排名
  • 手机之家宁波seo网络推广报价
  • 境外网站 备案热词搜索排行榜
  • wordpress插件吧长沙seo推广优化
  • 找人做网站产生纠纷算诈骗吗西安seo服务外包
  • 中国建筑设计研究院济源新站seo关键词排名推广
  • 洛阳做网站价格企业营销策划有限公司
  • 上海网站建设 润合肥做网站哪家好
  • 珠海网站制作专业新网站 seo
  • 全能网站建设企业培训的目的和意义
  • 网站设计规划的一般流程什么网站可以发布广告
  • 定制网站案例百度问答平台入口
  • 网站整站优化网络营销题库案例题
  • 做免费的网站教程网络营销课程速成班
  • 主机屋 大网站搜索引擎广告的优缺点
  • 徐州做网站哈尔滨关键词优化报价
  • 环球资源网的网站特色搜索大全引擎地址
  • 承德做网站公司2024年2月疫情又开始了吗
  • 成都微信小程序制作湖南靠谱seo优化
  • 企业展厅公司哪家好娄底地seo
  • 太原便宜做网站的公司郑州seo优化推广
  • 南阳网站建设新闻百度收录网站入口
  • 临沂网站建设有哪些外链购买平台