- 博客(18)
- 资源 (2)
- 收藏
- 关注
原创 ClickHouse MergeTree启动加速--使用篇
前言MergeTree Family启动慢问题一直是ClickHouse社区的痛点。在完成对所有MergeTree part的加载之前,clickhouse-server实例无法对外提供服务。而在生产环境中,加载过程动辄持续几十分钟,严重影响clickhouse集群的可用性。针对这个痛点,我们开发了MergeTree启动加速特性:通过RocksDB缓存part元数据,将clickhouse-server的启动时间从小时级减少到分钟级。该特性目前已被合入社区,PR见:https://github.com/Cl
2022-05-17 19:32:53
1164
1
原创 【译】ClickHouse 22.3 LTS 发布
作者:Alexey Milovidov原文链接:https://clickhouse.com/blog/clickhouse-22-3-lts-released/新的 ClickHouse 版本 22.3 已准备就绪!这是一个长期支持版本 (LTS) — 在2023 年 3 月之前我们将对其进行安全更新和重要错误修复。该版本包括来自 86 个贡献者的 1308 个新提交,其中包括 25个新贡献者:1lann, Anish Bhanwala, Eugene Galkin, HaiBo Li, Hongbin,
2022-04-28 20:49:56
960
原创 【译】ClickHouse 22.1版本新特性盘点
作者:Alexey Milovidov原文链接:https://clickhouse.com/blog/en/2022/clickhouse-v22.1-released/22.1 是我们新年的第一个版本。它包括来自 133 个贡献者的 2,599 个新提交,其中包括 44 个新贡献者:13DaGGeR, Adri Fernandez, Alexey Gusev, Anselmo D. Adams, Antonio Andelic, Ben, Boris Kuschel, Christoph Wurm, C
2022-01-31 18:03:24
2588
原创 《optimizing software in c++》读书笔记(二)
书接上回,继续阅读第七章(The efficiency of different C++ constructs)The efficiency of different C++ constructs循环循环的效率取决于微处理器对循环控制分支的预测能力。一个具有一个较小并且固定的重复计数,没有分支的循环,可以完美地被预测。循环展开展开前int i;for (i = 0; i < 20; i++){ if&nbs
2021-12-25 15:09:10
532
原创 《optimizing software in c++》读书笔记(一)
世面上将c++性能优化的书其实不少了,但是很多都停留在架构、算法、数据结构层面,大都是些老生常谈了。而从语言本身、操作系统、硬件层面系统阐述性能优化的技术书则少了很多。而《optimizing software in c++》正是这样的一本书,作者Agner Fog的职业也挺有意思,除了是计算机科学家,还是进化人类学家,而且后者看起来还是主业..这周末花了一天时间阅读了这本书中感兴趣的几个章节。笔者将会连载几篇读书笔记总结主要知识点。7 The efficiency of different C++ con
2021-12-19 17:10:16
944
原创 聊聊ClickHouse的开发、编译和测试
ClickHouse为了一款性能极佳的开源OLAP数据库,在最近几年也是越来越火,除了在各大互联网公司落地生根之外,也吸引了一大批热心的贡献者。截止到v21.10版本,CH在全球一共有1064名contributor。SELECT count(1)FROM system.contributorsQuery id: 7cdf54f1-cb50-45c0-99b9-14d73d283e39┌─count()─┐│
2021-12-18 18:19:54
1382
原创 《Modern CMake》读书笔记
1. Running cmake1.1. cmake选项--build 指定输出目录-j 指定并行度--target 指定编译目标1.2. 选择编译器EXPORT CC=clang CXX=clang++ cmake ..1.3. 选择生成器默认为make 通过cmake -G Ninja指定ninja1.4. 指定编译选项cmake -DXXX=YYYcmake会将各种编译选项缓存到一个文件中,即CMakeCache.txt1.5. 调试调试makefile: VERBOSE=1
2021-12-12 17:24:08
1145
原创 【转载】Performance tuning in databend
今天转载一个databend大佬分享的PPT。Databend 旨在成为一个开源的弹性可靠云仓库,它提供极快的查询,并结合了云的弹性、简单性、低成本,旨在使数据云变得容易。关注公众号,回复"databend",可获取PPT文档关注公众号,回复"databend",可获取文档...
2021-12-06 17:02:20
69
原创 clickhouse如何解决GLIBC不兼容问题--终篇
在上一篇文章中我们介绍了如何将共享库与binary文件打包来解决clickhouse运行时GLIBC不兼容的问题。但是经过我们的实践发现这种方案其实是有副作用的,而这种副作用在生产环境是致命的,会造成clickhouse进程crash。所以本文推翻了上一篇文章中的方案,使用clickhouse自身的机制彻底解决了GLIBC不兼容问题。共享库与binary文件打包的副作用test_getaddrinfo.cpp#include <sys/types.h>#include &l
2021-12-05 13:06:37
2781
原创 vscode c++远程调试实战
在上两篇文章1,文章2中,我们介绍了c++开发的最佳实践,以及一些常见问题的解决方案。虽然笔者一直用vscode + remote-ssh + clangd阅读代码,但是调试代码时还是不免脱离vscode回到命令行,这多少让人有点分裂。因此本文将介绍如何在vscode中进行c++远程调试。环境准备插件本文章依赖以下插件remote-ssh,让vscode能够远程登陆远程开发机(我们的开发、编译、部署、调试都在这个环境中)clangd: 一款优秀的c++插件,功能完备,支持重构,跳转,自动补全等功能CodeL
2021-12-04 19:29:11
2812
1
原创 vscode clangd c++开发常见问题和解决方案
在上一篇文章中,我们推荐了vscode + remote-ssh + clangd这种C++开发方式。在本文中,我们将总结使用这种方式的过程中遇到的常见问题及其解决方案。找不到标准库头文件原因: clangd启动时需要通过参数指定从那个目录搜索标准库头文件。 "clangd.arguments": [ "--log=verbose", "--header-insertion=never", "--quer
2021-12-04 17:52:29
5580
1
原创 clickhouse如何解决GLIBC不兼容问题
介绍首先解释下为什么会有GLIBC不兼容问题:在clickhouse的编译环境中ubuntu版本是20, 而运行环境中是16,不同ubuntu版本支持的GLIBC版本不一样,因此将ubuntu20上编译出来的ck放在ubuntu16下运行时,便会出现兼容性问题。虽然ck编译时绝大部分库都是静态链接的,但是glibc却是个例外。$ ldd ./clickhouse linux-vdso.so.1 (0x00007ffcc
2021-10-31 17:01:01
940
原创 snappy流式编解码总结
介绍snappy是谷歌开源的用于数据快速压缩和解压的程序库,它的目标并非实现最大压缩率,而是同时实现非常高的压缩速度和合理的压缩率。snappy被广泛应用于google内部和开源的项目中,例如Hadoop, LevelDB, Spark。官方库地址:https://github.com/google/snappy由于最近的工作需要,发现snappy还实现了两个变种,这两个变种分别实现了snappy算法在本地文件系统和hadoop中的流式编解码。以下分别称之为snappy stream code和hadoop
2021-10-31 16:01:28
1678
原创 一个怪异的C++函数定义方式
在阅读clickhouse代码的过程中,发现有一种函数定义形式很怪异,一度以为是代码写错了。。。int main() try{ XXX}catch (DB::Exception & e){ XXX}形式如上,函数名之后怎么能不加花括号呢?这是不是不符合语法?深入了解之后发现原来是我孤陋寡闻了。https://en.cppreference.
2021-09-22 19:32:26
163
原创 【译】Clickhouse与LDAP集成(二)
更多精彩内容,请关注微信公众号:后端技术小屋原文:https://altinity.com/blog/integrating-clickhouse-with-ldap-part-two作者:Vitaliy Zakaznikov之前我们发布了Clickhouse与LDAP集成(一),这是确保Clickhouse帐户安全的重要一步。我们研究了如何将使用LDAP服务器对Clickhouse用户进行认证,而非在 XML配置文件中手动指定用户名密码。在本文中,我们将继续研究如何将ClickHouse和LDAP集成使用
2021-09-20 12:48:39
264
原创 mysql+php实现选课系统中遇到的问题及解决方法
删除表格drop ;约束条件primary key;unique not nullforeighn key(key_name) references(key_name)default auto_increment 表示随着添加,只能递增 显示数据库中所有表格或变量show tables;show variables;
2014-11-19 23:22:02
2401
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人