
# Ātrais sākums

```php
use Storh\DocStore;
use Storh\Queue;
use Storh\RecordQuery;
use Storh\SegmentedLog;
use Storh\StorageRoot;

$root = StorageRoot::resolve(__DIR__ . '/var/storh', 'demo');

$docs = new DocStore($root, 'pages');
$home = $docs->put([
    'kind' => 'page',
    'title' => 'Home',
]);

$loaded = $docs->get($home->id());

$log = new SegmentedLog($root, 'events');
$log->put([
    'type' => 'page.saved',
    'pageId' => $home->id(),
]);

foreach ($log->stream(RecordQuery::all()->after($home->id())->limit(50)) as $record) {
    // Process records lazily.
}

$queue = new Queue($root, 'jobs');
$jobId = $queue->enqueue(['task' => 'render', 'pageId' => $home->id()]);

$job = $queue->claim();
if (null !== $job) {
    $queue->complete($job->id());
}
```

Visi trīs dzinēji glabā masīvus kā ierakstu datus un atgriež `StorageRecord` objektus ar piekļuves metodēm `id()` un `data()`.

Abi krātuves veidi piedāvā arī plūstošu vaicājumu veidotāju:

```php
$pages = $docs
    ->query()
    ->where('kind')->eq('page')
    ->orderBy('title')
    ->limit(20)
    ->get();
```

Ko darīt tālāk:

- [Dzinēja izvēle](https://storh.inline0.dev/lv/docs/engines#choosing-an-engine) — noskaidrojiet, kura krātuve ir piemērota konkrētajai slodzei
- Pirms filtrējat kolekcijas ar vairāk nekā dažiem tūkstošiem ierakstu, izmantojiet [Indeksus](https://storh.inline0.dev/lv/docs/indexes)
- [SQL Spogulis](https://storh.inline0.dev/lv/docs/sql-mirror) savienošanai, meklēšanai un pārskatiem, izmantojot SQL
