توضح هذه المقالة مثالاً على استخدام Spark كمحرك تحليل ، وكاساندرا كتخزين للبيانات ، واستخدام SPRING BOOT لتطوير برامج التشغيل.
1. المتطلبات الأساسية
إنشاء مساحة مفاتيح
إنشاء مفاتيح HFCB مع النسخ المتماثل = {'class': 'Simplestrategy' ، 'REPLICATION_FACTOR': 3} ؛إنشاء جدول
إنشاء شخص الجدول (نص معرف المفتاح الأساسي ، نص First_Name ، نص Last_Name) ؛
أدخل بيانات الاختبار
أدخل القيم في شخص (id ، first_name ، last_name) ('1' ، 'wang' ، 'yunfei') ؛ insert في الشخص (id ، first_name ، last_name) القيم ('2' ، 'peng' ، 'chao') ؛ insert إلى شخص (id ، first_name ، last_name) القيم (3 '،' li '، jian') (ID ، first_name ، last_name) القيم ('4' ، 'Zhang' ، 'jie') ؛ insert في شخص (id ، first_name ، last_name) القيم ('5' ، 'liang' ، 'wei') ؛ إدراج في شخص (id ، first_name ، last_name) قيم (5 '' 5 '،' liang '،' Wei ') ؛2.Spark-Cassandra-Connector التثبيت
لتمكين Spark-1.5.1 من استخدام Cassandra كخزانة للبيانات ، تحتاج إلى إضافة تبعيات حزمة JAR التالية (مثال لوضع الحزمة في/OPT/Spark/Managed-Lib/Directory ، والتي يمكن أن تكون تعسفية):
Cassandra-clientutil-3.0.2.jarcassandra-driver-core-33.1.4.jarguava-16.0.1.jarcassandra-thrift-3.0.2.jar Joda-Convert-1.2.jarjoda-time-2.9.9
في دليل/OPT/Spark/Conf ، قم بإنشاء ملف Spark-Env.sh جديد وأدخل المحتوى التالي
Spark_Classpath =/OPT/Spark/Managed-Lib/*
3. تطوير تطبيق التمهيد الربيع
أضف تبعيات شرارة كاساندرا وشرارة
<Rependency> <roupEd> com.datastax.spark </rougiD> <StifactId> Spark-Cassandra-Connector_2.10 </shintifactid> <splection> 1.5.1 </version> </reperence> <redenced> <roupend> org.apache.spark </roucidid> <tresifactid> park-core_2.10 </atpency </spert> </removactid </repomate> <Rependency> <roupEd> org.apache.spark </rougiD> <StifactId> Spark-SQL_2.10 </shintifactid> <splection> 1.5.1 </version> </repremency> <sependency> <roupiD> org.apache.spark </groupid>
تكوين مسارات Spark و Cassandra في application.yml
Spark.Master: Spark: // Master: 7077Cassandra.host: 192.168.1.140cassandra.keyspace: HFCB
هنا نذكر على وجه التحديد أن Spark: // Master: 7077 هو اسم مجال بدلاً من عنوان IP. يمكنك تعديل ملف المضيفين المحليين لرسم خريطة Master وعنوان IP.
تكوين SparkContext و CassandrasqlContext
ConfigurationPublic Class SparkCassandRaconfig {value ("$ {Spark.master}") String SparkMasterl ؛ 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) //. . JavasparkContext Context = New JavasparkContext (SparkMasterurl ، "SparkDemo" ، conf) ؛ سياق العودة ؛ } bean public cassandrasqlContext sqlContext () {cassandrasqlContext cassandrasqlContext = new CassandrasqlContext (javasparkcontext (). sc ()) ؛ CassandrasqlContext.setKeySpace (CassandRakeySpace) ؛ إرجاع CassandrasqlContext ؛ }}مكالمة بسيطة
repositorypublic class personRepository {autowired cassandrasqlContext cassandrasqlContext ؛ Public Long Countperson () {dataframe people = cassandrasqlContext.sql ("SELECT * from proform order by id") ؛ إرجاع people.count () ؛ }}ابدأها وتنفيذها مثل برنامج التمهيد الربيعي العادي.
عنوان رمز المصدر: https://github.com/wiselyman/spring-spark-cassandra.git
لخص
ما ورد أعلاه هو مثال على تطور تكامل الحذاء الربيعي مع نظام Spark و Cassandra الذي قدمه لك المحرر. آمل أن يكون ذلك مفيدًا لك. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لي وسوف يرد المحرر إليك في الوقت المناسب. شكرا جزيلا لدعمكم لموقع wulin.com!