| 
									
										
										
										
											2015-11-19 14:39:21 -08:00
										 |  |  | --
 | 
					
						
							|  |  |  | -- Copyright 2015 LinkedIn Corp. All rights reserved.
 | 
					
						
							|  |  |  | --
 | 
					
						
							|  |  |  | -- Licensed under the Apache License, Version 2.0 (the "License");
 | 
					
						
							|  |  |  | -- you may not use this file except in compliance with the License.
 | 
					
						
							|  |  |  | -- You may obtain a copy of the License at
 | 
					
						
							|  |  |  | --
 | 
					
						
							|  |  |  | -- http://www.apache.org/licenses/LICENSE-2.0
 | 
					
						
							|  |  |  | --
 | 
					
						
							|  |  |  | -- Unless required by applicable law or agreed to in writing, software
 | 
					
						
							|  |  |  | -- distributed under the License is distributed on an "AS IS" BASIS,
 | 
					
						
							|  |  |  | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
					
						
							|  |  |  | --
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | -- create statement for users related tables :
 | 
					
						
							|  |  |  | -- users, user_settings, watch
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CREATE TABLE users (
 | 
					
						
							|  |  |  |   id                       INT(11) AUTO_INCREMENT      NOT NULL,
 | 
					
						
							|  |  |  |   name                     VARCHAR(100)                NOT NULL,
 | 
					
						
							|  |  |  |   email                    VARCHAR(200)                NOT NULL,
 | 
					
						
							|  |  |  |   username                 VARCHAR(20)                 NOT NULL,
 | 
					
						
							|  |  |  |   department_number        INT(11)                     NULL,
 | 
					
						
							|  |  |  |   password_digest          VARCHAR(256)                NULL,
 | 
					
						
							|  |  |  |   password_digest_type     ENUM('SHA1', 'SHA2', 'MD5') NULL DEFAULT 'SHA1',
 | 
					
						
							|  |  |  |   ext_directory_ref_app_id SMALLINT UNSIGNED,
 | 
					
						
							|  |  |  |   authentication_type      VARCHAR(20),
 | 
					
						
							|  |  |  |   PRIMARY KEY (id)
 | 
					
						
							|  |  |  | )
 | 
					
						
							|  |  |  |   ENGINE = InnoDB
 | 
					
						
							|  |  |  |   AUTO_INCREMENT = 0
 | 
					
						
							|  |  |  |   DEFAULT CHARSET = utf8;
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-02-16 00:41:07 -08:00
										 |  |  | CREATE INDEX idx_users__username USING BTREE ON users(username);
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-19 14:39:21 -08:00
										 |  |  | CREATE TABLE user_settings (
 | 
					
						
							| 
									
										
										
										
											2016-02-16 00:41:07 -08:00
										 |  |  |   user_id             INT(11)                           NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2015-11-19 14:39:21 -08:00
										 |  |  |   detail_default_view VARCHAR(20)                       NULL,
 | 
					
						
							| 
									
										
										
										
											2016-02-16 00:41:07 -08:00
										 |  |  |   default_watch       ENUM('monthly', 'weekly', 'daily', 'hourly') NULL DEFAULT 'weekly',
 | 
					
						
							| 
									
										
										
										
											2015-11-19 14:39:21 -08:00
										 |  |  |   PRIMARY KEY (user_id)
 | 
					
						
							|  |  |  | )
 | 
					
						
							|  |  |  |   ENGINE = InnoDB
 | 
					
						
							|  |  |  |   DEFAULT CHARSET = utf8;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CREATE TABLE watch (
 | 
					
						
							|  |  |  |   id                BIGINT(20) AUTO_INCREMENT                                 NOT NULL,
 | 
					
						
							|  |  |  |   user_id           INT(11)                                                   NOT NULL,
 | 
					
						
							|  |  |  |   item_id           INT(11)                                                   NULL,
 | 
					
						
							|  |  |  |   urn               VARCHAR(200)                                              NULL,
 | 
					
						
							|  |  |  |   item_type         ENUM('dataset', 'dataset_field', 'metric', 'flow', 'urn') NOT NULL DEFAULT 'dataset',
 | 
					
						
							| 
									
										
										
										
											2016-02-16 00:41:07 -08:00
										 |  |  |   notification_type ENUM('monthly', 'weekly', 'hourly', 'daily')              NULL     DEFAULT 'weekly',
 | 
					
						
							| 
									
										
										
										
											2015-11-19 14:39:21 -08:00
										 |  |  |   created           TIMESTAMP                                                 NULL     DEFAULT CURRENT_TIMESTAMP,
 | 
					
						
							|  |  |  |   PRIMARY KEY (id)
 | 
					
						
							|  |  |  | )
 | 
					
						
							|  |  |  |   ENGINE = InnoDB
 | 
					
						
							|  |  |  |   AUTO_INCREMENT = 0
 | 
					
						
							|  |  |  |   DEFAULT CHARSET = utf8;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CREATE TABLE favorites (
 | 
					
						
							| 
									
										
										
										
											2016-02-16 00:41:07 -08:00
										 |  |  |   user_id    INT(11)   NOT NULL,
 | 
					
						
							|  |  |  |   dataset_id INT(11)   NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2015-11-19 14:39:21 -08:00
										 |  |  |   created    TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
					
						
							| 
									
										
										
										
											2016-02-16 00:41:07 -08:00
										 |  |  |   PRIMARY KEY (user_id, dataset_id)
 | 
					
						
							| 
									
										
										
										
											2015-11-19 14:39:21 -08:00
										 |  |  | )
 | 
					
						
							| 
									
										
										
										
											2016-02-16 00:41:07 -08:00
										 |  |  |   ENGINE = InnoDB
 | 
					
						
							|  |  |  |   DEFAULT CHARSET = utf8;
 | 
					
						
							| 
									
										
										
										
											2016-10-13 14:27:02 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | CREATE TABLE user_login_history (
 | 
					
						
							|  |  |  |   log_id              INT(11) AUTO_INCREMENT NOT NULL,
 | 
					
						
							|  |  |  |   username            VARCHAR(20)            NOT NULL,
 | 
					
						
							|  |  |  |   authentication_type VARCHAR(20)            NOT NULL,
 | 
					
						
							|  |  |  |   `status`            VARCHAR(20)            NOT NULL,
 | 
					
						
							|  |  |  |   message             TEXT                            DEFAULT NULL,
 | 
					
						
							|  |  |  |   login_time          TIMESTAMP              NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
					
						
							|  |  |  |   PRIMARY KEY (log_id)
 | 
					
						
							|  |  |  | )
 | 
					
						
							|  |  |  |   ENGINE = InnoDB
 | 
					
						
							|  |  |  |   DEFAULT CHARSET = utf8;
 |