sql >> Database teknologi >  >> RDS >> Mysql

Hvordan får man og behandler mysql-poster ved hjælp af Airflow?

Jeg har virkelig kæmpet med dette i de sidste 90 minutter, her er en mere deklarativ måde at følge for nytilkomne:

from airflow.hooks.mysql_hook import MySqlHook

def fetch_records():
  request = "SELECT * FROM your_table"
  mysql_hook = MySqlHook(mysql_conn_id = 'the_connection_name_sourced_from_the_ui', schema = 'specific_db')
  connection = mysql_hook.get_conn()
  cursor = connection.cursor()
  cursor.execute(request)
  sources = cursor.fetchall()
  print(sources)

...your DAG() as dag: code

task = PythonOperator(
  task_id = 'fetch_records',
  python_callable = fetch_records
)

Dette returnerer indholdet af din DB-forespørgsel til logfilerne.

Jeg håber, at dette er nyttigt for en anden.



  1. Tjek, hvilke brugere der er online

  2. Hent, hvor lang tid det tager at etablere en forbindelse med PHP mysqli_real_connect()

  3. Brug MySQL relationsdatabaser på Fedora 14

  4. DAYNAME() Eksempler – MySQL