【Rust日报】2024-04-13
原文约1400字,阅读约需4分钟。发表于: 。Shiva - Rust 中的开源项目,用于解析和生成任何类型的文档 我在从事文档搜索引擎项目时产生了该项目的想法。有一个像 Apache Tika 这样的库,用 Java 编写,可以解析各种类型的文档。为了让我的搜索引擎正常工作,它必须能够从不同类型的文档(PDF、DOC、XLS、HTML、XML、JSON 等)中提取文本。我用 Rust 编写了搜索引擎本身。但不幸的是,在 Rust 世界中没有可以解析所有类型文档的库。 因此,我必须使用 Apache Tika 并从我的 Rust 代码中调用它。这种解决方案有什么缺点? 需要在每台将启动我的搜索引擎的计算机上安装 Java。 内存要求非常高。 Apache Tika 使用大量内存。因为Java有一个效率不是很高的垃圾收集器,所以它必须分配大量内存给JVM。 文章链接,https://www.reddit.com/r/rust/comments/1c2vs3f/shiva_open_source_project_in_rust_for_parsing_and/ Github 链接,https://github.com/igumnoff/shiva 我用 Rust 写了一个玩具 RDBMS! (寻求反馈) 这是我在 Rust 中的第一个项目(也是我第一个花费了不仅仅是一个周末才能完成的项目) FurDB 是一种 RDBMS,它使您能够指定每列的位大小。例如,您可以定义一行有两列,A 和 B,其中 A 占用 5 位,B 占用 3 位。这意味着数据库中的每一行恰好消耗 1 个字节的数据。 这是我为了学习 Actix、Clap、BitVec,当然还有 Rust 而制作的一个玩具项目。如果有人能给我一些反馈,我将不胜感激! 文章链接,https://www.reddit.com/r/rust/comments/1c2owlo/i_wrote_a_toy_rdbms_in_rust_looking_for_feedback/ Github 链接,https://github.com/madhavan-raja/furdb 我为 SQLite 的新 jsonb 格式编写了一个 serde 解析器 Hello Rustaceans! 我想介绍一下“serde-sqlite-jsonb”,这是一个新的 Rust 库,旨在将 SQLite 最近引入的 JSONB 列直接序列化和反序列化到您的数据结构中。它消除了从 JSONB 到 JSON,然后再到您自己的数据结构的双重转换,从而提高了效率和性能。 文章链接,https://www.reddit.com/r/rust/comments/1c2kc78/i_wrote_a_serde_parser_for_sqlites_new_jsonb/ Github 链接,https://github.com/lovasoa/serde-sqlite-jsonb From 日报小组 TOM 社区学习交流平台订阅: Rustcc论坛: 支持rss 微信公众号:Rust语言中文社区
Shiva是一个用Rust编写的开源项目,用于解析和生成任何类型的文档。它旨在为文档搜索引擎项目提取不同类型文档的文本。该项目使用Java库Apache Tika来解析文档。然而,这种解决方案存在一些缺点,如需要在每台计算机上安装Java和高内存要求。另一个提到的项目是FurDB,一个用Rust编写的玩具关系型数据库管理系统。它允许指定每列的位大小,优化数据存储。最后,介绍了一个针对SQLite的新jsonb格式的serde解析器,旨在提高效率和性能。