summaryrefslogtreecommitdiffstats
path: root/sse.sql
diff options
context:
space:
mode:
Diffstat (limited to 'sse.sql')
-rw-r--r--sse.sql33
1 files changed, 28 insertions, 5 deletions
diff --git a/sse.sql b/sse.sql
index b7b1622..2345053 100644
--- a/sse.sql
+++ b/sse.sql
@@ -4,41 +4,64 @@ DROP TABLE word;
DROP TABLE file;
DROP TABLE package;
DROP TABLE provider_record;
+DROP TABLE crawler;
CREATE TABLE word (
text VARCHAR(40) NOT NULL,
type ENUM ('word', 'subword') DEFAULT 'word' NOT NULL,
+ crawler_id TINYINT UNSIGNED NOT NULL,
file_id INTEGER UNSIGNED NOT NULL,
+
cnt INTEGER UNSIGNED DEFAULT 0 NOT NULL,
- PRIMARY KEY (text, type, file_id)
+
+ PRIMARY KEY (text, type, crawler_id, file_id)
) ENGINE=InnoDB;
CREATE TABLE file (
+ crawler_id TINYINT UNSIGNED NOT NULL,
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
+
package_id INTEGER UNSIGNED NOT NULL,
path VARBINARY(255) NOT NULL,
language_id TINYINT UNSIGNED NOT NULL,
- PRIMARY KEY (id),
- UNIQUE KEY (package_id, path)
+
+ PRIMARY KEY (crawler_id, id),
+ UNIQUE KEY (crawler_id, package_id, path)
) ENGINE=InnoDB;
CREATE TABLE package (
+ crawler_id TINYINT UNSIGNED NOT NULL,
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
+
path VARBINARY(255) NOT NULL,
timestamp TIMESTAMP NOT NULL,
md CHAR(32) NOT NULL DEFAULT '',
- PRIMARY KEY(id),
+
+ PRIMARY KEY(crawler_id, id),
UNIQUE KEY (md)
) ENGINE=InnoDB;
CREATE TABLE provider_record (
id VARBINARY(64) NOT NULL,
+
+ crawler_id TINYINT UNSIGNED NOT NULL,
package_id INTEGER UNSIGNED NOT NULL,
+
provider_id TINYINT UNSIGNED NOT NULL,
name VARBINARY(255) NOT NULL DEFAULT 'noname',
url VARBINARY(255) NOT NULL DEFAULT '',
download_url VARBINARY(255) NOT NULL DEFAULT '',
license VARCHAR(64) NOT NULL DEFAULT '',
+
PRIMARY KEY(id),
- UNIQUE KEY (package_id, provider_id)
+ UNIQUE KEY (crawler_id, package_id, provider_id)
+) ENGINE=InnoDB;
+
+CREATE TABLE crawler (
+ id TINYINT UNSIGNED NOT NULL,
+
+ name VARCHAR(255) NOT NULL,
+ url VARBINATY(255) NOT NULL,
+
+ PRIMARY KEY(id)
) ENGINE=InnoDB;