openglacier / glacierdb
PHP driver for glacierdb with core-managed .ogid identities
v0.1.0
2026-10-23 11:38 UTC
Requires
- php: ^8.2
- ext-sodium: *
- rybakit/msgpack: ^0.9
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
PHP 8.2+ client for glacierdb.
Install
composer require openglacier/glacierdb
For a local checkout:
composer install
Requires PHP's Sodium extension.
Authenticated query
<?php require __DIR__ . '/vendor/autoload.php'; use GlacierDB\Client; $client = new Client( host: '127.0.0.1', port: 7878, identity: 'data/bootstrap/admin.ogid', ); $client->connect(); $result = $client->query('on data | limit 10'); foreach ($result->documents as $document) { var_dump($document); }
Streaming query
Avoid collecting large query results:
$client->execute( 'on data', function ($document): void { // Process each partial response immediately. var_dump($document); }, );
CSV loading
$count = $client->loadCsv( collection: 'customers', path: 'customers.csv', batchSize: 1000, ); echo "Loaded {$count} rows\n";
Protocol
The driver implements the current Core protocol:
- TCP
uint32big-endian payload length - MessagePack payload
auth.begin/ Ed25519 challenge /auth.completequery.executepartial,complete,errorstream responses- multiplexed events such as
core.heartbeat