If they are defined, they can override table-level settings.
{
            Ordinary            = 0,    
            Collapsing          = 1,
            Summing             = 2,
            Aggregating         = 3,
            Replacing           = 5,
            Graphite            = 6,
            VersionedCollapsing = 7,
        };
        Mode mode;
        
        String sign_column;
        
        Names columns_to_sum;
        
        String version_column;
        
        Graphite::Params graphite_params;
        
        void check(const StorageInMemoryMetadata & metadata) const;
        String getModeName() const;
    };