Равное распределение хеш-раздела в Oracle? - PullRequest
0 голосов
/ 26 марта 2012

Я хочу иметь равное распределение по APPID и хочу использовать HASH PARTITION ..

create table AVAILABLE_WEB_DETAILS4
(
  "5mintime" TIMESTAMP,
  username VARCHAR2(64) DEFAULT cast('UNKNOWN' as VARCHAR2(7)),
  host number,
  src_zone VARCHAR2(32),
  domain VARCHAR2(512),
  dst_zone VARCHAR2(32),
  content VARCHAR2(64),
  category VARCHAR2(64),
  url VARCHAR2(1024),
  hits number DEFAULT 1, 
  bytes number, 
  appid VARCHAR2(32),  
  application VARCHAR2(64),
  categorytype VARCHAR2(64) DEFAULT cast('UNKNOWN' as VARCHAR2(7)),
  usergroup VARCHAR2(384) DEFAULT cast('UNKNOWN' as VARCHAR2(7))
)
partition by hash(APPID)
partitions 4
store in (IVIEWDB);

Я вставил 6 строк, но все идут только в одном разделе .. Я хочу распределить данные одинаковосреди всех разделов .. какая идея для этого .. ??

1 Ответ

1 голос
/ 26 марта 2012

6 строк на самом деле недостаточно высоки n - вероятность того, что хеш-функция, независимо от того, что использует Oracle, возвращает тот же хэш по модулю 4 для 6 строк, довольно высока.

Я бы попробовал, скажем, 1000 или 10000 строк, чтобы увидеть, работает ли разбиение достаточно хорошо (т. Е. Скажем, 225-275 (или 2250-2750) строк на раздел).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...