├── .gitignore ├── .mysql-dev-env ├── .postgres-dev-env ├── Makefile ├── README.md ├── Testing.php ├── composer.json ├── composer.lock ├── docker-compose.yaml ├── shard_matrix.yaml ├── src ├── Config.php ├── DB │ ├── Builder │ │ ├── BuilderException.php │ │ ├── DB.php │ │ ├── Model.php │ │ ├── QueryBuilder.php │ │ ├── Schema.php │ │ ├── SchemaBuilder.php │ │ ├── ShardMatrixConnection.php │ │ ├── UnassignedConnection.php │ │ └── UnassignedNode.php │ ├── Connections.php │ ├── DataRow.php │ ├── DataRowFactory.php │ ├── DataRows.php │ ├── DuplicateException.php │ ├── Exception.php │ ├── GroupSum.php │ ├── GroupSums.php │ ├── Interfaces │ │ ├── ConstructArrayInterface.php │ │ ├── ConstructObjectInterface.php │ │ ├── CreatorInterface.php │ │ ├── DBDataRowTransactionsInterface.php │ │ ├── PreSerialize.php │ │ ├── ResultsInterface.php │ │ └── ShardDataRowInterface.php │ ├── Models │ │ └── EloquentDataRowModel.php │ ├── NodeQueries.php │ ├── NodeQuery.php │ ├── NodeQueryModifier.php │ ├── NodeQueryModifiers.php │ ├── PaginationStatement.php │ ├── PreStatement.php │ ├── ShardCache.php │ ├── ShardDB.php │ ├── ShardMatrixStatement.php │ └── ShardMatrixStatements.php ├── DockerNetwork.php ├── Dsn.php ├── Exception.php ├── GoThreaded │ ├── Client.php │ ├── GoThreadedException.php │ ├── NodeResult.php │ └── Results.php ├── Node.php ├── NodeDistributor.php ├── NodeQueriesAsyncInterface.php ├── NodeQueriesGoThreaded.php ├── NodeQueriesPcntlFork.php ├── Nodes.php ├── PdoCache.php ├── PdoCacheInterface.php ├── PdoCacheMemcached.php ├── PdoCacheRedis.php ├── ShardMatrix.php ├── Table.php ├── TableGroup.php ├── TableGroups.php ├── Tables.php ├── UniqueColumns.php └── Uuid.php └── tests ├── .mysql-dev-env ├── .postgres-dev-env ├── docker-compose.yaml ├── shard_matrix.yaml └── src └── TestSchema.php /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/.gitignore -------------------------------------------------------------------------------- /.mysql-dev-env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/.mysql-dev-env -------------------------------------------------------------------------------- /.postgres-dev-env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/.postgres-dev-env -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/README.md -------------------------------------------------------------------------------- /Testing.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/Testing.php -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/composer.json -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/composer.lock -------------------------------------------------------------------------------- /docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/docker-compose.yaml -------------------------------------------------------------------------------- /shard_matrix.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/shard_matrix.yaml -------------------------------------------------------------------------------- /src/Config.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Config.php -------------------------------------------------------------------------------- /src/DB/Builder/BuilderException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/BuilderException.php -------------------------------------------------------------------------------- /src/DB/Builder/DB.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/DB.php -------------------------------------------------------------------------------- /src/DB/Builder/Model.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/Model.php -------------------------------------------------------------------------------- /src/DB/Builder/QueryBuilder.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/QueryBuilder.php -------------------------------------------------------------------------------- /src/DB/Builder/Schema.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/Schema.php -------------------------------------------------------------------------------- /src/DB/Builder/SchemaBuilder.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/SchemaBuilder.php -------------------------------------------------------------------------------- /src/DB/Builder/ShardMatrixConnection.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/ShardMatrixConnection.php -------------------------------------------------------------------------------- /src/DB/Builder/UnassignedConnection.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/UnassignedConnection.php -------------------------------------------------------------------------------- /src/DB/Builder/UnassignedNode.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Builder/UnassignedNode.php -------------------------------------------------------------------------------- /src/DB/Connections.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Connections.php -------------------------------------------------------------------------------- /src/DB/DataRow.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/DataRow.php -------------------------------------------------------------------------------- /src/DB/DataRowFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/DataRowFactory.php -------------------------------------------------------------------------------- /src/DB/DataRows.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/DataRows.php -------------------------------------------------------------------------------- /src/DB/DuplicateException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/DuplicateException.php -------------------------------------------------------------------------------- /src/DB/Exception.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Exception.php -------------------------------------------------------------------------------- /src/DB/GroupSum.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/GroupSum.php -------------------------------------------------------------------------------- /src/DB/GroupSums.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/GroupSums.php -------------------------------------------------------------------------------- /src/DB/Interfaces/ConstructArrayInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Interfaces/ConstructArrayInterface.php -------------------------------------------------------------------------------- /src/DB/Interfaces/ConstructObjectInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Interfaces/ConstructObjectInterface.php -------------------------------------------------------------------------------- /src/DB/Interfaces/CreatorInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Interfaces/CreatorInterface.php -------------------------------------------------------------------------------- /src/DB/Interfaces/DBDataRowTransactionsInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Interfaces/DBDataRowTransactionsInterface.php -------------------------------------------------------------------------------- /src/DB/Interfaces/PreSerialize.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Interfaces/PreSerialize.php -------------------------------------------------------------------------------- /src/DB/Interfaces/ResultsInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Interfaces/ResultsInterface.php -------------------------------------------------------------------------------- /src/DB/Interfaces/ShardDataRowInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Interfaces/ShardDataRowInterface.php -------------------------------------------------------------------------------- /src/DB/Models/EloquentDataRowModel.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/Models/EloquentDataRowModel.php -------------------------------------------------------------------------------- /src/DB/NodeQueries.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/NodeQueries.php -------------------------------------------------------------------------------- /src/DB/NodeQuery.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/NodeQuery.php -------------------------------------------------------------------------------- /src/DB/NodeQueryModifier.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/NodeQueryModifier.php -------------------------------------------------------------------------------- /src/DB/NodeQueryModifiers.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/NodeQueryModifiers.php -------------------------------------------------------------------------------- /src/DB/PaginationStatement.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/PaginationStatement.php -------------------------------------------------------------------------------- /src/DB/PreStatement.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/PreStatement.php -------------------------------------------------------------------------------- /src/DB/ShardCache.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/ShardCache.php -------------------------------------------------------------------------------- /src/DB/ShardDB.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/ShardDB.php -------------------------------------------------------------------------------- /src/DB/ShardMatrixStatement.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/ShardMatrixStatement.php -------------------------------------------------------------------------------- /src/DB/ShardMatrixStatements.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DB/ShardMatrixStatements.php -------------------------------------------------------------------------------- /src/DockerNetwork.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/DockerNetwork.php -------------------------------------------------------------------------------- /src/Dsn.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Dsn.php -------------------------------------------------------------------------------- /src/Exception.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Exception.php -------------------------------------------------------------------------------- /src/GoThreaded/Client.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/GoThreaded/Client.php -------------------------------------------------------------------------------- /src/GoThreaded/GoThreadedException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/GoThreaded/GoThreadedException.php -------------------------------------------------------------------------------- /src/GoThreaded/NodeResult.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/GoThreaded/NodeResult.php -------------------------------------------------------------------------------- /src/GoThreaded/Results.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/GoThreaded/Results.php -------------------------------------------------------------------------------- /src/Node.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Node.php -------------------------------------------------------------------------------- /src/NodeDistributor.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/NodeDistributor.php -------------------------------------------------------------------------------- /src/NodeQueriesAsyncInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/NodeQueriesAsyncInterface.php -------------------------------------------------------------------------------- /src/NodeQueriesGoThreaded.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/NodeQueriesGoThreaded.php -------------------------------------------------------------------------------- /src/NodeQueriesPcntlFork.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/NodeQueriesPcntlFork.php -------------------------------------------------------------------------------- /src/Nodes.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Nodes.php -------------------------------------------------------------------------------- /src/PdoCache.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/PdoCache.php -------------------------------------------------------------------------------- /src/PdoCacheInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/PdoCacheInterface.php -------------------------------------------------------------------------------- /src/PdoCacheMemcached.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/PdoCacheMemcached.php -------------------------------------------------------------------------------- /src/PdoCacheRedis.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/PdoCacheRedis.php -------------------------------------------------------------------------------- /src/ShardMatrix.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/ShardMatrix.php -------------------------------------------------------------------------------- /src/Table.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Table.php -------------------------------------------------------------------------------- /src/TableGroup.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/TableGroup.php -------------------------------------------------------------------------------- /src/TableGroups.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/TableGroups.php -------------------------------------------------------------------------------- /src/Tables.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Tables.php -------------------------------------------------------------------------------- /src/UniqueColumns.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/UniqueColumns.php -------------------------------------------------------------------------------- /src/Uuid.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/src/Uuid.php -------------------------------------------------------------------------------- /tests/.mysql-dev-env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/tests/.mysql-dev-env -------------------------------------------------------------------------------- /tests/.postgres-dev-env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/tests/.postgres-dev-env -------------------------------------------------------------------------------- /tests/docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/tests/docker-compose.yaml -------------------------------------------------------------------------------- /tests/shard_matrix.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/tests/shard_matrix.yaml -------------------------------------------------------------------------------- /tests/src/TestSchema.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JRSaunders/ShardMatrix/HEAD/tests/src/TestSchema.php --------------------------------------------------------------------------------