Artikel ini menunjukkan contoh menggunakan Spark sebagai mesin analisis, cassandra sebagai penyimpanan data, dan menggunakan boot spring untuk mengembangkan driver.
1. Prasyarat
Buat ruang kunci
Buat Keyspace HFCB dengan replikasi = {'class': 'SimpleStry', 'Replication_factor': 3};Buat tabel
Buat Table Person (Teks Teks ID Kunci Utama, Teks First_Name, Teks Last_Name);
Masukkan data uji
Sisipkan ke orang (id, first_name, last_name) values ('1', 'wang', 'yunfei'); masukkan ke orang (id, first_name, last_name) nilai ('2', 'Peng', 'chao'); masukkan ke orang (id, pertama, jia, last_name) value ('3', '3', ',', ',', 'ID') (ID First_name, '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', ' nilai ('4', 'zhang', 'jie'); masukkan ke orang (id, first_name, last_name) value ('5', 'Liang', 'wei'); masukkan ke orang (id, first_name, last_name) nilai ('5', 'liang', 'wei');2.Park-Cassandra-Connector Instalasi
Untuk mengaktifkan Spark-1.5.1 untuk menggunakan Cassandra sebagai penyimpanan data, Anda perlu menambahkan dependensi paket JAR berikut (contoh untuk menempatkan paket dalam direktori/opt/spark/dikelola/dikelola, yang dapat sewenang-wenang):
cassandra-clientutil-3.0.2.jarcassandra-driver-core-3.1.4.jarguava-16.0.1.jarcassandra-thrift-3.0.2.jar joda-convert-1.2.jarjoda-time-2.9.9.jarlibthrift-0.9.1.jarspark-cassandra-connector_2.10-1.5.1.jar
Di direktori/opt/spark/conf, buat file spark-env.sh baru dan masukkan konten berikut
Spark_classpath =/opt/spark/dikelola-lib/*
3. Pengembangan Aplikasi Boot Musim Semi
Tambahkan konektor spark-cassandra dan ketergantungan percikan
<dependency> <GroupId> com.datastax.spark </groupid> <ArtifactId> spark-cassandra-connector_2.10 </arttifactid> <version> 1.5.1 </version> </dependency> <TRIPEPID> org.apache.spark </groupid> <Arttifactid> <cortif-core_2.15.15. <dependency> <GroupId> org.apache.spark </groupid> <ArTifactId> spark-sql_2.10 </artifactid> <version> 1.5.1 </version> </dependency> <peramping> <roupid> org.apache.spark </groupId> <ArTifacTID> Spark-SQL_2.10 </ArtiCHAD.Spark </groupId> <ArTifacTID> Spark-sql_2.10 </artifact
Konfigurasikan jalur Spark dan Cassandra di Application.yml
Spark.Master: Spark: // Master: 7077Cassandra.host: 192.168.1.140cassandra.keyspace: hfcb
Di sini kami secara khusus menyatakan bahwa Spark: // Master: 7077 adalah nama domain daripada alamat IP. Anda dapat memodifikasi file host lokal untuk memetakan master dan alamat IP.
Mengkonfigurasi SparkContext dan CassandrasqlContext
@ConfigurationPublic kelas sparkcassandraconfig {@value ("$ {spark.master}") string sparkmasterurl; @Value ("$ {cassandra.host}") string cassandrahost; @Value ("$ {cassandra.keyspace}") string cassandrakeyspace; @Bean JavasparkContext javasparkContext () {sparkconf conf = new sparkconf (true) .set ("spark.cassandra.connection.host", cassandrahost) // .set ("spark.cassandra.auth.username", "cassandra")/ .set.sandra. .set ("spark.submit.deploymode", "klien"); JavasparkContext Context = JavasparkContext baru (SparkMasterUrl, "SparkDemo", conf); konteks pengembalian; } @Bean cassandrasqlcontext public sqlcontext () {cassandrasqlcontext cassandrasqlcontext = cassandrasqlcontext baru (javasparkcontext (). Sc ()); cassandrasqlcontext.setkeyspace (cassandrakeyspace); return cassandrasqlcontext; }}Panggilan sederhana
@RepositoryPublic class personRepository {@autowired cassandrasqlcontext cassandrasqlcontext; public long countperson () {DataFrame People = cassandrasqlcontext.sql ("Select * From Person Order by ID"); return people.count (); }}Mulailah dan jalankan seperti program boot musim semi biasa.
Alamat kode sumber: https://github.com/wiselyman/spring-park-cassandra.git
Meringkaskan
Di atas adalah contoh pengembangan integrasi boot musim semi dengan sistem Spark dan Cassandra yang diperkenalkan kepada Anda oleh editor. Saya harap ini akan membantu Anda. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas Anda tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!