Logo
Development Constraints

Development Constraints #

While SphereEx-DBPlusEngine is compatible with the docking database syntax, it is important to note that there are certain SQL usage restrictions due to the significant architectural differences between the distributed and single-machine architectures. Therefore, it is essential to be aware of these usage restrictions during database development. This section aims to introduce these restrictions and their impact on database development.

Identifier Restrictions #

The restrictions on various object names primarily depend on the underlying docking database. However, SphereEx-DBPlusEngine does not impose any restrictions on identifier length, allowing for the definition of identifiers of any length. If a submitted identifier fails to be executed by the underlying database, the error will be communicated back to the user.

Resource Restrictions #

SphereEx-DBPlusEngine does not impose any restrictions on the creation of resources such as databases and tables. The metadata associated with these resources will be stored both in the governance center and in the local memory of SphereEx-DBPlusEngine. However, it is important to note that insufficient memory space and an excessive amount of metadata can lead to out-of-memory (OOM) issues.

Syntax Restrictions #

SphereEx-DBPlusEngine is compatible with most database syntaxes, refer to SQL Compatibility for details.

Syntax TypeSyntax Sub-TypeUsing Constraints
DDLTABLESupport
VIEWSupport (within sharding only)
TRIGGERSupport (within sharding only)
PROCEDURESupport (within sharding only)
CURSORSupport (within sharding only)
DMLINSERTSupport (partially restricted)
DELETESupport (partially restricted)
UPDATESupport (partially restricted)
MERGESupport (within sharding only)
REPLACESupport
DQLJOIN ONSupport
LEFT/RIGHT/FULL JOINSupport
SEMI JOINSupport
ANTI JOINSupport
GROUPSupport
GROUP…HAVINGSupport
SUBQUERYSupport
UNION/UNION ALLSupport
INTERSECT/MINUSSupport
SUBQUERYSupport (within sharding only)