提交 1d7cab02 编写于 作者: O ocadaruma

Fix corrupted markdowns

上级 fb9d05e9
......@@ -577,7 +577,7 @@ If a function captures ownership of an object created in the heap, make the argu
**14.** Return values.
In most cases, just use `return`. Do not write `[return std::move(res)]{.strike}`.
In most cases, just use `return`. Do not write `return std::move(res)`.
If the function allocates an object on heap and returns it, use `shared_ptr` or `unique_ptr`.
......@@ -671,7 +671,7 @@ Always use `#pragma once` instead of include guards.
**24.** Do not use `trailing return type` for functions unless necessary.
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** Declaration and initialization of variables.
......
......@@ -6,7 +6,7 @@ toc_priority: 101
# Can I Use ClickHouse As a Key-Value Storage? {#can-i-use-clickhouse-as-a-key-value-storage}
The short answer is **“no”**. The key-value workload is among top positions in the list of cases when NOT{.text-danger} to use ClickHouse. It’s an [OLAP](../../faq/general/olap.md) system after all, while there are many excellent key-value storage systems out there.
The short answer is **“no”**. The key-value workload is among top positions in the list of cases when **NOT**{.text-danger} to use ClickHouse. It’s an [OLAP](../../faq/general/olap.md) system after all, while there are many excellent key-value storage systems out there.
However, there might be situations where it still makes sense to use ClickHouse for key-value-like queries. Usually, it’s some low-budget products where the main workload is analytical in nature and fits ClickHouse well, but there’s also some secondary process that needs a key-value pattern with not so high request throughput and without strict latency requirements. If you had an unlimited budget, you would have installed a secondary key-value database for thus secondary workload, but in reality, there’s an additional cost of maintaining one more storage system (monitoring, backups, etc.) which might be desirable to avoid.
......
此差异已折叠。
......@@ -579,7 +579,7 @@ Si una función captura la propiedad de un objeto creado en el montón, cree el
**14.** Valores devueltos.
En la mayoría de los casos, sólo tiene que utilizar `return`. No escribir `[return std::move(res)]{.strike}`.
En la mayoría de los casos, sólo tiene que utilizar `return`. No escribir `return std::move(res)`.
Si la función asigna un objeto en el montón y lo devuelve, use `shared_ptr` o `unique_ptr`.
......@@ -673,7 +673,7 @@ Utilice siempre `#pragma once` en lugar de incluir guardias.
**24.** No use `trailing return type` para funciones a menos que sea necesario.
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** Declaración e inicialización de variables.
......
此差异已折叠。
......@@ -580,7 +580,7 @@ ready_any.set();
**14.** ارزش بازگشت.
در اکثر موارد فقط استفاده کنید `return`. ننویس `[return std::move(res)]{.strike}`.
در اکثر موارد فقط استفاده کنید `return`. ننویس `return std::move(res)`.
اگر تابع یک شی در پشته اختصاص و بازده, استفاده `shared_ptr` یا `unique_ptr`.
......@@ -674,7 +674,7 @@ Loader() {}
**24.** استفاده نشود `trailing return type` برای توابع مگر اینکه لازم باشد.
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** اعلامیه و مقدار دهی اولیه از متغیرهای.
......
此差异已折叠。
......@@ -579,7 +579,7 @@ Si une fonction capture la propriété d'un objet créé dans le tas, définisse
**14.** Les valeurs de retour.
Dans la plupart des cas, il suffit d'utiliser `return`. Ne pas écrire `[return std::move(res)]{.strike}`.
Dans la plupart des cas, il suffit d'utiliser `return`. Ne pas écrire `return std::move(res)`.
Si la fonction alloue un objet sur le tas et le renvoie, utilisez `shared_ptr` ou `unique_ptr`.
......@@ -673,7 +673,7 @@ Toujours utiliser `#pragma once` au lieu d'inclure des gardes.
**24.** Ne pas utiliser de `trailing return type` pour les fonctions, sauf si nécessaire.
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** Déclaration et initialisation des variables.
......
此差异已折叠。
......@@ -579,7 +579,7 @@ Forkは並列化には使用されません。
**14.** 戻り値。
ほとんどの場合、 `return`. 書かない `[return std::move(res)]{.strike}`.
ほとんどの場合、 `return`. 書かない `return std::move(res)`.
関数がオブジェクトをヒープに割り当てて返す場合は、次のようにします `shared_ptr` または `unique_ptr`.
......@@ -673,7 +673,7 @@ Loader() {}
**24.** 使用しない `trailing return type` 必要がない限り機能のため。
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** 変数の宣言と初期化。
......
此差异已折叠。
......@@ -582,7 +582,7 @@ Fork для распараллеливания не используется.
**14.** Возврат значений.
В большинстве случаев, просто возвращайте значение с помощью `return`. Не пишите `[return std::move(res)]{.strike}`.
В большинстве случаев, просто возвращайте значение с помощью `return`. Не пишите `return std::move(res)`.
Если внутри функции создаётся объект на куче и отдаётся наружу, то возвращайте `shared_ptr` или `unique_ptr`.
......@@ -676,7 +676,7 @@ Loader() {}
**24.** Не нужно использовать `trailing return type` для функций, если в этом нет необходимости.
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** Объявление и инициализация переменных.
......
......@@ -579,7 +579,7 @@ Bir işlev öbekte oluşturulan bir nesnenin sahipliğini yakalarsa, bağımsız
**14.** Değerleri döndürür.
Çoğu durumda, sadece kullanın `return`. Yaz domayın `[return std::move(res)]{.strike}`.
Çoğu durumda, sadece kullanın `return`. Yaz domayın `return std::move(res)`.
İşlev öbek üzerinde bir nesne ayırır ve döndürürse, şunları kullanın `shared_ptr` veya `unique_ptr`.
......@@ -673,7 +673,7 @@ Her zaman kullanın `#pragma once` korumaları dahil etmek yerine.
**24.** Kullanmayın `trailing return type` gerekli olmadıkça fonksiyonlar için.
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** Değişkenlerin bildirimi ve başlatılması.
......
此差异已折叠。
......@@ -572,7 +572,7 @@ Fork不用于并行化。
**14.** 返回值
大部分情况下使用 `return`。不要使用 `[return std::move(res)]{.strike}`
大部分情况下使用 `return`。不要使用 `return std::move(res)`
如果函数在堆上分配对象并返回它,请使用 `shared_ptr``unique_ptr`
......@@ -666,7 +666,7 @@ Loader() {}
**24.** 不要使用 `trailing return type` 为必要的功能。
``` cpp
[auto f() -> void;]{.strike}
auto f() -> void
```
**25.** 声明和初始化变量。
......
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册