Смотрите подробное описание запроса [CREATE TABLE](../../query_language/create.md#create-table-query).
## Запись данных {#table_engines-stripelog-writing-the-data}
Движок `StripeLog` хранит все столбцы в одном файле. При каждом запросе `INSERT`, ClickHouse добавляет блок данных в конец файла таблицы, записывая столбцы один за другим.
Для каждой таблицы ClickHouse записывает файлы:
-`data.bin` — файл с данными.
-`index.mrk` — файл с метками. Метки содержат смещения для каждого столбца каждого вставленного блока данных.
Движок `StripeLog` не поддерживает запросы `ALTER UPDATE` и `ALTER DELETE`.
## Чтение данных {#table_engines-stripelog-reading-the-data}
Файл с метками позволяет ClickHouse распараллеливать чтение данных. Это означает, что запрос `SELECT` возвращает строки в непредсказуемом порядке. Используйте секцию `ORDER BY` для сортировки строк.
## Пример использования {#table_engines-stripelog-example-of-use}
Создание таблицы:
```sql
CREATE TABLE stripe_log_table
(
timestamp DateTime,
message_type String,
message String
)
ENGINE = StripeLog
```
Вставка данных:
```sql
INSERT INTO stripe_log_table VALUES (now(),'REGULAR','The first regular message')
INSERT INTO stripe_log_table VALUES (now(),'REGULAR','The second regular message'),(now(),'WARNING','The first warning message')
```
Мы использовали два запроса `INSERT` для создания двух блоков данных внутри файла `data.bin`.
ClickHouse использует несколько потоков при выборе данных. Каждый поток считывает отдельный блок данных и возвращает результирующие строки независимо по мере завершения. В результате порядок блоков строк в выходных данных в большинстве случаев не совпадает с порядком тех же блоков во входных данных. Например: