Skip to content

Commit

Permalink
GitBook: [master] 25 pages and 46 assets modified
Browse files Browse the repository at this point in the history
  • Loading branch information
michel-tricot authored and gitbook-bot committed Apr 16, 2021
1 parent df80593 commit 0b4eddc
Show file tree
Hide file tree
Showing 58 changed files with 156 additions and 139 deletions.
Binary file removed docs/.gitbook/assets/activate-webhook.png
Binary file not shown.
Binary file removed docs/.gitbook/assets/airbyte-dashboard.png
Binary file not shown.
Binary file removed docs/.gitbook/assets/app-information.png
Binary file not shown.
Binary file removed docs/.gitbook/assets/app-name-modal.png
Binary file not shown.
Binary file removed docs/.gitbook/assets/change-to-date-time.png
Binary file not shown.
Binary file not shown.
Binary file removed docs/.gitbook/assets/click.png
Binary file not shown.
File renamed without changes
Binary file removed docs/.gitbook/assets/destination.png
Binary file not shown.
Binary file removed docs/.gitbook/assets/drag-created-at.png
Binary file not shown.
Binary file removed docs/.gitbook/assets/empty-meeting-sheet.png
Binary file not shown.
Binary file removed docs/.gitbook/assets/fill-in-connection-details.png
Binary file not shown.
Binary file not shown.
File renamed without changes
Binary file removed docs/.gitbook/assets/meetings-per-week.png
Binary file not shown.
Binary file not shown.
Binary file not shown.
File renamed without changes
Binary file not shown.
File renamed without changes
Diff not rendered.
Binary file removed docs/.gitbook/assets/view-jwt-token.png
Diff not rendered.
Binary file removed docs/.gitbook/assets/weekly-webinars.png
Diff not rendered.
Binary file removed docs/.gitbook/assets/zoom-dashboard.png
Diff not rendered.
2 changes: 1 addition & 1 deletion docs/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@
* [High-level View](architecture/high-level-view.md)
* [Workers & Jobs](architecture/jobs.md)
* [Technical Stack](architecture/tech-stack.md)
* [Change Data Capture (CDC)](architecture/cdc.md)
* [Change Data Capture \(CDC\)](architecture/cdc.md)
* [Contributing to Airbyte](contributing-to-airbyte/README.md)
* [Code of Conduct](contributing-to-airbyte/code-of-conduct.md)
* [Developing Locally](contributing-to-airbyte/developing-locally.md)
Expand Down
13 changes: 10 additions & 3 deletions docs/architecture/cdc.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,25 @@
# Change Data Capture (CDC)
# Change Data Capture \(CDC\)

## What is log-based incremental replication?
Many common databases support writing all record changes to log files for the purpose of replication. A consumer of these log files (such as Airbyte) can read these logs while keeping track of the current position within the logs in order to read all record changes coming from `DELETE`/`INSERT`/`UPDATE` statements.

Many common databases support writing all record changes to log files for the purpose of replication. A consumer of these log files \(such as Airbyte\) can read these logs while keeping track of the current position within the logs in order to read all record changes coming from `DELETE`/`INSERT`/`UPDATE` statements.

## Syncing

The orchestration for syncing is similar to non-CDC database sources. After selecting a sync interval, syncs are launched regularly. We read data from the log up to the time that the sync was started. We do not treat CDC sources as infinite streaming sources. You should ensure that your schedule for running these syncs is frequent enough to consume the logs that are generated. The first time the sync is run, a snapshot of the current state of the data will be taken. This is done using `SELECT` statements and is effectively a Full Refresh. Subsequent syncs will use the logs to determine which changes took place since the last sync and update those. Airbyte keeps track of the current log position between syncs.

A single sync might have some tables configured for Full Refresh replication and others for Incremental. If CDC is configured at the source level, all tables with Incremental selected will use CDC. All Full Refresh tables will replicate using the same process as non-CDC sources. However, these tables will still include CDC metadata columns by default.

The Airbyte Protocol outputs records from sources. Records from `UPDATE` statements appear the same way as records from `INSERT` statements. We support different options for how to sync this data into destinations using primary keys, so you can choose to append this data, delete in place, etc.

We add some metadata columns for CDC sources:

* `ab_cdc_lsn` is the point in the log where the record was retrieved
* `ab_cdc_updated_at` is the timestamp for the database transaction that resulted in this record change and is present for records from `DELETE`/`INSERT`/`UPDATE` statements
* `ab_cdc_deleted_at` is the timestamp for the database transaction that resulted in this record change and is only present for records from `DELETE` statements

## Limitations

* CDC incremental is only supported for tables with primary keys. A CDC source can still choose to replicate tables without primary keys as Full Refresh or a non-CDC source can be configured for the same database to replicate the tables without primary keys using standard incremental replication.
* Data must be in tables, not views.
* The modifications you are trying to capture must be made using `DELETE`/`INSERT`/`UPDATE`. For example, changes made from `TRUNCATE`/`ALTER` won't appear in logs and therefore in your destination.
Expand All @@ -24,10 +28,13 @@ We add some metadata columns for CDC sources:
* The records produced by `DELETE` statements only contain primary keys. All other data fields are unset.

## Current Support

* [Postgres](../integrations/sources/postgres.md)

## Coming Soon

* [MySQL](../integrations/sources/mysql.md)
* [SQL Server / MSSQL](../integrations/sources/mssql.md)
* Oracle DB
* Please [create a ticket](https://github.com/airbytehq/airbyte/issues/new/choose) if you need CDC support on another database!
* Please [create a ticket](https://github.com/airbytehq/airbyte/issues/new/choose) if you need CDC support on another database!

14 changes: 4 additions & 10 deletions docs/architecture/jobs.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,15 @@ In Airbyte, all interactions with connectors are run as jobs performed by a Work

## Worker Responsibilities

The worker has 4 main responsibilities in its lifecycle.
1. Spin up any connector docker containers that are needed for the job.
2. They facilitate message passing to or from a connector docker container (more on this [below](#message-passing)).
3. Shut down any connector docker containers that it started.
4. Return the output of the job. (See [Airbyte Specification](./airbyte-specification.md) to understand the output of each worker type.)
The worker has 4 main responsibilities in its lifecycle. 1. Spin up any connector docker containers that are needed for the job. 2. They facilitate message passing to or from a connector docker container \(more on this [below](jobs.md#message-passing)\). 3. Shut down any connector docker containers that it started. 4. Return the output of the job. \(See [Airbyte Specification](airbyte-specification.md) to understand the output of each worker type.\)

## Message Passing

There are 2 flavors of workers:
1. There are workers that interact with a single connector (e.g. spec, check, discover)
2. There are workers that interact with 2 connectors (e.g. sync, reset)
There are 2 flavors of workers: 1. There are workers that interact with a single connector \(e.g. spec, check, discover\) 2. There are workers that interact with 2 connectors \(e.g. sync, reset\)

In the first case, the worker is generally extracting data from the connector and reporting it back to the scheduler. It does this by listening to STDOUT of the connector. In the second case, the worker is facilitating passing data (via record messages) from the source to the destination. It does this by listening on STDOUT of the source and writing to STDIN on the destination.
In the first case, the worker is generally extracting data from the connector and reporting it back to the scheduler. It does this by listening to STDOUT of the connector. In the second case, the worker is facilitating passing data \(via record messages\) from the source to the destination. It does this by listening on STDOUT of the source and writing to STDIN on the destination.

For more information on the schema of the messages that are passed, refer to [Airbyte Specification](./airbyte-specification.md).
For more information on the schema of the messages that are passed, refer to [Airbyte Specification](airbyte-specification.md).

## Worker Lifecycle

Expand Down
5 changes: 4 additions & 1 deletion docs/architecture/tech-stack.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,9 @@
* Orchestration: [Temporal](https://temporal.io)

## Connectors
Connectors can be written in any language. However the most common languages are:

Connectors can be written in any language. However the most common languages are:

* Python 3.7.9
* Java 14

Expand All @@ -26,3 +28,4 @@ Connectors can be written in any language. However the most common languages are
* Containerization: [Docker](https://www.docker.com/) and [Docker Compose](https://docs.docker.com/compose/)
* Linter \(Frontend\): [Prettier](https://prettier.io/)
* Formatter \(Backend\): [Spotless](https://github.com/diffplug/spotless)

10 changes: 5 additions & 5 deletions docs/career-and-open-positions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

[Airbyte](http://airbyte.io) is the upcoming open-source standard for EL\(T\). We enable data teams to replicate data from applications, APIs, and databases to data warehouses, lakes, and other destinations. We believe only an open-source approach can solve the problem of data integration, as it enables us to cover the long tail of integrations while enabling teams to adapt prebuilt connectors to their needs.

Airbyte is remote friendly, with most of the team still based in the Silicon Valley. We’re fully open as a company. Our **[company handbook](https://handbook.airbyte.io)**, **[culture & values](https://handbook.airbyte.io/company/culture-and-values)**, **[strategy](https://handbook.airbyte.io/strategy/strategy)** and **[roadmap](../roadmap.md)** are open to all.
Airbyte is remote friendly, with most of the team still based in the Silicon Valley. We’re fully open as a company. Our [**company handbook**](https://handbook.airbyte.io), [**culture & values**](https://handbook.airbyte.io/company/culture-and-values), [**strategy**](https://handbook.airbyte.io/strategy/strategy) and [**roadmap**](../roadmap.md) are open to all.

We're backed by some of the world's [top investors](./#our-investors) and believe in product-led growth, where we build something awesome and let our product bring the users, rather than an outbound sales engine with cold calls.

Expand Down Expand Up @@ -50,12 +50,12 @@ If the written interview is a success, we might set you up with one or 2 additio

Once all of this done, we will discuss the process internally and get back to you very fast \(velocity is everything here\)! So about 2-3 calls and one written interview, that's it!

## **[Our Benefits](https://handbook.airbyte.io/people/benefits)**
## [**Our Benefits**](https://handbook.airbyte.io/people/benefits)

* **Flexible work environment as fully remote** - we don’t look at when you log in, log out or how much time you work. We trust you, it’s the only way remote can actually work.
* **[Unlimited vacation policy](https://handbook.airbyte.io/people/time-off)** with mandatory minimum time off - so you can fit work around your life.
* **[Co-working space stipend](https://handbook.airbyte.io/people/expense-policy#work-space)** - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* **[Parental leave](https://handbook.airbyte.io/people/time-off#parental-leave)** \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* [**Unlimited vacation policy**](https://handbook.airbyte.io/people/time-off) with mandatory minimum time off - so you can fit work around your life.
* [**Co-working space stipend**](https://handbook.airbyte.io/people/expense-policy#work-space) - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* [**Parental leave**](https://handbook.airbyte.io/people/time-off#parental-leave) \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* **Open book policy** - we reimburse books that employees want to purchase for their professional and career development.
* **Continuous learning / training policy** - we sponsor the conferences and training programs you feel would add to your development in the company.
* **Health insurance** for those from countries that do not provide this freely. Through Savvy in the US, which means you can choose the insurance you want and will receive a stipend from the company.
Expand Down
10 changes: 5 additions & 5 deletions docs/career-and-open-positions/founding-developer-advocate.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Senior Developer Advocate
# Founding Developer Advocate

## **About Airbyte**

[Airbyte](http://airbyte.io) is the upcoming open-source standard for EL\(T\). We enable data teams to replicate data from applications, APIs, and databases to data warehouses, lakes, and other destinations. We believe only an open-source approach can solve the problem of data integration, as it enables us to cover the long tail of integrations while enabling teams to adapt prebuilt connectors to their needs.

Airbyte is remote friendly, with most of the team still based in the Silicon Valley. We’re fully open as a company. Our **[company handbook](https://handbook.airbyte.io)**, **[culture & values](https://handbook.airbyte.io/company/culture-and-values)**, **[strategy](https://handbook.airbyte.io/strategy/strategy)** and **[roadmap](../roadmap.md)** are open to all.
Airbyte is remote friendly, with most of the team still based in the Silicon Valley. We’re fully open as a company. Our [**company handbook**](https://handbook.airbyte.io), [**culture & values**](https://handbook.airbyte.io/company/culture-and-values), [**strategy**](https://handbook.airbyte.io/strategy/strategy) and [**roadmap**](../roadmap.md) are open to all.

We're backed by some of the world's [top investors](./#our-investors) and believe in product-led growth, where we build something awesome and let our product bring the users, rather than an outbound sales engine with cold calls.

Expand Down Expand Up @@ -42,9 +42,9 @@ North America.
## **We provide**

* **Flexible work environment as fully remote** - we don’t look at when you log in, log out or how much time you work. We trust you, it’s the only way remote can actually work.
* **[Unlimited vacation policy](https://handbook.airbyte.io/people/time-off)** with mandatory minimum time off - so you can fit work around your life.
* **[Co-working space stipend](https://handbook.airbyte.io/people/expense-policy#work-space)** - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* **[Parental leave](https://handbook.airbyte.io/people/time-off#parental-leave)** \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* [**Unlimited vacation policy**](https://handbook.airbyte.io/people/time-off) with mandatory minimum time off - so you can fit work around your life.
* [**Co-working space stipend**](https://handbook.airbyte.io/people/expense-policy#work-space) - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* [**Parental leave**](https://handbook.airbyte.io/people/time-off#parental-leave) \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* **Open book policy** - we reimburse books that employees want to purchase for their professional and career development.
* **Continuous learning / training policy** - we sponsor the conferences and training programs you feel would add to your development in the company.
* **Health insurance** for those from countries that do not provide this freely. Through Savvy in the US, which means you can choose the insurance you want and will receive a stipend from the company.
Expand Down
8 changes: 4 additions & 4 deletions docs/career-and-open-positions/operations-manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

[Airbyte](http://airbyte.io) is the upcoming open-source standard for EL\(T\). We enable data teams to replicate data from applications, APIs, and databases to data warehouses, lakes, and other destinations. We believe only an open-source approach can solve the problem of data integration, as it enables us to cover the long tail of integrations while enabling teams to adapt prebuilt connectors to their needs.

Airbyte is remote friendly, with most of the team still based in the Silicon Valley. We’re fully open as a company. Our **[company handbook](https://handbook.airbyte.io)**, **[culture & values](https://handbook.airbyte.io/company/culture-and-values)**, **[strategy](https://handbook.airbyte.io/strategy/strategy)** and **[roadmap](../roadmap.md)** are open to all.
Airbyte is remote friendly, with most of the team still based in the Silicon Valley. We’re fully open as a company. Our [**company handbook**](https://handbook.airbyte.io), [**culture & values**](https://handbook.airbyte.io/company/culture-and-values), [**strategy**](https://handbook.airbyte.io/strategy/strategy) and [**roadmap**](../roadmap.md) are open to all.

We're backed by some of the world's [top investors](./#our-investors) and believe in product-led growth, where we build something awesome and let our product bring the users, rather than an outbound sales engine with cold calls.

Expand Down Expand Up @@ -44,9 +44,9 @@ Remote
## **We provide**

* **Flexible work environment as fully remote** - we don’t look at when you log in, log out or how much time you work. We trust you, it’s the only way remote can actually work.
* **[Unlimited vacation policy](https://handbook.airbyte.io/people/time-off)** with mandatory minimum time off - so you can fit work around your life.
* **[Co-working space stipend](https://handbook.airbyte.io/people/expense-policy#work-space)** - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* **[Parental leave](https://handbook.airbyte.io/people/time-off#parental-leave)** \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* [**Unlimited vacation policy**](https://handbook.airbyte.io/people/time-off) with mandatory minimum time off - so you can fit work around your life.
* [**Co-working space stipend**](https://handbook.airbyte.io/people/expense-policy#work-space) - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* [**Parental leave**](https://handbook.airbyte.io/people/time-off#parental-leave) \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* **Open book policy** - we reimburse books that employees want to purchase for their professional and career development.
* **Continuous learning / training policy** - we sponsor the conferences and training programs you feel would add to your development in the company.
* **Health insurance** for those from countries that do not provide this freely. Through Savvy in the US, which means you can choose the insurance you want and will receive a stipend from the company.
Expand Down
6 changes: 3 additions & 3 deletions docs/career-and-open-positions/senior-software-engineer.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@ Wherever you want!
## **Perks!!!**

* **Flexible work environment as fully remote** - we don’t look at when you log in, log out or how much time you work. We trust you, it’s the only way remote can actually work.
* **[Unlimited vacation policy](https://handbook.airbyte.io/people/time-off)** with mandatory minimum time off - so you can fit work around your life.
* **[Co-working space stipend](https://handbook.airbyte.io/people/expense-policy#work-space)** - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* **[Parental leave](https://handbook.airbyte.io/people/time-off#parental-leave)** \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* [**Unlimited vacation policy**](https://handbook.airbyte.io/people/time-off) with mandatory minimum time off - so you can fit work around your life.
* [**Co-working space stipend**](https://handbook.airbyte.io/people/expense-policy#work-space) - we provide everyone with $200/month to use on a coworking space of their choice, if any.
* [**Parental leave**](https://handbook.airbyte.io/people/time-off#parental-leave) \(for both parents, after one year spent with the company\) - so those raising families can do so while still working for us.
* **Open book policy** - we reimburse books that employees want to purchase for their professional and career development.
* **Continuous learning / training policy** - we sponsor the conferences and training programs you feel would add to your development in the company.
* **Health insurance** for those from countries that do not provide this freely. Through Savvy in the US, which means you can choose the insurance you want and will receive a stipend from the company.
Expand Down
4 changes: 2 additions & 2 deletions docs/changelog/connectors.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ Check out our [connector roadmap](https://github.com/airbytehq/airbyte/projects/

## 04/13/2021

* New connector: **[Oracle DB](https://docs.airbyte.io/integrations/sources/oracle)**
* New connector: [**Oracle DB**](https://docs.airbyte.io/integrations/sources/oracle)

## 04/07/2021

* New connector: **[Google Workspace Admin Reports](https://docs.airbyte.io/integrations/sources/google-workspace-admin-reports)** (audit logs)
* New connector: [**Google Workspace Admin Reports**](https://docs.airbyte.io/integrations/sources/google-workspace-admin-reports) \(audit logs\)
* Bugfix in the base python connector library that caused errors to be silently skipped rather than failing the sync
* **Exchangeratesapi.io** bugfix: to point to the updated API URL
* **Redshift destination** bugfix: quote keywords “DATETIME” and “TIME” when used as identifiers
Expand Down
Loading

0 comments on commit 0b4eddc

Please sign in to comment.