Přeskočit obsah

Konektory

Součástí aplikace Mixulo je cloudové úložiště Superfiles. Do něj můžete ukládat soubory, typicky ve formátu CSV a XLSX.

Do Superfiles můžete vložit data buď přímo z vašeho počítače nebo z externích služeb: Google Sheets, databáze Postgres a dalších.
Data z externích služeb jsou do Superfiles uložena ve formátu CSV.

V Mixulu používáme k tomuto účelu tyto konektory:

Konektor target-csv můžete použít pro uložení dat do Superfiles a konektor tap-spreadsheets-anywhere pro čtení dat z Superfiles.

Například kombinací konektorů tap-mssql a target-csv převedete data z MS SQL databáze do CSV souboru v Superfiles.

Následují příklady konfigurací pro různé kombinace konektorů.

Google Sheets → CSV v Superfiles

{
  "tap": {
    "config": {
      "_select": "'[\"teplota_praha.*\", \"teplota_bechyne.*\", \"!*.__sdc_*\"]'",
      "client_id": "1081978581541-oo640sp1ihvbm9fupgook1hbir1gkc6s.apps.googleusercontent.com",
      "start_date": "2019-01-01T00:00:00Z",
      "client_secret": "!mixulo-secret:gsheet_client_secret",
      "refresh_token": "!mixulo-secret:gsheet_refresh_token",
      "spreadsheet_id": "1_oA8-YJbOfiQmwlXoj6UO03RchBFZ4t_AHlEB8w0qjA"
    },
    "module": "tap-google-sheets"
  },
  "target": {
    "config": {
      "delimiter": ","
    },
    "module": "target-csv"
  }
}

Příklad konfigurace pro převod dat z Google Sheets do CSV souboru. Z listů "teplota_praha" a "teplota_bechyne" v této Google tabulce vzniknou v Superfiles dva CSV soubory: teplota_praha.csv a teplota_bechyne.csv.

Postgres → CSV v Superfiles

{
  "tap": {
    "config": {
      "host": "123.123.123.123",
      "port": 5432,
      "user": "ca",
      "dbname": "ca",
      "_select": "'[\"public-users_user.*\"]'",
      "password": "!mixulo-secret:pg_user_pass"
    },
    "module": "tap-postgres"
  },
  "target": {
    "config": {
      "delimiter": ","
    },
    "module": "target-csv"
  }
}

CSV v Superfiles → Postgres

{
  "tap": {
    "config": {
      "tables": "[{\"format\": \"csv\", \"path\": \"file://../../input/files\", \"name\": \"prumerna_teplota\", \"pattern\": \"^teplota.*\", \"start_date\": \"2000-01-01T00:00:00Z\", \"key_properties\": [], \"delimiter\": \"detect\"}]",
      "_schema": [
        "prumerna_teplota date type '[\"null\", \"string\"]'",
        "prumerna_teplota date format date-time",
        "prumerna_teplota mean type '[\"null\", \"number\"]'"
      ]
    },
    "module": "tap-spreadsheets-anywhere"
  },
  "target": {
    "config": {
      "postgres_host": "123.123.123.123",
      "postgres_port": "5432",
      "postgres_database": "debug",
      "postgres_username": "debug",
      "postgres_password": "!mixulo-secret:postgres_debug_pass",
      "postgres_schema": "public",
      "before_run_sql": "DROP TABLE IF EXISTS public.prumerna_teplota;"
    },
    "module": "target-postgres"
  }
}

Příklad konfigurace pro převod dat z CSV souboru v Superfiles do Postgres databáze.


Poslední aktualizace: 7. 10. 2022