我目前正在評估存儲供應商目錄的策略。 目錄中可能有多個項目,從100到0.25百萬不等。 每個項目可能有多個錯誤。應用程序應該支持的目錄項如何在海量數據上創建索引(mysql)
- 集團瀏覽由錯誤,類別,製造商,供應商等類型..
- 瀏覽項目的任何一組,應該能夠進行排序和多列(PARTID搜索, 名稱,價格等)。
問題是當我必須提供「多搜索和排序和組」功能我應該如何創建索引。
根據mysql文檔&索引博客似乎在單個列上創建索引不會被所有查詢使用。
創建多列索引甚至不是特定於我的情況。
有可能是20 - 30組合搜索&排序。
我如何擴展以及如何快速搜索。
預計處理5000萬條記錄的數據。
目前正在對1500萬個數據進行評估。
建議歡迎。
CREATE TABLE CATALOG_ITEM
(
AUTO_ID BIGINT PRIMARY KEY AUTO_INCREMENT,
TENANT_ID VARCHAR(40) NOT NULL,
CATALOG_ID VARCHAR(40) NOT NULL,
CATALOG_VERSION INT NOT NULL,
ITEM_ID VARCHAR(40) NOT NULL,
VERSION INT NOT NULL,
NAME VARCHAR(250) NOT NULL,
DESCRIPTION VARCHAR(2000) NOT NULL,
CURRENCY VARCHAR(5) NOT NULL,
PRICE DOUBLE NOT NULL,
UOM VARCHAR(10) NOT NULL,
LEAD_TIME INT DEFAULT 0,
SUPPLIER_ID VARCHAR(40) NOT NULL,
SUPPLIER_NAME VARCHAR(100) NOT NULL,
SUPPLIER_PART_ID VARCHAR(40) NOT NULL,
MANUFACTURER_PART_ID VARCHAR(40),
MANUFACTURER_NAME VARCHAR(100),
CATEGORY_CODE VARCHAR(40) NOT NULL,
CATEGORY_NAME VARCHAR(100) NOT NULL,
SOURCE_TYPE INT DEFAULT 0,
ACTIVE BOOLEAN,
SUPPLIER_PRODUCT_URL VARCHAR(250),
MANUFACTURER_PRODUCT_URL VARCHAR(250),
IMAGE_URL VARCHAR(250),
THUMBNAIL_URL VARCHAR(250),
UNIQUE(TENANT_ID,ITEM_ID,VERSION),
UNIQUE(TENANT_ID,CATALOG_ID,ITEM_ID)
);
CREATE TABLE CATALOG_ITEM_ERROR
(
ITEM_REF BIGINT,
FIELD VARCHAR(40) NOT NULL,
ERROR_TYPE INT NOT NULL,
ERROR_VALUE VARCHAR(2000)
);
我認爲我們需要db模式來回答這個問題。 – llazzaro
用獅身人面像從頭開始 – Pentium10
請找到表格定義 –