sql >> Database teknologi >  >> RDS >> PostgreSQL

tilslut google cloud sql postgres-instans fra beam pipeline

Du kan bruge relational_db.Write og relational_db.Read transformeres fra beam-nuggets som følger:

Installer først beam-nuggests:

pip install beam-nuggets

Til læsning:

import apache_beam as beam
from apache_beam.options.pipeline_options import PipelineOptions
from beam_nuggets.io import relational_db

with beam.Pipeline(options=PipelineOptions()) as p:
    source_config = relational_db.SourceConfiguration(
        drivername='postgresql+pg8000',
        host='localhost',
        port=5432,
        username='postgres',
        password='password',
        database='calendar',
    )
    records = p | "Reading records from db" >> relational_db.Read(
        source_config=source_config,
        table_name='months',
    )
    records | 'Writing to stdout' >> beam.Map(print)

For at skrive:

import apache_beam as beam
from apache_beam.options.pipeline_options import PipelineOptions
from beam_nuggets.io import relational_db

with beam.Pipeline(options=PipelineOptions()) as p:
    months = p | "Reading month records" >> beam.Create([
        {'name': 'Jan', 'num': 1},
        {'name': 'Feb', 'num': 2},
    ])
    source_config = relational_db.SourceConfiguration(
        drivername='postgresql+pg8000',
        host='localhost',
        port=5432,
        username='postgres',
        password='password',
        database='calendar',
        create_if_missing=True,
    )
    table_config = relational_db.TableConfiguration(
        name='months',
        create_if_missing=True
    )
    months | 'Writing to DB' >> relational_db.Write(
        source_config=source_config,
        table_config=table_config
    )


  1. Hvilken rækkes felter returneres ved gruppering med MySQL?

  2. Kan jeg oprette visning med parameter i MySQL?

  3. Oprettelse af en UPDATE RETURNING-forespørgsel i Hibernate

  4. MySQL FORKLAR:Brug af indeks vs. Brug af indeksbetingelse