title: "Materialize v0.60" date: 2023-07-12 released: true
[//]: # "NOTE(morsapaes) This feature was released in v0.53 behind a feature flag. The flag was raised in v0.60 -— so mentioning it here."
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.
Improve and extend the base implementation of Role-based access control (RBAC):
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.