Skip to content

daveskybet/sqoop

 
 

Repository files navigation

Sqoop
GraphQL for Monolith, Microservices, and Serverless

What is Sqoop?

Sqoop (formerly QLoo) is a GraphQL Server built on top of Gloo and the Envoy Proxy.

Sqoop leverages Gloo's function registry and Envoy's advanced HTTP routing features to provide a GraphQL frontend for REST/gRPC applications and serverless functions. Sqoop routes requests to data sources via Envoy, leveraging Envoy HTTP filters for security, load balancing, and more.


Sqoop


Workflow with Sqoop

  • Register or Discovery API Endpoints and Serverless Functions with Gloo
  • Upload a GraphQL schema
  • Connect Functions to your Schema's fields in a Sqoop ResolverMap

Features

  • Codeless GraphQL API: Instantly deploy a GraphQL server and connect it to your data sources with configuration, zero code required.
  • Dynamic Load Balancing: Load balance traffic across multiple data sources.
  • Health Checks: Active and passive monitoring of your data sources.
  • OpenTracing: Monitor GraphQL requests using the well-supported OpenTracing standard.
  • Monitoring: Export HTTP metrics to Prometheus or Statsd.
  • Client SSL: Communicate with Data Sources using TLS encryption.
  • Declarative API: Sqoop features a declarative YAML-based API; store your configuration as code and commit it with your projects.
  • Scalability: Sqoop scales independently of your data sources and scales infinitely.
  • Performance: Sqoop leverages Envoy for its high network performance and low footprint.
  • Plugins: Sqoop leverage's Gloo's plugin ecosystem to enable extending the types of data sources Sqoop can connect to.
  • JSON-to-gRPC transcoding: Connect GraphQL JSON clients to gRPC data sources.

Service Discovery

  • Kubernetes
  • OpenShift
  • HashiCorp Stack (Vault, Consul, Nomad)
  • Cloud Foundry

Function Discovery

  • AWS Lambda
  • Microsoft Azure Functions
  • Google Cloud Platform Functions
  • Fission
  • OpenFaaS
  • ProjectFn
  • Swagger/REST
  • gRPC

Documentation

Installation

Getting Started

v1 API reference

  • Schemas: API Specification for proving your GraphQL Schemas to Sqoop
  • ResolverMaps: API Reference for ResolverMaps, which map your data sources to your Schemas

Blogs & Demos

Community

Join us on our slack channel: https://slack.solo.io/


Thanks

Sqoop would not be possible without the valuable open-source work of projects in the community. We would like to extend a special thank-you to Envoy and gqlgen server library.

About

The GraphQL Engine powered by Gloo

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 90.3%
  • Shell 5.5%
  • Makefile 4.1%
  • Dockerfile 0.1%