mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-10 01:25:21 +00:00
Retrigger CI + make docs a bit better
This commit is contained in:
parent
7d7aea9826
commit
f9579580e9
@ -128,17 +128,17 @@ Reading data from `table.csv`, located in `archive1.zip` or/and `archive2.zip`:
|
|||||||
SELECT * FROM file('user_files/archives/archive{1..2}.zip :: table.csv');
|
SELECT * FROM file('user_files/archives/archive{1..2}.zip :: table.csv');
|
||||||
```
|
```
|
||||||
|
|
||||||
## Globbing {#globs_in_path}
|
## Globs in path {#globs_in_path}
|
||||||
|
|
||||||
Paths may use globbing. Files must match the whole path pattern, not only the suffix or prefix.
|
Paths may use globbing. Files must match the whole path pattern, not only the suffix or prefix.
|
||||||
|
|
||||||
- `*` — Represents arbitrarily many characters except `/` but including the empty string.
|
- `*` — Represents arbitrarily many characters except `/` but including the empty string.
|
||||||
- `?` — Represents an arbitrary single character.
|
- `?` — Represents an arbitrary single character.
|
||||||
- `{some_string,another_string,yet_another_one}` — Represents any of alternative strings `'some_string', 'another_string', 'yet_another_one'`. The strings may contain `/`.
|
- `{some_string,another_string,yet_another_one}` — Substitutes any of strings `'some_string', 'another_string', 'yet_another_one'`. The strings can contain the `/` symbol.
|
||||||
- `{N..M}` — Represents any number `>= N` and `<= M`.
|
- `{N..M}` — Represents any number `>= N` and `<= M`.
|
||||||
- `**` - Represents all files inside a folder recursively.
|
- `**` - Represents all files inside a folder recursively.
|
||||||
|
|
||||||
Constructions with `{}` are similar to the [remote](remote.md) table function.
|
Constructions with `{}` are similar to the [remote](remote.md) and [hdfs](hdfs.md) table functions.
|
||||||
|
|
||||||
**Example**
|
**Example**
|
||||||
|
|
||||||
|
@ -41,14 +41,14 @@ LIMIT 2
|
|||||||
|
|
||||||
## Globs in path {#globs_in_path}
|
## Globs in path {#globs_in_path}
|
||||||
|
|
||||||
Multiple path components can have globs. For being processed file should exists and matches to the whole path pattern (not only suffix or prefix).
|
Paths may use globbing. Files must match the whole path pattern, not only the suffix or prefix.
|
||||||
|
|
||||||
- `*` — Substitutes any number of any characters except `/` including empty string.
|
- `*` — Represents arbitrarily many characters except `/` but including the empty string.
|
||||||
- `?` — Substitutes any single character.
|
- `?` — Represents an arbitrary single character.
|
||||||
- `{some_string,another_string,yet_another_one}` — Substitutes any of strings `'some_string', 'another_string', 'yet_another_one'`. The strings can contain the `/` symbol.
|
- `{some_string,another_string,yet_another_one}` — Substitutes any of strings `'some_string', 'another_string', 'yet_another_one'`. The strings can contain the `/` symbol.
|
||||||
- `{N..M}` — Substitutes any number in range from N to M including both borders.
|
- `{N..M}` — Represents any number `>= N` and `<= M`.
|
||||||
|
|
||||||
Constructions with `{}` are similar to the [remote](../../sql-reference/table-functions/remote.md)) table function.
|
Constructions with `{}` are similar to the [remote](remote.md) and [file](file.md) table functions.
|
||||||
|
|
||||||
**Example**
|
**Example**
|
||||||
|
|
||||||
|
@ -76,14 +76,16 @@ SELECT * FROM file('test.csv', 'CSV', 'column1 UInt32, column2 UInt32, column3 U
|
|||||||
|
|
||||||
## Шаблоны поиска в компонентах пути {#globs-in-path}
|
## Шаблоны поиска в компонентах пути {#globs-in-path}
|
||||||
|
|
||||||
При описании пути к файлу могут использоваться шаблоны поиска. Обрабатываются только те файлы, у которых путь и название соответствуют шаблону полностью (а не только префикс или суффикс).
|
Путь к файлу может содержать шаблоны в режиме доступа только для чтения.
|
||||||
|
Шаблоны могут содержаться в разных частях пути.
|
||||||
|
Обрабатываться будут те и только те файлы, которые существуют в файловой системе и удовлетворяют всему шаблону пути.
|
||||||
|
|
||||||
- `*` — заменяет любое количество любых символов кроме `/`, включая отсутствие символов.
|
- `*` — заменяет любое количество любых символов кроме `/`, включая отсутствие символов.
|
||||||
- `?` — заменяет ровно один любой символ.
|
- `?` — заменяет ровно один любой символ.
|
||||||
- `{some_string,another_string,yet_another_one}` — заменяет любую из строк `'some_string', 'another_string', 'yet_another_one'`. Эти строки также могут содержать символ `/`.
|
- `{some_string,another_string,yet_another_one}` — заменяет любую из строк `'some_string', 'another_string', 'yet_another_one'`. Эти строки также могут содержать символ `/`.
|
||||||
- `{N..M}` — заменяет любое число в интервале от `N` до `M` включительно (может содержать ведущие нули).
|
- `{N..M}` — заменяет любое число в интервале от `N` до `M` включительно (может содержать ведущие нули).
|
||||||
|
|
||||||
Конструкция с `{}` аналогична табличной функции [remote](remote.md).
|
Конструкция с `{}` аналогична табличным функциям [remote](remote.md), [hdfs](hdfs.md).
|
||||||
|
|
||||||
**Пример**
|
**Пример**
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ hdfs(URI, format, structure)
|
|||||||
|
|
||||||
**Входные параметры**
|
**Входные параметры**
|
||||||
|
|
||||||
- `URI` — URI файла в HDFS. Путь к файлу поддерживает следующие шаблоны в режиме доступа только для чтения `*`, `?`, `{abc,def}` и `{N..M}`, где `N`, `M` — числа, \``'abc', 'def'` — строки.
|
- `URI` — URI файла в HDFS.
|
||||||
- `format` — [формат](../../interfaces/formats.md#formats) файла.
|
- `format` — [формат](../../interfaces/formats.md#formats) файла.
|
||||||
- `structure` — структура таблицы. Формат `'column1_name column1_type, column2_name column2_type, ...'`.
|
- `structure` — структура таблицы. Формат `'column1_name column1_type, column2_name column2_type, ...'`.
|
||||||
|
|
||||||
@ -41,19 +41,22 @@ LIMIT 2
|
|||||||
|
|
||||||
## Шаблоны поиска в компонентах пути {#globs-in-path}
|
## Шаблоны поиска в компонентах пути {#globs-in-path}
|
||||||
|
|
||||||
- `*` — Заменяет любое количество любых символов кроме `/`, включая отсутствие символов.
|
Путь к файлу может содержать шаблоны в режиме доступа только для чтения.
|
||||||
|
Шаблоны могут содержаться в разных частях пути.
|
||||||
|
Обрабатываться будут те и только те файлы, которые существуют в файловой системе и удовлетворяют всему шаблону пути.
|
||||||
|
|
||||||
|
|
||||||
|
- `*` — Заменяет любое количество любых символов (кроме `/`), включая отсутствие символов.
|
||||||
- `?` — Заменяет ровно один любой символ.
|
- `?` — Заменяет ровно один любой символ.
|
||||||
- `{some_string,another_string,yet_another_one}` — Заменяет любую из строк `'some_string', 'another_string', 'yet_another_one'`. Эти строки также могут содержать символ `/`.
|
- `{some_string,another_string,yet_another_one}` — Заменяет любую из строк `'some_string', 'another_string', 'yet_another_one'`. Эти строки также могут содержать символ `/`.
|
||||||
- `{N..M}` — Заменяет любое число в интервале от `N` до `M` включительно (может содержать ведущие нули).
|
- `{N..M}` — Заменяет любое число в интервале от `N` до `M` включительно (может содержать ведущие нули).
|
||||||
|
|
||||||
Конструкция с `{}` аналогична табличной функции [remote](remote.md).
|
Конструкция с `{}` аналогична табличной функции [remote](remote.md), [file](file.md).
|
||||||
|
|
||||||
:::danger Предупреждение
|
:::danger Предупреждение
|
||||||
Если ваш список файлов содержит интервал с ведущими нулями, используйте конструкцию с фигурными скобками для каждой цифры по отдельности или используйте `?`.
|
Если ваш список файлов содержит интервал с ведущими нулями, используйте отдельную конструкцию с фигурными скобками для каждой цифры или используйте `?`.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Шаблоны могут содержаться в разных частях пути. Обрабатываться будут ровно те файлы, которые и удовлетворяют всему шаблону пути, и существуют в файловой системе.
|
|
||||||
|
|
||||||
## Виртуальные столбцы {#virtualnye-stolbtsy}
|
## Виртуальные столбцы {#virtualnye-stolbtsy}
|
||||||
|
|
||||||
- `_path` — Путь к файлу.
|
- `_path` — Путь к файлу.
|
||||||
|
@ -609,7 +609,7 @@ bool HDFSSource::initialize()
|
|||||||
/// We should not return single chunk with all number of rows,
|
/// We should not return single chunk with all number of rows,
|
||||||
/// because there is a chance that this chunk will be materialized later
|
/// because there is a chance that this chunk will be materialized later
|
||||||
/// (it can cause memory problems even with default values in columns or when virtual columns are requested).
|
/// (it can cause memory problems even with default values in columns or when virtual columns are requested).
|
||||||
/// Instead, we use special ConstChunkGenerator that will generate chunks
|
/// Instead, we use a special ConstChunkGenerator that will generate chunks
|
||||||
/// with max_block_size rows until total number of rows is reached.
|
/// with max_block_size rows until total number of rows is reached.
|
||||||
auto source = std::make_shared<ConstChunkGenerator>(block_for_format, *num_rows_from_cache, max_block_size);
|
auto source = std::make_shared<ConstChunkGenerator>(block_for_format, *num_rows_from_cache, max_block_size);
|
||||||
builder.init(Pipe(source));
|
builder.init(Pipe(source));
|
||||||
@ -636,7 +636,7 @@ bool HDFSSource::initialize()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Add ExtractColumnsTransform to extract requested columns/subcolumns
|
/// Add ExtractColumnsTransform to extract requested columns/subcolumns
|
||||||
/// from chunk read by IInputFormat.
|
/// from the chunk read by IInputFormat.
|
||||||
builder.addSimpleTransform([&](const Block & header)
|
builder.addSimpleTransform([&](const Block & header)
|
||||||
{
|
{
|
||||||
return std::make_shared<ExtractColumnsTransform>(header, requested_columns);
|
return std::make_shared<ExtractColumnsTransform>(header, requested_columns);
|
||||||
|
Loading…
Reference in New Issue
Block a user