Redshift परिचय
Jason Myers
Principal Engineer
CREATE TABLE IDAHO_SITE_ID
(
'pk_siteid' INTEGER PRIMARY KEY,
'fk_monitoringlocation' INTEGER,
'organization_id' VARCHAR(31),
'organizationformalname' VARCHAR(68),
'organization' VARCHAR(16)
);

DISTKEY, या PRIMARY KEY use करता है| Name | Description | Usage |
|---|---|---|
| ALL | हर node पर पूरी table | छोटे fact lookup tables जिन्हें joins में अक्सर चाहिए |
| KEY | DISTKEY कॉलम के डेटा से distribute |
जब हम DISTKEY पर aggregate या join करें |
| EVEN | Rows बारी-बारी से nodes में | बड़ी tables जिनमें keys नहीं हैं |
| AUTO | छोटे tables पर ALL. बढ़ने पर suitable DISTKEYS होने पर KEY, वरना EVEN |
default |
CREATE TABLE IDAHO_SITE_ID
(
'pk_siteid' INTEGER PRIMARY KEY,
'fk_monitoringlocation' INTEGER,
'organization_id' VARCHAR(31),
'organizationformalname' VARCHAR(68),
'organization' VARCHAR(16)
)
-- डेटा distribution key organization_id सेट करता है
DISTKEY(organization_id);
CREATE TABLE IDAHO_SITE_ID
(
'pk_siteid' INTEGER PRIMARY KEY,
'fk_monitoringlocation' INTEGER,
-- डेटा distribution key के रूप में
-- organization_id सेट करता है
'organization_id' VARCHAR(31) DISTKEY,
'organizationformalname' VARCHAR(68),
'organization' VARCHAR(16)
);
CREATE TABLE IDAHO_SITE_ID
(
'pk_siteid' INTEGER PRIMARY KEY,
'fk_monitoringlocation' INTEGER,
'organization_id' VARCHAR(31),
'organizationformalname' VARCHAR(68),
'organization' VARCHAR(16)
)
DISTKEY(organization_id)
-- Distribution style को key पर सेट करता है
DISTSTYLE KEY;
CREATE TABLE IDAHO_SITE_ID
(
'pk_siteid' INTEGER PRIMARY KEY,
'fk_monitoringlocation' INTEGER,
'organization_id' VARCHAR(31),
'organizationformalname' VARCHAR(68),
'organization' VARCHAR(16)
)
DISTKEY(organization_id)
DISTSTYLE KEY
-- डेटा sort key
-- fk_monitoringlocation पर सेट करता है
SORTKEY(fk_monitoringlocation);
CREATE TABLE IDAHO_SITE_ID
(
'pk_siteid' INTEGER PRIMARY KEY,
'fk_monitoringlocation' INTEGER,
'organization_id' VARCHAR(31),
'organizationformalname' VARCHAR(68),
'organization' VARCHAR(16)
)
-- fk_monitoringlocation, organization_id को compound sort keys के रूप में सेट करता है
COMPOUND SORTKEY(fk_monitoringlocation, organization_id);
-- किसी कॉलम की dist और sortkey
-- स्थिति देखें
SELECT column_name,
distkey,
sortkey
FROM SVV_REDSHIFT_COLUMNS
-- केवल spectrumdb schema में
WHERE schema_name = 'spectrumdb'
-- ecommerce_sales table के लिए
AND table_name = 'ecommerce_sales';
Results
column | distkey | sortkey
============|=========|========
year_qtr | t | 1
total_sales | f | 2
ecom_sales | f | 0
Distkey कॉलम
SVV_TABLE_INFOtable | encoded | diststyle | sortkey1 | skew_sortkey1 | skew_rows
===============|=========|=================|==============|===============|===========
ecommerce_sales| N | KEY(year_qtr) | year_qtr | |
date | N | ALL | dateid | 1.00 |
SELECT table
diststyle
FROM SVV_TABLE_INFO
WHERE schema like 'spectrumdb';
table | diststyle
================|==============
ecommerce_sales | KEY(year_qtr)
Redshift परिचय