You need to use a database. The 4kb limit is a browser limit on the size of cookies. It is generally good practice to save cookies and session, as each request header for an object on the server (for the same domain) will send this cookie.
Also, good advice for CI regarding a database session table, set the type to MEMORY so that sessions are stored in RAM instead of disk, which makes your site faster.
SQL
CREATE TABLE IF NOT EXISTS `ci_sessions` ( session_id varchar(40) DEFAULT '0' NOT NULL, ip_address varchar(16) DEFAULT '0' NOT NULL, user_agent varchar(50) NOT NULL, last_activity int(10) unsigned DEFAULT 0 NOT NULL, user_data text NOT NULL, PRIMARY KEY (session_id) );
CI configuration (in /config/config.php application):
$config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 7200; $config['sess_encrypt_cookie'] = FALSE; $config['sess_use_database'] = TRUE; $config['sess_table_name'] = 'ci_sessions'; $config['sess_match_ip'] = FALSE; $config['sess_match_useragent'] = TRUE; $config['sess_time_to_update'] = 300;
source share