Skip to main content

This Week in Databend #127

Databend is a modern cloud data warehouse, serving your massive-scale analytics needs at low cost and complexity. Open source alternative to Snowflake. Also available in the cloud: https://app.databend.com .

What's New

Stay informed about the latest features of Databend.

Understanding Databend's Access Control

The ownership mechanism in Databend has recently covered UDF and stage, and we have also launched introductory documentation on the access control model.

Databend combines the Role-Based Access Control (RBAC) and Discretionary Access Control (DAC) models to implement access control features. When users access data objects in Databend, they must be granted appropriate permissions or roles, or they need to have ownership of the data objects. Data objects refer to various elements, such as databases, tables, views, stages, or UDFs.

The diagram shows the establishment of role inheritance and management hierarchy in Databend.

If you would like to learn more, please contact the Databend team or refer to the resources listed below:

Code Corner

Discover some fascinating code snippets or projects that showcase our work or learning journey.

helyim: Distributed Object Storage System Built Using OpenRaft

helyim is a rewrite of seaweedfs in Rust, with an architecture that refers to the design of Facebook's published haystack and f4 papers. It uses OpenRaft to provide distributed consensus support.

OpenRaft is an asynchronous Raft consensus algorithm implementation maintained and open-sourced by Databend, written in Rust and supports the tokio runtime. In addition to supporting the implementation of Databend's Meta Services, it is also adopted by well-known manufacturers such as Azure and SAP.

Highlights

We have also made these improvements to Databend that we hope you will find helpful:

  • Introduced abs function for Decimal types.
  • Introduced array_reduce function.
  • SHOW FULL DATABASES/TABLES now displays owner information.
  • Implemented password policy checks at login.
  • Added support for distributed execution for UPDATE statements.
  • Added support for filter push down window.

What's Up Next

We're always open to cutting-edge technologies and innovative ideas. You're more than welcome to join the community and bring them to Databend.

Supporting CREATE OR REPLACE Syntax

CREATE OR REPLACE means: if the object (directory, database, table) exists, drop it first, then recreate it.

This syntax can be used to simplify and replace the following statements:

DROP IF EXISTS ....
CREATE ...

Issue #14229 | feat: CREATE OR REPLACE

Please let us know if you're interested in contributing to this feature, or pick up a good first issue at https://link.databend.rs/i-m-feeling-lucky to get started.

New Contributors

We always open arms to everyone and can't wait to see how you'll help our community grow and thrive.

Changelog

You can check the changelog of Databend Nightly for details about our latest developments.

Full Changelog: https://github.com/datafuselabs/databend/compare/v1.2.277-nightly...v1.2.286-nightly


Contributors

A total of 25 contributors participated

We are very grateful for the outstanding work of the contributors.