Skip to content

Virtualization SDK Docs - Virtual Source Initialize#316

Merged
jeffngo merged 1 commit intodelphix:docs/3.0.0from
jeffngo:initialize-docs
Jan 21, 2021
Merged

Virtualization SDK Docs - Virtual Source Initialize#316
jeffngo merged 1 commit intodelphix:docs/3.0.0from
jeffngo:initialize-docs

Conversation

@jeffngo
Copy link
Contributor

@jeffngo jeffngo commented Jan 21, 2021

Pull request checklist

Please check if your PR fulfills the following requirements:

  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been reviewed and added / updated if needed (for bug fixes / features)
  • Build was run locally and any changes were pushed
  • Lint has passed locally and any fixes were made for failures

Pull request type

Please check the type of change your PR introduces:

  • Bugfix
  • Feature
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • Documentation content changes
  • Other (please describe):

What is the current behavior?

Issue Number: N/A

What is the new behavior?

Added documentation for Virtual Source Initialize. Fixed a broken link in Data Ingestion.

Does this introduce a breaking change?

  • Yes
  • No

Other information

@jeffngo jeffngo added this to the VSDK Sprint 1/7-1/28 milestone Jan 21, 2021
@jeffngo jeffngo self-assigned this Jan 21, 2021
@jeffngo jeffngo changed the base branch from master to docs/3.0.0 January 21, 2021 21:31
For our first plugin, we will be using the more flexible [staging](/References/Glossary.md#staged-linkingsyncing) strategy. With this strategy, the Delphix Engine uses NFS for Unix environments (or iSCSI on Windows environments) to mount storage onto a [staging environment](/References/Glossary.md#staging-environment). Our plugin will then be in full control of how to get data from the source environment onto this storage mount.

With the staging strategy, there are two types of syncs: sync and resync. A `sync` is used to ingest incremental changes while a `resync` is used to re-ingest all the data for the dSource. For databases, this could mean re-ingesting from a full database backup to reset the dSource. A `sync` and a `resync` will execute the same plugin operations. To differentiate a `sync` from a `resync`, simply add a boolean property (i.e. `resync`) in the plugin's [snapshot parameters definition](References/Schemas_and_Autogenerated_Classes.md#snapshotparametersdefinition-schema). Once `sync` or `resync` is selected, the property will be passed into [linked.pre_snapshot](/References/Plugin_Operations.md#staged-linked-source-pre-snapshot) and [linked.post_snapshot](/References/Plugin_Operations.md#staged-linked-source-post-snapshot) as a [snapshot parameter](/References/Glossary.md#snapshot-parameters).
With the staging strategy, there are two types of syncs: sync and resync. A `sync` is used to ingest incremental changes while a `resync` is used to re-ingest all the data for the dSource. For databases, this could mean re-ingesting from a full database backup to reset the dSource. A `sync` and a `resync` will execute the same plugin operations. To differentiate a `sync` from a `resync`, simply add a boolean property (i.e. `resync`) in the plugin's [snapshot parameters definition](/References/Schemas_and_Autogenerated_Classes.md#snapshotparametersdefinition-schema). Once `sync` or `resync` is selected, the property will be passed into [linked.pre_snapshot](/References/Plugin_Operations.md#staged-linked-source-pre-snapshot) and [linked.post_snapshot](/References/Plugin_Operations.md#staged-linked-source-post-snapshot) as a [snapshot parameter](/References/Glossary.md#snapshot-parameters).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe re-word? There are not 2 strategies any more: sync and resync, instead we should just mention that a sync can ask for parameters from the user, things like backup file path etc?
I think we should remove all references to resync since it is no longer a real thing?

@jeffngo jeffngo merged commit eee3e73 into delphix:docs/3.0.0 Jan 21, 2021
jeffngo added a commit to jeffngo/virtualization-sdk that referenced this pull request Feb 8, 2021
Virtualization SDK Docs - Virtual Source Initialize (delphix#316)
jeffngo added a commit to jeffngo/virtualization-sdk that referenced this pull request Feb 8, 2021
Virtualization SDK Docs - Virtual Source Initialize (delphix#316)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

3 participants