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

MySQL-mål i Luigi-arbejdsgangen

Det eksisterende MySqlTarget i luigi bruger en separat markørtabel til at angive, hvornår opgaven er fuldført. Her er den grove tilgang, jeg ville tage...men dit spørgsmål er meget abstrakt, så det er sandsynligvis mere kompliceret i virkeligheden.

import luigi
from datetime import datetime
from luigi.contrib.mysqldb import MySqlTarget


class TaskA(luigi.Task):
    rundate = luigi.DateParameter(default=datetime.now().date())
    target_table = "table_to_update"
    host = "localhost:3306"
    db = "db_to_use"
    user = "user_to_use"
    pw = "pw_to_use"

    def get_target(self):
        return MySqlTarget(host=self.host, database=self.db, user=self.user, password=self.pw, table=self.target_table,
                           update_id=str(self.rundate))

    def requires(self):
        return []

    def output(self):
        return self.get_target()

    def run(self):
        #update table
        self.get_target().touch()


class TaskB(luigi.Task):
    def requires(self):
        return [TaskA()]

    def run(self):
        # reading from target_table



  1. automatisk udfylde tabel med dummy data i mysql

  2. Hvordan opretter man tabeller med adgangskodefelter i mysql?

  3. ServiceStack.OrmLite:Hvor er metoden til at skrive brugerdefineret SQL og få resultatet sat tilbage?

  4. #1062 - Dubleret indtastning '' for nøglen 'unique_id', når du forsøger at tilføje UNIQUE KEY (MySQL)