sexta-feira, 20 de agosto de 2010

Tutorial de Business Intelligence

Pra quem ainda não conhece a metodologia de BI (Business Intelligence) este tutorial explica detalhadamente as etapas envolvidas. Ele foi feito usando uma parte da minha monografia de conclusão de curso.

DOWNLOAD

segunda-feira, 12 de julho de 2010

Tutorial de Scala

Scala é uma linguagem de programação funcional onde cada função é um valor, também é puramente orientada a objetos, gera bytecodes Java e ainda suporta todas as bibliotecas e APIs Java. Ela fornece uma sintaxe leve e limpa para a definição de funções anônimas, mas o seu maior atrativo é que ela foi projetada para trabalhar com concorrência, implementando um sofisticado controle de threads através do uso de classes atores. Como existe muito pouco material de qualidade (em português) sobre esta linguagem na Internet, elaborei este tutorial que também traz o código da resolução do problema do Barbeiro Sonolento em Scala.

sexta-feira, 7 de maio de 2010

Homem de Ferro 2 e Oracle

Ninguém discorda que a Marvel soube popularizar seus heróis através do cinema, gerando até um novo gênero cinematográfico: o filme de super-heróis. Mas é interessante notar que isso agora tem chamado a atenção das empresas, quem ainda não assistiu Homem de Ferro 2 repare que o nome da empresa de informática Oracle aparece durante todo o filme, incluindo até uma ponta do presidente da companhia Larry Ellison. E se eu já tinha suspeitas sobre um possível patrocínio da Oracle, elas foram confirmadas ao receber ontem a revista Oracle Magazine cuja capa (que eu achei muito legal) compartilho com vocês.

segunda-feira, 15 de fevereiro de 2010

Criação manual de banco de dados

O utilitário DBCA (Database Creation Assistant) pode criar um banco de dados com apenas alguns cliques, mas algumas vezes você pode precisar criar um banco de dados manualmente, ou seja na linha de comando do SQLPlus.

Nesse caso você deve especificar os seguintes parâmetros:

  • DATABASE: É o nome do banco de dados a ser criado.
  • CONTROLFILE REUSE: Especifica que um arquivo de controle existente identificado no arquivo de parâmetros seja reutilizado.
  • LOGFILE GROUP: Especifica os nomes dos arquivos de log a serem utilizados e o grupo ao qual eles pertencem.
  • MAXLOGFILES: Especifica o número máximo de grupos de arquivos de redo log que podem ser criados para o banco de dados.
  • MAXLOGMEMBERS: Especifica o número máximo de membros de arquivos de log para um grupo de arquivos de log.
  • MAXLOGHISTORY: Especifica o número máximo de redo logs arquivados para recuperação automática de mídia do Oracle Parallel Server.
  • DATAFILE filespec Especifica os arquivos de dados a serem utilizados.
  • AUTOEXTENT: Ativa ou desativa a extensão automática de um arquivo de dados.
  • MAXDATAFILES: Especifica o tamanho inicial da seção do arquivo de dados do arquivo de controle no momento da execução de CREATE DATABASE ou CONTROLFILE. Uma tentativa de adicionar um novo arquivo cujo número seja superior a MAXDATAFILES, mas inferior ou igual a DB_FILES, faz o arquivo de controle expandir-se automaticamente, de forma que a seção dos arquivos de dados pode acomodar mais arquivos.
  • MAXINSTANCES: É o número máximo de instâncias que podem montar e abrir simultaneamente o banco de dados.
  • ARCHIVELOG: Estabelece que os redo logs devem ser arquivados antes de serem reutilizados.
  • NOARCHIVELOG: Estabelece que os redo logs podem ser reutilizados sem que seu conteúdo seja arquivado.
  • CHARACTER SET: È o conjunto de caracteres que o banco de dados utiliza para armazenar dados
  • NATIONAL CHARACTER SET: Especifica o conjunto de caracteres nacionais utilizados para armazenar dados nas colunas definidas como NCHAR, NCLOB, NVARCHAR2.

O comando completo ficará assim:

CREATE DATABASE [database]
[CONTROLFILE REUSE]
[LOGFILE [GROUP integer] filespec
[ [GROUP integer] filespec...]
[MAXLOGFILES integer]
[MAXLOGMEMBERS integer]
[MAXLOGHISTORY integer]
[MAXDATAFILES integer]
[MAXINSTANCES integer]
[ARCHIVEDLOG | NOARCHIVEDLOG]
[CHARACTER SET charset]
[NATIONAL CHARACTER SET charset]
[DATAFILE filespec [autoextent_clause]
[ filespec [autoextent_clause]]
filespec :=='filename [SIZE integer] [KIM] [REUSE] autoextent_clause := = [AUTOEXTENT [OFF [ ON [NEXT integer [KIM] [MAXSIZE [UNLIMITED[integer[KIM]]]