Base de datos de muestra - Amazon Redshift

Base de datos de muestra

En esta sección se describe TICKIT, una base de datos de muestra que se utiliza en los ejemplos de la documentación de Amazon Redshift.

Esa base de datos pequeña consta de siete tablas: dos de hechos y cinco de dimensiones. Puede cargar el conjunto de datos de TICKIT si sigue los pasos que se indican en Paso 4: Cargar datos desde Amazon S3 a Amazon Redshift en la Guía de introducción a Amazon Redshift.

Las siete tablas en la base de datos de ejemplo TICKIT y sus relaciones entre sí.

Esta aplicación de base de datos de muestra ayuda a los analistas a realizar un seguimiento de la actividad de ventas del sitio web ficticio TICKIT, en el que los usuarios compran y venden en línea tickets para eventos deportivos, espectáculos y conciertos. En particular, los analistas pueden identificar los movimientos de tickets en el tiempo, las tasas de éxito de los vendedores y los eventos, lugares y temporadas más vendidos. Los analistas pueden usar esta información para ofrecer incentivos a los compradores y vendedores que frecuentan el sitio, a fin de atraer a nuevos usuarios e impulsar la publicidad y las promociones.

Por ejemplo, la siguiente consulta encuentra los cinco vendedores principales de San Diego, en función de la cantidad de tickets vendidos en 2008:

select sellerid, username, (firstname ||' '|| lastname) as name, city, sum(qtysold) from sales, date, users where sales.sellerid = users.userid and sales.dateid = date.dateid and year = 2008 and city = 'San Diego' group by sellerid, username, name, city order by 5 desc limit 5; sellerid | username | name | city | sum ----------+----------+-------------------+-----------+----- 49977 | JJK84WTE | Julie Hanson | San Diego | 22 19750 | AAS23BDR | Charity Zimmerman | San Diego | 21 29069 | SVL81MEQ | Axel Grant | San Diego | 17 43632 | VAG08HKW | Griffin Dodson | San Diego | 16 36712 | RXT40MKU | Hiram Turner | San Diego | 14 (5 rows)

La base de datos usada para los ejemplos de esta guía presenta un conjunto de datos pequeño; cada una de las dos tablas de hechos tiene menos de 200 000 filas y las dimensiones varían, de 11 filas en la tabla CATEGORY hasta, aproximadamente, 50 000 en la tabla USERS.

En particular, los ejemplos de base de datos de esta guía demuestran las características clave del diseño de tablas de Amazon Redshift:

  • Distribución de datos

  • Orden de datos

  • Compresión en columnas

Para obtener información sobre los esquemas de las tablas de la base de datos TICKIT, elija las siguientes pestañas:

CATEGORY table
Nombre de la columna Tipo de datos Descripción
CATID SMALLINT Clave primaria, un valor de ID único para cada fila. Cada fila representa un tipo de evento específico para el cual se compran y venden tickets.
CATGROUP VARCHAR (10) Nombre descriptivo de un grupo de eventos, como Shows y Sports.
CATNAME VARCHAR (10) Nombre descriptivo abreviado de un tipo de eventos en un grupo, como Operay Musicals.
CATDESC VARCHAR(50) Nombre descriptivo más largo del tipo de evento, como Musical theatre.
DATE table
Nombre de la columna Tipo de datos Descripción
DATEID SMALLINT Clave primaria, un valor de ID único para cada fila. Cada fila representa un día del año calendario.
CALDATE FECHA Fecha de calendario, como 2008-06-24.
DAY CHAR (3) Día de la semana (abreviado), como SA.
WEEK SMALLINT Número de semana, como 26.
MONTH CHAR (5) Nombre del mes (abreviado), como JUN.
QTR CHAR (5) Número de trimestre (de 1 a 4).
YEAR SMALLINT Los cuatro dígitos del año (2008).
HOLIDAY BOOLEAN La bandera indica si el día es un día festivo (EE. UU.).
EVENT table
Nombre de la columna Tipo de datos Descripción
EVENTID INTEGER Clave primaria, un valor de ID único para cada fila. Cada fila representa un evento diferente que se lleva a cabo en un lugar específico y a una hora específica.
VENUEID SMALLINT Referencia de clave externa a la tabla VENUE.
CATID SMALLINT Referencia de clave externa a la tabla CATEGORY.
DATEID SMALLINT Referencia de clave externa a la tabla DATE.
EVENTNAME VARCHAR (200) Nombre del evento, como Hamlet o La Traviata.
STARTTIME MARCA DE TIEMPO Fecha y hora de inicio del evento sin abreviar, como 2008-10-10 19:30:00.
VENUE table
Nombre de la columna Tipo de datos Descripción
VENUEID SMALLINT Clave primaria, un valor de ID único para cada fila. Cada fila representa un lugar específico donde se lleva a cabo un evento.
VENUENAME VARCHAR (100) Nombre del recinto, como Cleveland Browns Stadium.
VENUECITY VARCHAR (30) Nombre de la ciudad, como Cleveland.
VENUESTATE CHAR (2) Abreviatura de dos letras para el estado o la provincia (Estados Unidos y Canadá), como OH.
VENUESEATS INTEGER Cantidad máxima de asientos disponibles en el recinto, si se conoce, como 73200. Para fines de demostración, esta columna presenta valores nulos y ceros.
USERS table
Nombre de la columna Tipo de datos Descripción
USERID INTEGER Clave primaria, un valor de ID único para cada fila. Cada fila representa a un usuario registrado (comprador, vendedor o ambos) quien ha listado o comprado tickets para al menos un evento.
USERNAME CHAR (8) Nombre de usuario alfanumérico de 8 caracteres, como PGL08LJI.
FIRSTNAME VARCHAR (30) Nombre de pila del usuario, como Victor.
LASTNAME VARCHAR (30) Apellido del usuario, como Hernandez.
CITY VARCHAR (30) Ciudad natal del usuario, como Naperville.
STATE CHAR (2) El estado natal del usuario, como GA.
CORREO ELECTRÓNICO VARCHAR (100) Dirección de correo electrónico del usuario; esta columna contiene valores latinos aleatorios, como turpis@accumsanlaoreet.org.
PHONE CHAR (14) Número de teléfono de 14 caracteres del usuario, como (818) 765-4255.
LIKESPORTS, ... BOOLEAN Serie de 10 columnas diferentes que identifican lo que le gusta o no le gusta al usuario, con valores true y false.
LISTING table
Nombre de la columna Tipo de datos Descripción
LISTID INTEGER Clave primaria, un valor de ID único para cada fila. Cada fila representa la lista de un lote de tickets para un evento específico.
SELLERID INTEGER Referencia de clave externa a la tabla USERS, que identifica al usuario que vende los tickets.
EVENTID INTEGER Referencia de clave externa a la tabla EVENT.
DATEID SMALLINT Referencia de clave externa a la tabla DATE.
NUMTICKETS SMALLINT Cantidad de tickets disponibles para la venta, como 2 o 20.
PRICEPERTICKET DECIMAL (8,2) Precio fijo de una entrada individual, como 27.00 o 206.00.
TOTALPRICE DECIMAL (8,2) El precio total para este listado (NUMTICKETS*PRICEPERTICKET).
LISTTIME MARCA DE TIEMPO Fecha y hora sin abreviar en que se publicó el listado, como 2008-03-18 07:19:35.
SALES table
Nombre de la columna Tipo de datos Descripción
SALESID INTEGER Clave primaria, un valor de ID único para cada fila. Cada fila representa la venta de uno o más tickets para un evento específico, según se ofrecen en un listado específico.
LISTID INTEGER Referencia de clave externa a la tabla LISTING.
SELLERID INTEGER Referencia de clave externa a la tabla USERS (el usuario que vendió los tickets).
BUYERID INTEGER Referencia de clave externa a la tabla USERS (el usuario que compró los tickets).
EVENTID INTEGER Referencia de clave externa a la tabla EVENT.
DATEID SMALLINT Referencia de clave externa a la tabla DATE.
QTYSOLD SMALLINT Cantidad de entradas vendidas, de 1 a 8. (Se pueden vender un máximo de 8 tickets en una única transacción).
PRICEPAID DECIMAL (8,2) El precio total pagado por las entradas, como 75.00 o 488.00. El precio individual de un ticket es PRICEPAID/QTYSOLD.
COMMISSION DECIMAL (8,2) 15 % de comisión que el negocio obtiene de la venta, como 11.25 o 73.20. El vendedor recibe el 85% del valor de PRICEPAID.
SALETIME MARCA DE TIEMPO Fecha y hora sin abreviar en que se finalizó la venta, como 2008-05-24 06:21:47.