For the duration of Google Summer of Code 2020, I have been working on implmeneting a data synchronization engine via the graphback-datasync
package extending the Graphback project on Github, consequently, the code for the work product can be found in the same repository.
A delta query is a special type of query provided DataSync that helps clients fetch changes in data after periods of internet outages, without which the client would otherwise have to fetch everything all over again.
When a client goes offline frequently, inconsistencies may show up in the data whenever the client tries to update data based on outdated records. DataSync provides a way to resolve these conflicts server-side or inform the client about conflicts, whichever required.
The documentation with a more complete description of features of the work product can be found at the DataSync docs
To quickly bootsrap a Graphback-based Data Synchronization (or DataSync API) for checking it out:
- Define data model in GraphQL SDL:
"""
@model
@datasync
"""
type Note {
_id: GraphbackObjectID
title: String
content: String
}
scalar GraphbackObjectID
npx graphql-serve serve --datasync schema.graphql -p4000
This command bootstraps a GraphQL API with DataSync features listening on port 4000 locally.
- GSoC Project
- GitHub Repository
- Documentation
- Link to Work Done in the project
- Blogs