最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring Boot與Spark、Cassandra系統(tǒng)集成開發(fā)示例

 更新時間:2018年02月01日 10:45:25   作者:汪云飛  
本文演示以Spark作為分析引擎,Cassandra作為數(shù)據(jù)存儲,而使用Spring Boot來開發(fā)驅(qū)動程序的示例。對spring boot 與spark cassandra集成開發(fā)示例代碼感興趣的朋友跟著腳本之家小編一起學(xué)習(xí)吧

本文演示以Spark作為分析引擎,Cassandra作為數(shù)據(jù)存儲,而使用Spring Boot來開發(fā)驅(qū)動程序的示例。

1.前置條件

  • 安裝Spark(本文使用Spark-1.5.1,如安裝目錄為/opt/spark)
  • 安裝Cassandra(3.0+)

創(chuàng)建keyspace

CREATE KEYSPACE hfcb WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 3 };

創(chuàng)建table

CREATE TABLE person (
 id text PRIMARY KEY,
 first_name text,
 last_name text
);

插入測試數(shù)據(jù)

insert into person (id,first_name,last_name) values('1','wang','yunfei');
insert into person (id,first_name,last_name) values('2','peng','chao');
insert into person (id,first_name,last_name) values('3','li','jian');
insert into person (id,first_name,last_name) values('4','zhang','jie');
insert into person (id,first_name,last_name) values('5','liang','wei');

2.spark-cassandra-connector安裝

讓Spark-1.5.1能夠使用Cassandra作為數(shù)據(jù)存儲,需要加上下面jar包的依賴(示例將包放置于 /opt/spark/managed-lib/ 目錄,可任意):

cassandra-clientutil-3.0.2.jar
cassandra-driver-core-3.1.4.jar
guava-16.0.1.jar
cassandra-thrift-3.0.2.jar 
joda-convert-1.2.jar
joda-time-2.9.9.jar
libthrift-0.9.1.jar
spark-cassandra-connector_2.10-1.5.1.jar

在 /opt/spark/conf 目錄下,新建 spark-env.sh 文件,輸入下面內(nèi)容

SPARK_CLASSPATH=/opt/spark/managed-lib/*

3.Spring Boot應(yīng)用開發(fā)

添加 spark-cassandra-connector 和 spark 依賴

<dependency>
   <groupId>com.datastax.spark</groupId>
   <artifactId>spark-cassandra-connector_2.10</artifactId>
   <version>1.5.1</version>
  </dependency>
  <dependency>
   <groupId>org.apache.spark</groupId>
   <artifactId>spark-core_2.10</artifactId>
   <version>1.5.1</version>
  </dependency>
  <dependency>
   <groupId>org.apache.spark</groupId>
   <artifactId>spark-sql_2.10</artifactId>
   <version>1.5.1</version>
  </dependency>

在 application.yml 中配置 spark 與 cassandra 路徑

spark.master: spark://master:7077
cassandra.host: 192.168.1.140
cassandra.keyspace: hfcb

此處特別說明 spark://master:7077 是域名形式而不是ip地址,可修改本地 hosts 文件將 master 與 ip 地址映射。

配置 SparkContext 和 CassandraSQLContext

@Configuration
public class SparkCassandraConfig {
 @Value("${spark.master}")
 String sparkMasterUrl;
 @Value("${cassandra.host}")
 String cassandraHost;
 @Value("${cassandra.keyspace}")
 String cassandraKeyspace;
 @Bean
 public JavaSparkContext javaSparkContext(){
  SparkConf conf = new SparkConf(true)
    .set("spark.cassandra.connection.host", cassandraHost)
//    .set("spark.cassandra.auth.username", "cassandra")
//    .set("spark.cassandra.auth.password", "cassandra")
    .set("spark.submit.deployMode", "client");
  JavaSparkContext context = new JavaSparkContext(sparkMasterUrl, "SparkDemo", conf);
  return context;
 }
 @Bean
 public CassandraSQLContext sqlContext(){
  CassandraSQLContext cassandraSQLContext = new CassandraSQLContext(javaSparkContext().sc());
  cassandraSQLContext.setKeyspace(cassandraKeyspace);
  return cassandraSQLContext;
 }
 }

簡單調(diào)用

@Repository
public class PersonRepository {
 @Autowired
 CassandraSQLContext cassandraSQLContext;
 public Long countPerson(){
  DataFrame people = cassandraSQLContext.sql("select * from person order by id");
  return people.count();
 }
}

啟動即可如常規(guī)Spring Boot程序一樣執(zhí)行。

源碼地址: https://github.com/wiselyman/spring-spark-cassandra.git

總結(jié)

以上所述是小編給大家介紹的Spring Boot與Spark、Cassandra系統(tǒng)集成開發(fā)示例,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 關(guān)于SpringBoot使用@Async的總結(jié)

    關(guān)于SpringBoot使用@Async的總結(jié)

    這篇文章主要介紹了關(guān)于SpringBoot使用@Async的總結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Spring boot將配置屬性注入到bean類中

    Spring boot將配置屬性注入到bean類中

    本篇文章主要介紹了Spring boot將配置屬性注入到bean類中,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • SpringBoot集成Nacos的詳細教程

    SpringBoot集成Nacos的詳細教程

    這篇文章主要介紹了SpringBoot集成Nacos的詳細教程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • 詳解SpringBoot整合RabbitMQ如何實現(xiàn)消息確認

    詳解SpringBoot整合RabbitMQ如何實現(xiàn)消息確認

    這篇文章主要介紹了SpringBoot整合RabbitMQ是如何實現(xiàn)消息確認的,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Java實現(xiàn)優(yōu)雅的參數(shù)校驗方法詳解

    Java實現(xiàn)優(yōu)雅的參數(shù)校驗方法詳解

    這篇文章主要為大家詳細介紹了Java語言如何實現(xiàn)優(yōu)雅的參數(shù)校驗,文中的示例代碼講解詳細,對我們學(xué)習(xí)Java有一定是幫助,需要的可以參考一下
    2022-06-06
  • SpringBoot?實現(xiàn)CAS?Server統(tǒng)一登錄認證的詳細步驟

    SpringBoot?實現(xiàn)CAS?Server統(tǒng)一登錄認證的詳細步驟

    ??CAS(Central?Authentication?Service)中心授權(quán)服務(wù),是一個開源項目,目的在于為Web應(yīng)用系統(tǒng)提供一種可靠的單點登錄,這篇文章主要介紹了SpringBoot?實現(xiàn)CAS?Server統(tǒng)一登錄認證,需要的朋友可以參考下
    2024-02-02
  • ByteArrayInputStream簡介和使用_動力節(jié)點Java學(xué)院整理

    ByteArrayInputStream簡介和使用_動力節(jié)點Java學(xué)院整理

    ByteArrayInputStream 是字節(jié)數(shù)組輸入流。它繼承于InputStream。這篇文章主要介紹了ByteArrayInputStream簡介和使用_動力節(jié)點Java學(xué)院整理,需要的朋友可以參考下
    2017-05-05
  • spring cloud zuul 與 sentinel的結(jié)合使用操作

    spring cloud zuul 與 sentinel的結(jié)合使用操作

    這篇文章主要介紹了spring cloud zuul 與 sentinel 的結(jié)合使用操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • 教你利用SpringBoot寫一個屬于自己的Starter

    教你利用SpringBoot寫一個屬于自己的Starter

    如果我們將可獨立于業(yè)務(wù)代碼之外的功配置模塊封裝成一個個starter,復(fù)用的時候只需要將其在pom中引用依賴即可,SpringBoot為我們完成自動裝配,簡直不要太爽,這篇文章主要給大家介紹了關(guān)于如何利用SpringBoot寫一個屬于自己的Starter,需要的朋友可以參考下
    2022-03-03
  • RestTemplate使用Proxy代理作為跳板發(fā)送請求

    RestTemplate使用Proxy代理作為跳板發(fā)送請求

    這篇文章主要為大家介紹了RestTemplate使用代理proxy作為跳板發(fā)送請求的方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03

最新評論

大厂| 同德县| 宁乡县| 安顺市| 沾益县| 鹿邑县| 称多县| 吐鲁番市| 阆中市| 高平市| 宜都市| 长阳| 河源市| 加查县| 武功县| 克拉玛依市| 临澧县| 德江县| 沭阳县| 杨浦区| 建德市| 日土县| 乌拉特前旗| 井陉县| 岐山县| 金华市| 营口市| 娱乐| 宜宾县| 板桥市| 黎平县| 三明市| 三门县| 湟源县| 古田县| 陆川县| 扶余县| 师宗县| 静宁县| 宜春市| 大余县|