पृथ्वी के नमस्ते लोग! मैं स्पार्क कार्यों को शेड्यूल और चलाने के लिए एयरफ्लो का उपयोग कर रहा हूं। इस समय तक मैंने जो कुछ पाया वह पाइथन डीएजी है जो एयरफ्लो प्रबंधित कर सकता है।
DAG उदाहरण:एयरफ्लो में स्पार्क कोड कैसे चलाएं?
spark_count_lines.py
import logging
from airflow import DAG
from airflow.operators import PythonOperator
from datetime import datetime
args = {
'owner': 'airflow'
, 'start_date': datetime(2016, 4, 17)
, 'provide_context': True
}
dag = DAG(
'spark_count_lines'
, start_date = datetime(2016, 4, 17)
, schedule_interval = '@hourly'
, default_args = args
)
def run_spark(**kwargs):
import pyspark
sc = pyspark.SparkContext()
df = sc.textFile('file:///opt/spark/current/examples/src/main/resources/people.txt')
logging.info('Number of lines in people.txt = {0}'.format(df.count()))
sc.stop()
t_main = PythonOperator(
task_id = 'call_spark'
, dag = dag
, python_callable = run_spark
)
समस्या मैं अजगर कोड में अच्छा नहीं कर रहा हूँ और कुछ जावा में लिखा कार्य है। मेरा सवाल है कि पाइथन डीएजी में स्पार्क जावा जार कैसे चलाएं? या हो सकता है कि ऐसा कोई दूसरा तरीका है? मैंने स्पार्क सबमिट किया: http://spark.apache.org/docs/latest/submitting-applications.html
लेकिन मुझे नहीं पता कि सबकुछ एक साथ कैसे कनेक्ट किया जाए। शायद किसी ने इसे पहले इस्तेमाल किया और उदाहरण बना रहा है। अपना समय देने के लिए धन्यवाद!
स्पार्कस्क्लॉप्टर ऐसा लगता है कि मुझे केवल यही चीज चाहिए - हालांकि, मैं इसे काम नहीं कर सकता क्योंकि मुझे नहीं पता कि कनेक्शन स्ट्रिंग कैसा दिखना चाहिए - क्या कोई दस्तावेज कहीं भी है जो मुझे इससे मदद कर सकता है? –
यदि आप इसे सेट नहीं करते हैं - कनेक्शन यार्न निष्पादन मोड में डिफ़ॉल्ट होगा - https://github.com/apache/incubator-airflow/blob/master/airflow/contrib/hooks/spark_submit_hook.py#L33 देखें – Tagar