当前位置: 首页 > news >正文

在华为kylin-pc上安装DuckDB和插件

先用官方文档中推荐的方法。

aaa@kylin-pc:~$ curl https://install.duckdb.org | sh % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL certificate problem: certificate is not yet valid More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above.

按照https://curl.haxx.se/docs/sslcerts.html的提示,添加了-k选项忽略,第一步通过了,第二步仍然报错。

aaa@kylin-pc:~$ curl -k https://install.duckdb.org | sh % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 4054 100 4054 0 0 4791 0 --:--:-- --:--:-- --:--:-- 4786 *** DuckDB Linux/MacOS installation script, version *** .;odxdl, .xXXXXXXXXKc 0XXXXXXXXXXXd cooo: ,XXXXXXXXXXXXK OXXXXd 0XXXXXXXXXXXo cooo: .xXXXXXXXXKc .;odxdl, curl: (60) SSL certificate problem: certificate is not yet valid More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above.

只好直接下载二进制文件了。结果还提示证书问题。用–no-check-certificate忽略。

aaa@kylin-pc:~$ wget https://install.duckdb.org/v1.4.4/duckdb_cli-linux-arm64.zip --2026-01-26 11:23:47-- https://install.duckdb.org/v1.4.4/duckdb_cli-linux-arm64.zip 错误: 无法验证 install.duckdb.org 的由 “CN=WE1,O=Google Trust Services,C=US” 颁发的证书: 颁发的证书还未生效。 要以不安全的方式连接至 install.duckdb.org,使用“--no-check-certificate”。 aaa@kylin-pc:~$ wget https://install.duckdb.org/v1.4.4/duckdb_cli-linux-arm64.zip --no-check-certificate --2026-01-26 11:24:06-- https://install.duckdb.org/v1.4.4/duckdb_cli-linux-arm64.zip 警告: 无法验证 install.duckdb.org 的由 “CN=WE1,O=Google Trust Services,C=US” 颁发的证书: 颁发的证书还未生效。 已发出 Proxy 请求,正在等待回应... 200 OK 长度:17509597 (17M) [application/octet-stream] 正在保存至: “duckdb_cli-linux-arm64.zip” duckdb_cli-linux-arm64.zip 100%[=============================================================================================>] 16.70M 5.92MB/s 用时 2.8s 2026-01-26 11:24:10 (5.92 MB/s) - 已保存 “duckdb_cli-linux-arm64.zip” [17509597/17509597])

解压后执行我的基准测试SQL。并查看cpu信息。

aaa@kylin-pc:~$ unzip duck*zip Archive: duckdb_cli-linux-arm64.zip inflating: duckdb aaa@kylin-pc:~$ ./duckdb DuckDB v1.4.4 (Andium) 6ddac802ff Enter ".help" for usage hints. Connected to a transient in-memory database. Use ".open FILENAME" to reopen on a persistent database. D .timer on D select sum(i) from range(1,10000001)t(i) group by round(log(i)); ┌────────────────┐ │ sum(i) │ │ int128 │ ├────────────────┤ │ 6 │ │ 49590 │ │ 4950617 │ │ 4949999577625 │ │ 494990550 │ │ 490 │ │ 49499924625 │ │ 45000005506497 │ └────────────────┘ Run Time (s): real 0.271 user 0.270474 sys 0.004906 D aaa@kylin-pc:~$ lscpu 架构: aarch64 CPU 运行模式: 32-bit, 64-bit 字节序: Little Endian CPU: 12 在线 CPU 列表: 0-11 每个核的线程数: 1 每个座的核数: 2 座: 3 厂商 ID: ARM 型号: 2 型号名称: HUAWEI Kirin 9000C 步进: r1p2 CPU 最大 MHz: 2189.0000 CPU 最小 MHz: 335.0000 BogoMIPS: 3.84 Vulnerability Itlb multihit: Not affected Vulnerability L1tf: Not affected Vulnerability Mds: Not affected Vulnerability Meltdown: Not affected Vulnerability Mmio stale data: Not affected Vulnerability Retbleed: Not affected Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl Vulnerability Spectre v1: Mitigation; __user pointer sanitization Vulnerability Spectre v2: Mitigation; CSV2, but not BHB Vulnerability Srbds: Not affected Vulnerability Tsx async abort: Not affected 标记: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimd dp sha512 sve asimdfhm dit uscat ilrcpc flagm ssbs sb dcpodp flagm2 frint svei8mm i8mm

为了便于安装插件,先安装httpfs插件。并新建代理服务器的SECRET。

wget http://extensions.duckdb.org/v1.4.4/linux_arm64/httpfs.duckdb_extension.gz D install './httpfs.duckdb_extension.gz'; D CREATE persistent SECRET http_proxy ( TYPE http, HTTP_PROXY 'http://proxy.aaa:8080' ); ┌─────────┐ │ Success │ │ boolean │ ├─────────┤ │ true │ └─────────┘ D load tpch; IO Error: Extension "/home/aaa/.duckdb/extensions/v1.4.4/linux_arm64/tpch.duckdb_extension" not found. Extension "tpch" is an existing extension. Install it first using "INSTALL tpch". D install tpch; IO Error: Failed to download extension "tpch" at URL "http://extensions.duckdb.org/v1.4.4/linux_arm64/tpch.duckdb_extension.gz" Extension "tpch" is an existing extension. For more info, visit https://duckdb.org/docs/stable/extensions/troubleshooting?version=v1.4.4&platform=linux_arm64&extension=tpch (ERROR Failed to read connection)

奇怪还是不能在线安装tpch插件。原来忘记了加载httpfs插件,加载后就能在线安装tpch插件。

D load httpfs; D install tpch; 100% ▕██████████████████████████████████████▏ (00:00:04.88 elapsed) D CALL dbgen(sf = 1); 100% ▕██████████████████████████████████████▏ (00:00:03.30 elapsed) D SELECT current_setting('threads'); ┌────────────────────────────┐ │ current_setting('threads') │ │ int64 │ ├────────────────────────────┤ │ 12 │ └────────────────────────────┘ D copy lineitem to 'lineitem.csv'(HEADER 0); D [1]+ 已停止 ./duckdb aaa@kylin-pc:~$ bg [1]+ ./duckdb &

生成sf=1数据集,并复制lineitem 表到csv文件。
然后测试用awk和duckdb分别汇总第五列,包括csv文件和内存表。

aaa@kylin-pc:~$ tail -2 lineitem.csv 6000000,32255,2256,1,5.00,5936.25,0.04,0.03,N,O,1996-11-02,1996-11-19,1996-12-01,TAKE BACK RETURN,MAIL,riously pe 6000000,96127,6128,2,28.00,31447.36,0.01,0.02,N,O,1996-09-22,1996-10-01,1996-10-21,NONE,AIR,pecial excuses nag evenly f [1]+ 已停止 ./duckdb aaa@kylin-pc:~$ time awk -F ',' '{sum += $5} END {print sum}' lineitem.csv 153078795 real 0m3.354s user 0m2.825s sys 0m0.511s aaa@kylin-pc:~$ fg ./duckdb D .timer on D select sum(l_quantity)from lineitem; ┌──────────────────┐ │ sum(l_quantity) │ │ decimal(38,2) │ ├──────────────────┤ │ 153078795.00 │ │ (153.08 million) │ └──────────────────┘ Run Time (s): real 0.006 user 0.034716 sys 0.000045 D D select sum(column04)from 'lineitem.csv'; ┌──────────────────┐ │ sum(column04) │ │ double │ ├──────────────────┤ │ 153078795.0 │ │ (153.08 million) │ └──────────────────┘ Run Time (s): real 0.653 user 5.333167 sys 0.343530

结果一样,性能差别明显。
最后想起,证书问题是否是系统时间不对引起的,这个机器系统时间是1月26日,而今天实际上是2月28日。

http://www.jsqmd.com/news/421718/

相关文章:

  • 宝宝护齿牙膏怎么选?2026 年度儿童牙膏权威实测精选指南 - 资讯焦点
  • 6款降AI工具横评2026:知网通过率谁最高 - 还在做实验的师兄
  • 留学中介TOP10 文书定制度测评:你的故事真的被写进去了吗? - 博客湾
  • 2026年3月青岛GEO优化公司推荐:青岛博采网络领衔,精准赋能企业AI流量突围 - 资讯焦点
  • 为什么AI改AI越改AI率越高?降AI工具选错是根本原因 - 还在做实验的师兄
  • 2026年不达标退款的降AI工具有哪些?实测3款靠谱推荐 - 还在做实验的师兄
  • 2026年答辩前一天AI率还是80%?别慌,跟着做就行 - 还在做实验的师兄
  • 留学中介TOP10 文书速度测评:赶在截止日期前交稿靠谱吗? - 博客湾
  • NanoClaw 深度剖析:一个“AI 原生“架构的个人助手是如何运转的?
  • 基于flask的课程设计管理系统的设计与实现-vue pycharm django
  • 2026 采购必藏:润滑油 / 切削液 / 导轨购买网站推荐,正品低价都在这 - 品牌推荐大师1
  • 逻辑运算符
  • 2026年贵妇膏哪个牌子最正宗最好用?几款贵妇膏权威评测深度解析 - 资讯焦点
  • 基于flask的酒店服务管理系统-vue pycharm django
  • 第一次用降AI工具?比话降AI新手保姆级上手指南 - 还在做实验的师兄
  • 如何训练你的潜变量?Google DeepMind 提出 Unified Latents,用扩散模型同时编码、正则化和生成
  • OA通过调用RFC实现员工报销的接口
  • 基于flask的河南红色旅游景点管理系统-vue pycharm django
  • DeepSeek写的论文AI率99%?一文教你降到安全线以下 - 还在做实验的师兄
  • NMN哪个牌子好?2026年NMN抗衰老品牌Top10重磅揭晓 - 资讯焦点
  • 比话降AI和嘎嘎降AI深度对比:Pallas引擎vs双引擎谁更强 - 还在做实验的师兄
  • 算法题-25
  • 基于flask的计件工人工资管理系统-vue pycharm django
  • React系列-1
  • 探索.NET Core 外卖订餐系统:初学者的进阶之旅
  • 2026年纯手写论文居然AI率60%?3个原因和解决办法 - 还在做实验的师兄
  • 算法题-24
  • 教学设备怎么选?这5家四川本土品牌兼顾合规、性价比与售后 - 深度智识库
  • 基于flask的健身助手系统 教练预约系统-vue pycharm django
  • 基于flask的河南庙会文化艺术展示与定制-vue pycharm django