Databend 开源周报第 106 期

Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn

What's On In Databend

探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。

数据脱敏

Databend 新增数据脱敏能力。通过设定脱敏策略(Masking Policy),可以控制敏感数据的显示或访问方式,从而在允许授权用户与数据交互的同时保护机密性。

复制代码
-- Create a masking policy
CREATE MASKING POLICY email_mask
AS
  (val string)
  RETURNS string ->
  CASE
  WHEN current_role() IN ('MANAGERS') THEN
    val
  ELSE
    '*********'
  END
  COMMENT = 'hide_email';

-- Associate the masking policy with the 'email' column
ALTER TABLE user_info MODIFY COLUMN email SET MASKING POLICY email_mask;

数据脱敏 需要升级至 企业版 。如需了解升级信息,请联系 Databend 团队

如果您想了解更多信息,请查看下面列出的资源。

Code Corner

一起来探索 Databend 和周边生态中的代码片段或项目。

为 Python Binding 支持 show() 方法

在 PySpark 、DuckDB、DataFusion 的 Python 绑定/包中均支持了 show() 方法,用于输出前 n 行结果。

Databend 最近也通过 PyO3 为 Python Binding 实现了相应的支持,代码片段如下。

复制代码
    #[pyo3(signature = (num=20))]
    fn show(&self, py: Python, num: usize) -> PyResult<()> {
        let blocks = self.collect(py)?;
        let bs = self.get_box();
        let result = blocks.box_render(num, bs.bs_max_width, bs.bs_max_width);

        // Note that println! does not print to the Python debug console and is not visible in notebooks for instance
        let print = py.import("builtins")?.getattr("print")?;
        print.call1((result,))?;
        Ok(())
    }

如果您想了解更多信息,请查看下面列出的资源。

Highlights

以下是一些值得注意的事件,也许您可以找到感兴趣的内容。

  • 支持分布式 REPLACE INTO
  • 支持用于计算向量 2 范数(欧几里得范数)的算符 <->
  • 新增地理位置函数:h3_to_center_child / h3_exact_edge_length_m / h3_exact_edge_length_km / h3_exact_edge_length_rads / h3_num_hexagons / h3_line / h3_distance / h3_hex_ring``h3_get_unidirectional_edge
  • 阅读文档 Docs | ALTER TABLE COLUMN 了解如何利用添加、转换、重命名、更改或删除列等操作修改表。

What's Up Next

我们始终对前沿技术和创新理念持开放态度,欢迎您加入社区,为 Databend 注入活力。

为 Hive Catalog 添加存储后端支持

此前 Databend 的 Hive Catalog 实现缺反自己的存储后端配置,只能回滚到 Default Catalog 对应的存储后端。导致当 Hive MetaStore 指向的存储服务与 Default Catalog 配置不一致时无法读取数据。

现在计划为 Hive Catalog 引入 CONNECTION 选项,允许对存储后端进行配置,解决异构存储下的 Hive 加速问题。

复制代码
CREATE CATALOG hive_ctl
TYPE=HIVE
HMS_ADDRESS='127.0.0.1:9083'
CONNECTION=(
    URL='s3://warehouse/'
    AWS_KEY_ID='admin'
    AWS_SECRET_KEY='password'
    ENDPOINT_URL='http://localhost:9000'
);

Issue #12407 | Feature: Add storage support for Hive catalog

如果你对这个主题感兴趣,可以尝试解决其中的部分问题或者参与讨论和 PR review 。或者,你可以点击 Add function to infer schema from files(CSV/Parquet) · Issue #6345 · datafuselabs/databend · GitHub 来挑选一个随机问题,祝好运!

New Contributors

一起认识社区中的新伙伴,Databend 因你们而变得更加美好。

Changelog

前往查看 Databend 每日构建的变更日志,以了解开发的最新动态。

地址:Releases · datafuselabs/databend · GitHub

Contributors

非常感谢贡献者们在本周的卓越工作。

Connect With Us

Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。

相关推荐
小白银子26 分钟前
零基础从头教学Linux(Day 60)
linux·数据库·mysql·oracle
瀚高PG实验室1 小时前
数据库安全配置指导
服务器·数据库·瀚高数据库
憋问我,我也不会1 小时前
MYSQL 命令
数据库·mysql
24K老游2 小时前
postgres15 flink cdc同步测试
数据库
无泡汽水2 小时前
MySQL入门练习50题
数据库·mysql
JIngJaneIL2 小时前
助农惠农服务平台|助农服务系统|基于SprinBoot+vue的助农服务系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·助农惠农服务平台
云外天ノ☼3 小时前
待办事项全栈实现:Vue3 + Node.js (Koa) + MySQL深度整合,构建生产级任务管理系统的技术实践
前端·数据库·vue.js·mysql·vue3·koa·jwt认证
小光学长3 小时前
基于Vue的智慧楼宇报修平台设计与实现066z15wb(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
前端·数据库·vue.js
CodeBlossom3 小时前
Spring Cache快速入门
java·数据库·spring
tuokuac3 小时前
ps -ef | grep redis
数据库·redis·缓存