Skip to content

[Umbrella] JSON type improvements #68428

@Avogar

Description

@Avogar

This issue contains tasks for further improvements of new JSON data type. Continuation of #54864.

Important tasks:

Tasks with no priority:

  • Improve alters of JSON/Dynamic columns in Wide part (avoid whole part rewrite)
  • Replace JSON column in the subquery to requested subcolumns Replace JSON column in the subquery to requested subcolumns #75538
  • Add setting max_subcolumns_to_read.
  • Add support for EPHEMERAL subcolumns in JSON paths types declaration.
  • Add support for TTL for JSON subcolumns.
  • Add support for CODEC for JSON subcolumns.
  • Support ALTER UPDATE for individual subcolumns
  • Add function and aggregate function to merge JSON objects
  • Match json and jsonb type in PostgreSQL to new JSON type under a setting
  • Support JSON type in MongoDB engine (Load Mongo documents straight into JSON type #71970)
  • Add function JSONAllValues that returns the list of values (casted to String maybe) stored in JSON column in sorted by path order
  • Add new JSON type to schema inference
  • Consider adding new syntax to read subcolumns by regex (comment)
  • Consider implementing function for querying paths dynamically (comment)
  • Add information about subcolumn sizes in system table.
  • Support writing json.array[N].key for Array(JSON) subcolumns (comment)
  • Support declaring the type for all dynamic subcolumns (comment)
  • Support Dynamic type as first argument of function has
  • Add function like jsonuntuple(json, array_of_paths) to select paths as separate columns
  • Support arrayElement function for JSON to read subcolumns like json['key'] and use optimization functions to subcolumns here
  • Add new syntax in JSON type definition to define type for path regexp (comment)
  • Support JSON in BSONEachRow format
  • Add functions JSONRemoveKeys and JSONUpdateKeys
  • Support subcolumns in ReplacingMergeTree arguments for version and is_deleted columns
  • Consider adding function that converts JSON to Map(String, Dynamic)

Feel free to add any ideas for improvements/feature requests in the comments in this issue

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions