< 返回版块

长琴 发表于 2023-03-05 21:28

Tags:rust,日报,Databend,erdtree,chatgpt,picol

Databend1.0发布

Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓,致力于解决大数据分析的成本和复杂度问题。

  • 一个使用 Rust 开发的云原生数据仓库:存算分离,面向对象存储设计,极致弹性
  • 支持完整的 CRUD 特性,提供了 MySQL/Clickhouse/HTTP RESTful 等协议支持
  • 提供原生的 ARRAY、MAP、JSON 等复杂类型和 DECIMAL 高精度类型支持
  • 构建了类似于 Git 的 MVCC 列式存储引擎,支持 Data Time Travel 和 Data Share 能力
  • 不受存储供应商的限制,可以在任何存储服务上运行,并直接查询任何存储服务上的数据
  • 目前已全面支持 HDFS/Cloud-Based Object Storage 协议,包括:阿里云 OSS,腾讯云 COS,华为云 OBS,以及 S3,Azure Blob, Google Cloud Storage

链接:https://zhuanlan.zhihu.com/p/611446725

erdtree1.2.0发布

这是一个新的文件树和磁盘使用可视化工具,可以看成 tree+du。本次版本支持 glob 和 icon。使用界面如下所示:

dde0f1f096d3fca78e979899ff7e19c6.png

使用说明:

$ et [OPTIONS] [DIR]

主要参数:
  -g, --glob <GLOB>            包含或排除文件(使用glob)
      --iglob <IGLOB>          同上,不区分大小写
      --glob-case-insensitive  不区分大小写处理所有 glob 模式
  -H, --hidden                 显示隐藏文件,默认不显示
      --ignore-git             遍历隐藏文件时忽略.git; 默认不显示
  -I, --icons                  显示文件图标,默认不显示
  -i, --ignore-git-ignore      忽略 .gitignore
  -l, --level <NUM>            文件夹最大深度
  -s, --sort <SORT>            排序 [默认:none] [可能的值: name, size, none]
  -S, --follow-links           遍历链接目录并考虑磁盘使用情况,默认关闭

GitHub:https://github.com/solidiquis/erdtree

ChatGPT3.5

在终端使用 ChatGPT3.5:

0be65cdeb04722d3394ab0fe58b98f0f.gif

功能包括:

  • 与浏览器相比,终端启动速度更快,需要的资源更少。
  • 突出显示聊天消息和流。
  • 定义角色并让 AI 扮演角色。
  • 保存聊天消息。
  • 支持代理。
  • 用 Rust 编写,单个可执行文件,跨平台。

GitHub:https://github.com/sigoden/aichat

picol

构建在 io-uring 之上的小型单线程异步运行时。使用示例:

use picol::{read, block_on};

fn main() {
    // Run the future on the current thread.
    block_on(async {
        let task1 = async {
            println!("Task1 start");
            let f = std::fs::File::open("examples/hello_world.rs").unwrap();
            let r = read(&f, 0, 10).await;
            let s = std::str::from_utf8(&r).unwrap();
            println!("Task1: {}", s);

        };
        let task2 = async {
            println!("Task2 start");
            let f = std::fs::File::open("examples/hello_world.rs").unwrap();
            let r = read(&f, 10, 10).await;
            let s = std::str::from_utf8(&r).unwrap();
            println!("Task2: {}", s);
        };
        futures_lite::future::zip(task1, task2).await;
    });
}

GitHub:https://github.com/Maaarcocr/picol


From 日报小组 长琴

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页