Connectors Google BigQuery

Google BigQuery data integration with Lima, in both directions.

BigQuery is Google Cloud's data warehouse. Lima lands Parquet files in Cloud Storage, runs load jobs into partitioned and clustered tables, applies changes with MERGE and reads BigQuery when it is the source.

SOURCESSAP ECC · S/4HANAreleased interfacesOracle EBS · Fusion · JDEdatabase reads · APIsDatabases, files, streamsJDBC · SFTP · KafkaLIMA BACKBONEExtractfull, incremental, change captureChecktypes · keys · counts · totalsLoadParquet to Cloud Storage, load jobs into…TARGETGoogle BigQueryRaw, conformed and history datasets; tab…
How Google BigQuery fits the six Backbone steps. It is a source and a target: data comes out through the methods below, and results go back in with confirmation.
4
ways to read or write it
this connector
4
patterns supported
this connector
3
ways to run: SaaS, private cloud, on-premise
product
22 days
from contract to production
showcase estate
How Lima reads and writes Google BigQuery

Method by method.

Each method has a job. The first load uses the bulk method; the daily run uses the incremental or change-capture method; write-back uses the interface the system itself uses.

MethodWhat it doesWhen it is used
Load jobs from Cloud StorageBulk loads Parquet into partitioned tables.First loads.
MERGEApplies changes by key.Deltas.
Storage Write APIStreams rows for low-lag landing.Micro-batches.
Reads via the Storage Read APIReads tables in parallel streams.BigQuery as a source.
What it covers

Objects and patterns.

The objects are the tables, views or records Lima reaches through the methods above. The patterns say how a copy is made and kept current.

ObjectPlain meaning
raw datasetas arrived
conformed datasetcurrent by key
history datasetevery version
PatternSupported
Full loadYes
IncrementalYes
Change captureapplied by MERGE
StreamingStorage Write API
Write-back—
What Google BigQuery expects

The landing model, and the hardest part.

ModelRaw, conformed and history datasets; tables partitioned by date and clustered by key.LoadParquet to Cloud Storage, load jobs into raw, MERGE into conformed; counts and control totals per table.BackResults can be written back to the ERP by Lima, confirmed per write.
The hardest part, in one sentence

Choosing partition and cluster keys so MERGE stays cheap on large tables.

Before you start

Prerequisites, then four steps.

The prerequisites are what the team that runs Google BigQuery grants. The four steps are the same for every connector.

  • A service account with BigQuery Data Editor and Job User
  • A Cloud Storage bucket for landing
  • Dataset locations agreed for residency
Register the connectionEndpoint, credentials from the vault, and the method. The connection is tested and a failed test names the cause.
Choose the objects and the patternPick tables or objects from the discovered schema, and the pattern: full, incremental, change capture or streaming.
Run the first load with checks onEvery row is valid or becomes an exception with an owner. The run ends with a count and a control total per table.
Schedule it on the business calendarA run window with a deadline; pause, resume and replay if a check trips; the report after every run.
What happens to a bad record

Incoming data = valid records + exception records. A row that fails a check is kept, routed to the person who owns it with a deadline, and replayed once fixed. The load carries on with the valid rows and the report says exactly what was held back. How exceptions work →

Pair pages

Google BigQuery in a source-to-target path.

Each pair page covers one path end to end: objects out, model in, checks, cadence and the offer.

/connectors/sap-ecc-to-bigquery

SAP ECC to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/sap-s4hana-to-bigquery

SAP S/4HANA to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/oracle-ebs-to-bigquery

Oracle E-Business Suite to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/oracle-fusion-cloud-erp-to-bigquery

Oracle Fusion Cloud ERP to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/oracle-jd-edwards-to-bigquery

Oracle JD Edwards EnterpriseOne to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/peoplesoft-to-bigquery

Oracle PeopleSoft to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/microsoft-dynamics-365-to-bigquery

Microsoft Dynamics 365 Finance and Supply Chain to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/infor-ln-m3-to-bigquery

Infor LN and M3 to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/netsuite-to-bigquery

Oracle NetSuite to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
/connectors/sap-bw-to-bigquery

SAP BW and BW/4HANA to Google BigQuery

Landing and history: full history landed with a count check per table, then kept current.

Open the pair page →
Terms on this page

Plain meanings.

ConnectorA packaged way to read or write one kind of system, with its authentication, methods and prerequisites described.
Full, incremental, change capture, streamingFour ways to make and keep a copy: read everything; read what changed since last time; read changes from a log as they happen; consume events in small batches.
Write-backWriting a result into the system that owns it through its released interface; the system's response is the confirmation.
Control totalThe sum of a key amount column compared between source and target, along with the row count, at the end of a run.
Exception recordA row that failed a check: kept, routed to an owner, replayed once fixed.
Questions

Asked about this connector.

Does Lima install anything in Google BigQuery?

Lima connects from outside through the interfaces listed above with credentials your administrators grant. Where a vendor requires its own agent or add-on for a method, the prerequisites say so.

How is load on Google BigQuery kept in check?

Parallel reads are capped and the cap is agreed with the team that runs the system. Large reads run inside an agreed run window. Change capture keeps the daily volume small.

What do we see when a run finishes?

A report per run: rows in, rows out, control totals and variance per table, the exceptions held back and who owns them, and whether the deadline was met.

Can we start small?

Yes. Most estates start with one source, one target and one dataset, then add tables and patterns on the same connection.

Try Google BigQuery on your own estate.

A trial connects this system, runs a first load and ends with a reconciliation report. Your administrators see the prerequisites before anything is installed.