Prof. Kenia Kodel
                Extrato    Organização de Arquivos   Arquivos Sequenciais Desordenados   Arquivos Sequenciais Ordenados...
O que é                   classificar?UFS - DComp - Prof. Kenia Kodel   3
Quando                 aplicar             classificação?UFS - DComp - Prof. Kenia Kodel   4
O que é               classificação                 externa?UFS - DComp - Prof. Kenia Kodel   5
Classificação Externa      Denomina-se classificar o      processo de ordenação de      dados, segundo um ou mais      cam...
Classificação Externanição    Esta operação é útil para    exibição dos dados de forma    mais amigável para usuários de  ...
Classificação Externaf    Quando a classificação é    aplicada sobre dados residentes    em memória principal, esta é    d...
Por que distinguir           classificação interna           da externa?UFS - DComp - Prof. Kenia Kodel    9
Classificação Externa   As características do meio onde estão   armazenados os dados a serem   classificados afetam   sign...
Classificação Externa    Dois principais aspectos dos meios de    armazenamento exercem influência    sobre a classificaçã...
Como efetuar           classificação           externa?UFS - DComp - Prof. Kenia Kodel   12
Para efetuar a           classificação externa,           deve-se transferir os           dados para memória           int...
Deve-se efetuar a          classificação externa,          aplicando em          memória externa os          mesmos método...
Quais são os           métodos de           classificação           interna?UFS - DComp - Prof. Kenia Kodel   15
Classificação Interna  58   45         31                 80       45    54  58   45         31                 80       4...
Classificação Interna  58    45         31                 80       45   54  45    31         58                 80       ...
Classificação Interna   58    45           31               80       45   54    ≥                  ≤   31    45           ...
Classificação Interna  58      45         31                 80       45    54  31      45         58                 80  ...
Classificação Interna(1) Dados:23 – 57 – 46 – 35 – 10 – 90                                                                ...
Classificação Interna  58   45         31                 80       45   54  45   58         31                 80       45...
Classificação Interna  58   45           31                 80     45   54  45   58           31                 45     54...
Classificação Interna   58     45            31               80      45   54   * 31   45            58               45  ...
RETOMANDO A QUESTÃO: Comoefetuar classificação externa?Transferindo os dados para memóriainterna e aplicando métodos decla...
Classificação Externa São itens importantes a considerar:  custo    de    acesso    adicional    para  transferência de d...
Classificação ExternaA solução trivial do processo de classificaçãoexterna é:  1. transferir os dados para memória princip...
Classificação Externa Entretanto, a memória secundária, devido a sua capacidade de armazenamento, é usada para manter gran...
Classificação Externa Para aplicação do KeySort, deve-se:   1. transferir as chaves dos registros para a      memória prin...
Classificação ExternaPara aplicação do KeySort:  1.   transferir as chaves dos       registros para a memória       princi...
Classificação Externa Porém há situação em que também as chaves não cabem, num bloco único, em memória principal. Então: (...
Classificação ExternaPara classificação externa de dados a estratégia maisusada é a estudada como Merge Parcial. Para tant...
Classificação ExternaDada base de dados:  52   15    23     28        70        45          14   84   23   62   36Consider...
Balanceada em Vários Caminhos Também denominada em T-Vias. Dado o arquivo desordenado composto pelas    seguintes chaves: ...
Balanceada em Vários Caminhos Ordenando os blocos em memória principal obtém-se :             09 14 20               03 05...
Balanceada em Vários Caminhos Para distribuição equitativa dos blocos nas três unidades: o 1º, após a    ordenação, é arma...
Balanceada em Vários Caminhos Os blocos ordenados são intercalados. Para tanto, o 1º registro   de cada uma das 3 unidades...
Balanceada em Vários Caminhos São usadas outras 3 unidades e armazenadas nestas a   intercalação de cada 3 blocos de regis...
Balanceada em Vários Caminhos  Num determinado passo do processo haverá um    bloco de registros em cada unidade e um grup...
Intercalação Polifásica Corresponde a uma variante do método de intercalação balanceada em T-Vias; onde os blocos são dist...
Intercalação Polifásica Diferente da intercalação em T-Vias, neste não se usa 2n unidades onde n é a capacidade da memória...
Intercalação Polifásica Efetuando a primeira intercalação:unidade 1   09 14 20             03 05 18             01 01 12  ...
Intercalação Polifásica Efetuando a segunda intercalação: unidade 1                                                       ...
Intercalação Polifásica Na intercalação seguinte o arquivo ordenado é     obtido e mantido na unidade 3.unidade 1   01   0...
Intercalaçãodistribuição de 129 corridas Considerando uma                  Polifásica     (blocos de registros) em 6 vias....
Intercalação em CascataTrata-se de uma variante do Merging    Polifásico. Enquanto na Polifásica a cada    passo (T-1) são...
Intercalação em Cascata Desta forma aposta-se em melhor performance que o Polifásico, em função deste decréscimo do número...
ExercícioConsiderando: (1) a mesma base de dados  trabalhada em aula e (2) memória  principal com capacidade para 4  regis...
Complementar Estudos...              File Organization and Processing                         Allan L Tharp               ...
Próximos passos...       (Avaliações)         UFS - DCOMP - Prof. Kenia Kodel   49        UFS - DComp - Prof. Kenia Kodel ...
Upcoming SlideShare
Loading in...5
×

EDII15 [2012.1] Classificação Externa

676

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
676
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

EDII15 [2012.1] Classificação Externa

  1. 1. Prof. Kenia Kodel
  2. 2.  Extrato Organização de Arquivos Arquivos Sequenciais Desordenados Arquivos Sequenciais Ordenados Fisicamente Arquivos Sequenciais Ordenados por Link Arquivos Diretos Mantidos por Dicionário de Dados Arquivos Diretos Mantidos por Hashing Arquivos Sequenciais Indexados Recuperação de Chave Secundária – Multilista Recuperação de Chave Secundária – Arquivos Invertidos Recuperação de Chave Secundária – Árvores de Assinaturas Estruturas de Busca em Texto Árvores B e B+ Classificação Externa UFS - DComp - Prof. Kenia Kodel 2
  3. 3. O que é classificar?UFS - DComp - Prof. Kenia Kodel 3
  4. 4. Quando aplicar classificação?UFS - DComp - Prof. Kenia Kodel 4
  5. 5. O que é classificação externa?UFS - DComp - Prof. Kenia Kodel 5
  6. 6. Classificação Externa Denomina-se classificar o processo de ordenação de dados, segundo um ou mais campos – chaves de classificação. UFS - DComp - Prof. Kenia Kodel 6
  7. 7. Classificação Externanição Esta operação é útil para exibição dos dados de forma mais amigável para usuários de computadores e/ou para tornar outras tarefas mais eficientes. UFS - DComp - Prof. Kenia Kodel 7
  8. 8. Classificação Externaf Quando a classificação é aplicada sobre dados residentes em memória principal, esta é denominada classificação interna. Quando em memória auxiliar, classificação externa. UFS - DComp - Prof. Kenia Kodel 8
  9. 9. Por que distinguir classificação interna da externa?UFS - DComp - Prof. Kenia Kodel 9
  10. 10. Classificação Externa As características do meio onde estão armazenados os dados a serem classificados afetam significativamente o processo de ordenação. UFS - DComp - Prof. Kenia Kodel 10
  11. 11. Classificação Externa Dois principais aspectos dos meios de armazenamento exercem influência sobre a classificação: (1) a capacidade de armazenamento e (2) velocidade de processamento. UFS - DComp - Prof. Kenia Kodel 11
  12. 12. Como efetuar classificação externa?UFS - DComp - Prof. Kenia Kodel 12
  13. 13. Para efetuar a classificação externa, deve-se transferir os dados para memória interna e aplicar métodos de classificação interna?UFS - DComp - Prof. Kenia Kodel 13
  14. 14. Deve-se efetuar a classificação externa, aplicando em memória externa os mesmos métodos aplicados em memória interna?UFS - DComp - Prof. Kenia Kodel 14
  15. 15. Quais são os métodos de classificação interna?UFS - DComp - Prof. Kenia Kodel 15
  16. 16. Classificação Interna 58 45 31 80 45 54 58 45 31 80 45 54 45 58 31 80 45 54 31 45 58 80 45 54 31 45 58 80 45 54 31 45 45 58 80 54 31 45 45 54 58 80 Classificação por Inserção UFS - DComp - Prof. Kenia Kodel 16
  17. 17. Classificação Interna 58 45 31 80 45 54 45 31 58 80 45 54 45 31 58 45 54 80 45 31 58 45 54 80 31 45 58 45 54 31 45 45 54 58 Classificação por Troca: Bolha UFS - DComp - Prof. Kenia Kodel 17
  18. 18. Classificação Interna 58 45 31 80 45 54 ≥ ≤ 31 45 58 80 45 54 ≤ ≥ 31 45 58 54 80 45 ≤ ≥ 45 58 45 80 54 ≤ ≥ 45 58 54 45 80 Classificação por Troca: Quicksort UFS - DComp - Prof. Kenia Kodel 18
  19. 19. Classificação Interna 58 45 31 80 45 54 31 45 58 80 45 54 31 45 58 80 45 54 31 45 45 80 58 54 31 45 45 54 58 80 31 45 45 54 58 80 31 45 45 54 58 80 Classificação por Seleção: Direta UFS - DComp - Prof. Kenia Kodel 19
  20. 20. Classificação Interna(1) Dados:23 – 57 – 46 – 35 – 10 – 90 90(2) Montagem do heap.(3) Seleção dos maiores 35 57elementos – remoção da(s)raiz(es) do heap (ordenaçãodecrescente). 23 10 46 Classificação por Seleção: Heapsort UFS - DComp - Prof. Kenia Kodel 20
  21. 21. Classificação Interna 58 45 31 80 45 54 45 58 31 80 45 54 31 45 58 80 45 54 31 45 45 54 58 80 Merging Total UFS - DComp - Prof. Kenia Kodel 21
  22. 22. Classificação Interna 58 45 31 80 45 54 45 58 31 45 54 80 31 45 45 54 58 80 Merging Natural UFS - DComp - Prof. Kenia Kodel 22
  23. 23. Classificação Interna 58 45 31 80 45 54 * 31 45 58 45 54 80 31 45 45 54 58 80 Merging Parcial UFS - DComp - Prof. Kenia Kodel 23
  24. 24. RETOMANDO A QUESTÃO: Comoefetuar classificação externa?Transferindo os dados para memóriainterna e aplicando métodos declassificação interna? Ou aplicandoos métodos o de classificaçãointerna em memória secundária? UFS - DComp - Prof. Kenia Kodel 24
  25. 25. Classificação Externa São itens importantes a considerar:  custo de acesso adicional para transferência de dados entre memórias;  custos adicionais para (re)posicionamento dos dispositivos de leitura em memória secundária;  restrições de acesso conforme o dispositivo de armazenamento usado. UFS - DComp - Prof. Kenia Kodel 25
  26. 26. Classificação ExternaA solução trivial do processo de classificaçãoexterna é: 1. transferir os dados para memória principal; 2. aplicar método de classificação interna de dados; 3. transferir dados (ordenados) para memória secundária. UFS - DComp - Prof. Kenia Kodel 26
  27. 27. Classificação Externa Entretanto, a memória secundária, devido a sua capacidade de armazenamento, é usada para manter grande quantidade de dados, os quais, muitas vezes, não cabem em memória principal. Surge então o KeySort. UFS - DComp - Prof. Kenia Kodel 27
  28. 28. Classificação Externa Para aplicação do KeySort, deve-se: 1. transferir as chaves dos registros para a memória principal; 2. aplicar método de ordenação interna; 3. gerar arquivo de dados a partir das chaves. UFS - DComp - Prof. Kenia Kodel 28
  29. 29. Classificação ExternaPara aplicação do KeySort: 1. transferir as chaves dos registros para a memória principal; 2. aplicar método de ordenação interna; Que estrutura de dados usaria em 3. gerar arquivo de dados a memória partir das chaves. principal? UFS - DComp - Prof. Kenia Kodel 29
  30. 30. Classificação Externa Porém há situação em que também as chaves não cabem, num bloco único, em memória principal. Então: (1) as chaves são agrupadas em blocos; (2) os blocos são ordenados em memória principal e (3) os blocos ordenados são reunidos por merging. UFS - DComp - Prof. Kenia Kodel 30
  31. 31. Classificação ExternaPara classificação externa de dados a estratégia maisusada é a estudada como Merge Parcial. Para tantoé necessário:1. Subdividir o arquivo a ser ordenado em blocos de tamanho da memória interna disponível.2. Ordenar cada bloco em memória primária, usando métodos de classificação interna, de preferência os de menor custo.3. Intercalar os blocos ordenados criando blocos ordenados cada vez maiores até que todo o arquivo esteja ordenado. UFS - DComp - Prof. Kenia Kodel 31
  32. 32. Classificação ExternaDada base de dados: 52 15 23 28 70 45 14 84 23 62 36Considerando memória interna com capacidade para três registros: 52 15 23 28 70 45 14 84 23 62 36Aplicando métodos de classificação interna: 15 23 52 28 45 70 14 23 84 36 62Aplicando merge: 15 23 52 28 45 70 14 23 84 36 62   ... UFS - DComp - Prof. Kenia Kodel 32
  33. 33. Balanceada em Vários Caminhos Também denominada em T-Vias. Dado o arquivo desordenado composto pelas seguintes chaves: 09 14 20 05 18 03 01 12 01 04 02 15 06 12 17 22 30 28 31 42 36 07 Considerando que na memória interna disponível há espaço para três registros; o arquivo é particionado: 09 14 20 05 18 03 01 12 01 04 02 15 06 12 17 22 30 28 31 42 36 07 UFS - DComp - Prof. Kenia Kodel 33
  34. 34. Balanceada em Vários Caminhos Ordenando os blocos em memória principal obtém-se : 09 14 20 03 05 18 01 01 12 02 04 15 06 12 17 22 28 30 31 36 42 07 A etapa seguinte consiste em intercalar os blocos compondo blocos maiores. Para tanto o método usa múltiplas unidades de armazenamento. A medida que os blocos são ordenados, estes são armazenados equitativamente em três unidades de armazenamento (quantidade definida pela capacidade da memória principal). unidade 1 09 14 20 02 04 15 31 36 42 unidade 2 03 05 18 06 12 17 07 unidade 3 01 01 12 22 28 30 UFS - DComp - Prof. Kenia Kodel 34
  35. 35. Balanceada em Vários Caminhos Para distribuição equitativa dos blocos nas três unidades: o 1º, após a ordenação, é armazenado na unidade 1, o 2º na unidade 2, o 3º na 3, o 4º na unidade 1, o seguinte na unidade 2 e assim sucessivamente até que todos os blocos estejam alocados nas 3 unidades. 1 2 3 arquivo memória desordenado unidades principal unidade 1 09 14 20 02 04 15 31 36 42 unidade 2 03 05 18 06 12 17 07 unidade 3 01 01 12 22 28 30 UFS - DComp - Prof. Kenia Kodel 35
  36. 36. Balanceada em Vários Caminhos Os blocos ordenados são intercalados. Para tanto, o 1º registro de cada uma das 3 unidades é transferido para memória interna, nesta o menor item M é eleito e transferido para memória secundária. Em seguida o próximo registro da unidade de origem de M é transferido para a memória interna. unidade 1 09 14 20 02 04 15 31 36 42 unidade 2 03 05 18 06 12 17 07 unidade 3 01 01 12 22 28 30 memória principal 09 03 01 UFS - DComp - Prof. Kenia Kodel 36
  37. 37. Balanceada em Vários Caminhos São usadas outras 3 unidades e armazenadas nestas a intercalação de cada 3 blocos de registros (9 registros). A intercalação dos primeiros blocos na unidade 4, dos segundos na 5, e assim sucessivamente. Ao final deste as 3 primeiras unidades usadas estão livres (vagas). unidade 1 09 14 20 02 04 15 31 36 42 unidade 2 03 05 18 06 12 17 07 unidade 3 01 01 12 22 28 30 unidade 4 01 01 03 05 08 09 12 14 20 unidade 5 02 04 06 12 15 17 22 28 30 unidade 6 07 31 36 42 Se houvesse mais blocos? UFS - DComp - Prof. Kenia Kodel 37
  38. 38. Balanceada em Vários Caminhos Num determinado passo do processo haverá um bloco de registros em cada unidade e um grupo de unidades vazias. Então, para obtenção do arquivo ordenado, basta efetuar a intercalação destes blocos de registros usando uma das unidades vazias como destino. unidade 4 01 01 03 05 08 09 12 14 20 unidade 5 02 04 06 12 15 17 22 28 30 unidade 6 07 31 36 42 Neste caso a unidade 1 poderia ser usada como destino da intercalação, e comportaria o arquivo total ordenado (final de processo). UFS - DComp - Prof. Kenia Kodel 38
  39. 39. Intercalação Polifásica Corresponde a uma variante do método de intercalação balanceada em T-Vias; onde os blocos são distribuídos entre unidades de forma desigual e somente uma fita é reservada para armazenar os blocos resultantes das intercalações. Neste, a cada passo, uma fita deve esvaziar-se. Considerando a mesma base 09 14 20 05 18 03 01 12 01 de dados inicial: 04 02 15 06 12 17 22 30 28 31 42 36 07 UFS - DComp - Prof. Kenia Kodel 39
  40. 40. Intercalação Polifásica Diferente da intercalação em T-Vias, neste não se usa 2n unidades onde n é a capacidade da memória principal. Neste se usa o número de unidades disponíveis.unidade 1 09 14 20 03 05 18 01 01 12 02 04 15 06 12 17unidade 2 22 28 30 31 36 40 07unidade 3 UFS - DComp - Prof. Kenia Kodel 40
  41. 41. Intercalação Polifásica Efetuando a primeira intercalação:unidade 1 09 14 20 03 05 18 01 01 12 02 04 15 06 12 17unidade 2 22 28 30 31 36 40 07unidade 3 Obtém-se:unidade 1 02 04 15 06 12 17unidade 2unidade 3 09 14 20 22 28 30 03 05 18 31 36 40 01 01 07 12 UFS - DComp - Prof. Kenia Kodel 41
  42. 42. Intercalação Polifásica Efetuando a segunda intercalação: unidade 1 02 04 15 06 12 17 unidade 2 unidade 3 09 14 20 22 28 30 03 05 18 31 36 40 01 01 07 12 Obtém-se: unidade 1 unidade 2 02 04 09 14 15 20 22 28 30 03 05 06 12 17 18 31 36 40 unidade 3 01 01 07 12 Na próxima intercalação o arquivo original estará ordenado? UFS - DComp - Prof. Kenia Kodel 42
  43. 43. Intercalação Polifásica Na intercalação seguinte o arquivo ordenado é obtido e mantido na unidade 3.unidade 1 01 01 01 07 09 12 14 15 20 22 28 30unidade 2 03 05 06 12 17 18 31 36 40unidade 3  O Merging Polifásico aposta na distribuição perfeita das corridas nas vias; de forma a obter, a cada passo, uma via vazia que servirá como saída. UFS - DComp - Prof. Kenia Kodel 43
  44. 44. Intercalaçãodistribuição de 129 corridas Considerando uma Polifásica (blocos de registros) em 6 vias.  unidades 8 quantidade de itens por unidades, a cada passo UFS - DComp - Prof. Kenia Kodel 44
  45. 45. Intercalação em CascataTrata-se de uma variante do Merging Polifásico. Enquanto na Polifásica a cada passo (T-1) são intercaladas (1 é usada como destino). Na cascata a cada passo as corridas de (T-1) vias são intercaladas; em seguida (T-2), (T-3) e assim por diante. UFS - DComp - Prof. Kenia Kodel 45
  46. 46. Intercalação em Cascata Desta forma aposta-se em melhor performance que o Polifásico, em função deste decréscimo do número de vias intercaladas a cada passo. Considerando uma distribuição de 190 corridas (blocos de registros) em 6 vias. T1 T2 T3 T4 T5 T6 unidades 1 55 50 41 29 15 - 2 40 35 26 14 - 15 3 26 21 12 - 14 quantidade de itens 4 14 9 - 12 por via, a 5 5 - 9 cada passo. 6 - 5 O processo segue com: 15 -14 – 12 – 9 – 5 distribuído em 5 unidades (vias). UFS - DComp - Prof. Kenia Kodel 46
  47. 47. ExercícioConsiderando: (1) a mesma base de dados trabalhada em aula e (2) memória principal com capacidade para 4 registros. Apresentar, passo a passo, a ordenação desta usando:(a) Intercalação balanceada em T-Vias(b) Intercalação polifásica UFS - DComp - Prof. Kenia Kodel 47
  48. 48. Complementar Estudos... File Organization and Processing Allan L Tharp Capítulo 13 Sorting External Sorting UFS - DComp - Prof. Kenia Kodel 48
  49. 49. Próximos passos... (Avaliações) UFS - DCOMP - Prof. Kenia Kodel 49 UFS - DComp - Prof. Kenia Kodel 49
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×