ヒットとデバイス(たとえば)が2つあります。Verticaプレ結合テーブル付きコピー
some url|Android|Device name
another url|Android|Device name
url|iOS|iPhone
url|Android|
生データをリアルタイムで満たされていると私はにVerticaにそれを置く必要があります。
CREATE TABLE Hits (
url VARCHAR(255) NOT NULL,
DeviceId INTEGER NOT NULL
);
CREATE TABLE Devices (
DeviceId INTEGER NOT NULL PRIMARY KEY,
OS VARCHAR(30) NOT NULL,
Device VARCHAR(30),
);
ALTER TABLE Hits ADD CONSTRAINT fk_devices FOREIGN KEY(DeviceId) REFERENCES Devices(DeviceId);
はまた、私はCSV形式で生データを持っています。 COPYを使用して1つのテーブルのすべてのデータをロードするのに問題はありませんが、クエリとストレージを最適化する必要があります。どうすればロードできますか?
すべてのデータを1つのフラットテーブルに入れるという意味では、ディスクスペースの観点から、結合(verticaのようなmppデータベースの結合ではなく)の必要性を避けるため、テーブルはデータが構成形式で保存されるため、オーバーヘッドが高くなることはありません – elirevach
Verticaの構造[examples](https://my.vertica.com/docs/7.2.x/HTML/index.htm#Authoring/GettingStartedGuide /Appendix/Tables/Tables.htm%3FTocPath%3DGetting%2520Started%7CAppendix%253A%2520VMart%2520Example%2520Database%2520Schema%252C%2520Tables%252C%2520and%2520Scripts%7C_____1)は単一の表ではありません。 – komex