graphql-engine/docs/graphql/core/databases/citus-hyperscale-postgres/hasura-citus-compatibility.rst
vaishnavigvs b8cd59551f docs: add Citus and BigQuery content
https://github.com/hasura/graphql-engine-mono/pull/1763

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: 184be0e675345e5ec02678482097edd9c69ad484
2021-07-26 11:54:41 +00:00

83 lines
1.9 KiB
ReStructuredText
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

.. meta::
:description: Hasura Citus Hyperscale Postgres database support
:keywords: hasura, docs, databases, citus-hyperscale-postgres, compatibility
.. _hasura-citus-compatibility:
Hasura - Citus compatibility
============================
.. contents:: Table of contents
:backlinks: none
:depth: 2
:local:
Introduction
------------
As Citus is an extension of Postgres, the way it functions with Hasura is
also very similar. Currently the following features are supported with Citus
and Hasura:
Tables
------
Querying from all kinds of tables and views is currently supported.
This includes local, reference and distributed tables. All the tables can be
tracked from the console.
Relationships
-------------
The following table describes the supported relationships based on the
supported joins in Citus:
.. list-table::
:header-rows: 1
:stub-columns: 1
:widths: 10 10 10 10
* -
- To Local
- To Reference
- To Distributed
* - **From Local**
- Object, Array
- Object, Array
-
* - **From Reference**
- Object, Array
- Object, Array
-
* - **From Distributed**
-
- Object
- Object, Array
The Hasura console allows you to add all the supported relationships.
Permissions
-----------
All permissions work like on Postgres without any restrictions.
Functions
---------
Citus supported ``plpgsql`` functions are supported on Hasura with the following restrictions:
- Fetching relationships as part of the functions response is currently not supported
Mutations
---------
Mutations are supported in graphql-engine with the following restrictions:
- Fetching relationship data as part of ``returning`` is not yet supported
Event triggers
--------------
Citus does not yet support creating triggers (`See issue <https://github.com/citusdata/citus/issues/4425>`__) on reference tables. Hence this is currently not supported.