C++ zero-cost abstractions на примере хеш-таблиц в ClickHouseСтарший разработчик ClickHouse C++ zero-cost abstractions на примере хеш-таблиц в ClickHouse Введение в хеш-таблицы Содержание 01 Основные вопросы дизайна 02 Бенчмарки 03 C++ дизайн хэш-таблицы 04 Введение com/rurban/smhasher Выбор хеш-функции 10 10 По умолчанию в ClickHouse плохие хэш-функции 1. CRC32-C для целочисленных типов. Одна инструкция (на самом деле две) процессора latency 3 такта 2. Специальная Отдельно обрабатывать пустое значение и не хранить его в хэш- таблице. Способ размещения в памяти 22 22 Cжатое хранения метадаты и данных. Бенчмарки 03 Бенчмарки 24 24 Как не надо делать бенчмарки 250 码力 | 49 页 | 2.73 MB | 1 年前3
PlantUML 1.2023.11 Справочное руководство по языкуUser -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C B --> A: RequestCreated deactivate B A -> User: Done deactivate A @enduml синтаксис (X,color). @startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml @startuml participant Bob << (C,#ADD1B2) >> participant Alice << (C,#ADD1B2) >> Bob->Alice: First message0 码力 | 554 页 | 7.96 MB | 1 年前3
firebird language reference 30 rusошибок GDSCODE их описание, и SQLCODE ......................................................... 559 C. Зарезервированные и ключевые слова ............................................................... сор, которое позволяет вам внедрять SQL конструкции в ваш непосредственный язык программирования (C, C++, Pascal, Cobol и так далее) и производить обработку этих внедрённых конструкций в правильные вызовы letter>::= A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z ::= a | b | c | d | e | f | g | h | i | j | k | l 0 码力 | 719 页 | 3.98 MB | 1 年前3
PlantUML 1.2021.2 Справочное руководство по языку[QA-1765](https://forum.plantuml.net/1765/is-it-possible-to-have-different-shapes-for-notes?show=1806#c1806)]* 1.16 Note over all participants [across] You can directly make a note over all participants User -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C Справочное руководство по языку PlantUML (1.2021.2) 18 / 387 1.24 Активация синтаксис (X,color). @startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется0 码力 | 388 页 | 4.18 MB | 1 年前3
PlantUML 1.2021.1 Справочное руководство по языку[QA-1765](https://forum.plantuml.net/1765/is-it-possible-to-have-different-shapes-for-notes?show=1806#c1806)]* 1.16 Note over all participants [across] You can directly make a note over all participants User -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C Справочное руководство по языку PlantUML (1.2021.1) 18 / 382 1.24 Активация синтаксис (X,color). @startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется0 码力 | 383 页 | 4.13 MB | 1 年前3
PlantUML 1.2021.3 Справочное руководство по языку[QA-1765](https://forum.plantuml.net/1765/is-it-possible-to-have-different-shapes-for-notes?show=1806#c1806)]* 1.16 Note over all participants [across] You can directly make a note over all participants User -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C Справочное руководство по языку PlantUML (1.2021.2) 18 / 405 1.24 Активация ДИАГРАММА ПОСЛЕДОВАТЕЛЬНОСТИ participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется0 码力 | 406 页 | 4.33 MB | 1 年前3
PlantUML 1.2020.23 Справочное руководство по языкуUser -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C B --> A: RequestCreated deactivate B A -> User: Done deactivate A @enduml синтаксис (X,color). @startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml @startuml participant Bob << (C,#ADD1B2) >> participant Alice << (C,#ADD1B2) >> Bob->Alice: First message0 码力 | 306 页 | 3.12 MB | 1 年前3
PlantUML 1.2020.22 Справочное руководство по языкуUser -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C B --> A: RequestCreated deactivate B A -> User: Done deactivate A @enduml синтаксис (X,color). @startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется @startuml skinparam guillemet false participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml Справочное руководство по языку PlantUML (10 码力 | 294 页 | 3.03 MB | 1 年前3
PlantUML 1.2019.6 Справочное руководство по языкуUser -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C B --> A: RequestCreated deactivate B A -> User: Done deactivate A @enduml синтаксис (X,color). @startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml @startuml participant Bob << (C,#ADD1B2) >> participant Alice << (C,#ADD1B2) >> Bob->Alice: First message0 码力 | 173 页 | 1.95 MB | 1 年前3
PlantUML 1.2019.9 Справочное руководство по языкуUser -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C B --> A: RequestCreated deactivate B A -> User: Done deactivate A @enduml синтаксис (X,color). @startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml По умолчанию, символ guillemet используется << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml @startuml participant Bob << (C,#ADD1B2) >> participant Alice << (C,#ADD1B2) >> Bob->Alice: First message0 码力 | 173 页 | 1.97 MB | 1 年前3
共 19 条
- 1
- 2













