Materialize v0.60

v0.60.0

Sources and sinks

  • Private preview. Support filter pushdown, which can substantially improve latency for queries using temporal filters. For an overview of this new optimization mechanism, check the updated documentation.
  • Support FORMAT JSON for Kafka sources. This format option automatically decodes messages as jsonb, which is a quality-of-life improvement over JSON handling using FORMAT BYTES.

    New syntax

    CREATE SOURCE json_source
    FROM KAFKA CONNECTION kafka_connection (TOPIC 'ch_anges')
    FORMAT JSON
    WITH (SIZE = '3xsmall');
    
    CREATE VIEW extract_json_source AS
    SELECT
      (data->>'field1')::boolean AS field_1,
      (data->>'field2')::int AS field_2,
      (data->>'field3')::float AS field_3
    -- Automatic conversion to jsonb
    FROM json_source;
    

    Old syntax

    CREATE SOURCE json_source
    FROM KAFKA CONNECTION kafka_connection (TOPIC 'ch_anges')
    FORMAT BYTES
    WITH (SIZE = '3xsmall');
    
    CREATE VIEW extract_json_source AS
    SELECT
      (data->>'field1')::boolean AS field_1,
      (data->>'field2')::int AS field_2,
      (data->>'field3')::float AS field_3
    -- Manual conversion to jsonb
    FROM (SELECT CONVERT_FROM(data, 'utf8')::jsonb AS data FROM json_source);
    

    In the future, we plan to support automatically enforcing JSON schemas, both for user-provided schemas and schemas managed via Confluent Schema Registry.

SQL

  • Improve and extend the base implementation of Role-based access control (RBAC):

    • Restrict granting and revoking system privileges to superuser users with admin privileges.

    It’s important to note that role-based access control (RBAC) is disabled by default. You must contact us to enable this feature in your Materialize region.

Bug fixes and other improvements

  • Fix timestamp generation for transactions with multiple statements that could lead to crashes (#20267).
Back to top ↑