(Microsoft PowerPoint - A Arte de Escrever Artigos Cient\355ficos

Transcription

(Microsoft PowerPoint - A Arte de Escrever Artigos Cient\355ficos
Escrever Artigos como Arte
A Arte de Escrever Artigos
Científicos
MIRELLA M. MORO
Dept. Ciência Computação, UFMG
mirella@dcc.ufmg.br
Junho, 2009
+
+
+
+
+
+
ARTIGO
2
Essa Apresentação
Essa Apresentação
• Dicas básicas para escrever artigos
• Não aborda todas (toooodas) opções
• “Receita de bolo básico”: planejamento,
estrutura, conteúdo, estilo
Está online em
www.dcc.ufmg.br/~mirella
3
4
Roteiro
•
•
•
•
•
•
Planejamento
Componentes
Corpo do Artigo
Dicas de Estilo
Revisão Final
Conclusões
Planejamento
Orientador
Antes de Escrever
5
Planejamento
Planejamento
Orientador (a)
Antes de Escrever
• Qual o tema?
• Qual a finalidade da publicação?
– Conferência, periódico, demo, seminário de andamento,
trabalho de disciplina
• Com o seu
orientador(a)
• Qual o público alvo?
– Comunidade da Computação, de uma área específica,
estudantes, banca de pós-graduação, turma de pós
– Quem sou eu?
– Onde estou?
– Para onde vou?
• O que precisa escrever?
– Qual o foco? O que revisar? O que detalhar?
• Esqueleto – ver Componentes
7
8
Componentes
Estrutura
•
•
•
•
•
•
•
Componentes
Estrutura
Fluxo
Título, Resumo, …
Título
Autor (es)
Resumo
Introdução
Corpo
Conclusão
Referências
10
Componentes
1. TÍTULO
Fluxo
• Referência principal ao
trabalho
• Chave para ser
referenciado
• Reflete o conteúdo do
trabalho
• Claro, curto, correto
Título: keyword1 keyword2
Contexto
Trabalhos
Relacionados
Resumo:line1 line2 line3
Intro: par1 par2 par3 par4
Contribuição 1
– Nome, não uma frase,
original
– Primeira coisa a se
escrever??
Contribuição 2
Experimentos
Conclusão:par1
par2 par3
11
12
Título: exemplos
BRASILEIROS
• Análise de Dados de expressão gênica:
normalização de microarrays e modelagem de redes
regulatórias André Fujita @ CTD 2008 – 1º lugar
• Enhancing Spatial Association Rule Mining in
Geographic Databases V. BOGORNY @ CTD 2007 – 1º lugar
• Low Cost BIST Techniques for Linear and NonLinear Analog Circuits M. NEGREIROS @ DATE 2006 –
Título: exemplos
Clássicos
• The Entity-Relationship Model: Toward a Unified
View of Data PETER CHEN @ VLDB 1975
• Concurrency and Recovery in Data Base Systems
C. MOHAN @ IEEE Db. Eng. Bulletin 1985
• Evaluating Software Complexity Measures
E.J. WEYUKER @ TSE 88
dissertation award
• Marching cubes: A high resolution 3D surface
construction algorithm W.E. LORENSEN @ SIGGRAPH 1987
• BIRCH: An Efficient Data Clustering Method for Very
Large Databases T. ZHANG et al @ SIGMOD 2006
• Developing Multimedia Applications with the WinWin
Spiral Model B. W. BOEHM et al @ ESEC/FSE 1997
• Updating relations through XML Views
V.P.BRAGANHOLO @ CTD 2005 – 1º lugar
• Taming Heterogeneous Aspects with Crosscutting
Interfaces C. CHAVEZ @ SBES 2005 – best paper award
• Operadores de Seleção por Similaridade para
Sistemas de Gerenciamento de Bases de Dados
Relacionais A.S. ARANTES @ SBBD 2003 – best paper award
13
Título: exemplos
14
Título: exemplos
Best paper awards
• The Effectiveness of Automatically Structured
Queries in Digital Libraries M.A. GONÇALVES @ JCDL 2004
CITESEER MOST CITED 2006
• Investigating The Integration of Gridcomputing and Metamodeling
• Practical Group Signatures without Random Oracles
• YA-TRAP: Yet Another Trivial RFID Authentication Protocol
CITESEER MOST CITED 2005
• Universally Composable Security: A New Paradigm for
Cryptographic Protocols
• Energy-Efficient Target Coverage in Wireless Sensor Networks
• Session-Key Generation Using Human Passwords Only
CITESEER MOST CITED 2004
• Building a Large Annotated Corpus of English: The Penn Treebank
• Rapid Object Detection Using a Boosted Cascade of Simple
Features
• Trace-Driven Memory Simulation: A Survey
[student paper]
• Cloud Control with Distributed Rate Limiting
B. RAGHAVAN et al @ SIGCOMM 2007 [student paper]
• Relaxed Online Support Vector Machines for Spam
Filtering D. SCULLEY et al @ SIGIR 2007 [student paper]
• Joint Design-Time and Post-Silicon Minimization of
Parametric Yield Loss using Adjustable Robust
Optimization M. MANI et al @ ICCAD 2006
• Modeling the relative fitness of storage
M. MESNIER @ SIGMETRICS 2007
15
2. AUTOR (es)
3. RESUMO
• Nome completo + filiação + email
• Ordem dos autores??
• Um parágrafo 150-250 palavras
–Propaganda ou trailer do artigo
–Atrai (ou não!) a atenção e o
interesse do leitor
– Não há regra padrão aceita globalmente
• André Silva, Bento Muniz, Carlos Costa
• Carlos Costa, Bento Muniz, André Silva
• Bento Muniz, Carlos Costa, André Silva
Aluno “dono” tese
Bolsista
16
Orientador
17
18
Resumo
Resumo
• Sempre menciona informações ou
conclusões que estão no texto
• Sem referências bibliográficas (exceto em
• Sugestão 1 (uma ou duas linhas para
cada item)
– Escopo do trabalho
– Principais objetivos
– Principal resultado ou conclusão
ocasiões raras, como modificações a um método
publicado previamente)
• Último a ser escrito (idéia melhor do trabalho)
19
20
Resumo: exemplo
Escopo
Objetivos
Resultado
Resumo
Structural summaries are data structures
that preserve all structural features of XML
documents in a compact form. We
investigate the applicability of the most
popular summaries as access methods
within XML query processing. In this
context, issues like space and false
positives introduced by the summaries need
to be examined. Our evaluation reveals that
the additional space required by the more
precise structures is usually small and
justified by the considerable performance
gains that they achieve.
• Sugestão 2 (uma a três linhas para cada item)
– Contexto geral e específico
– Questão/problema sendo investigado
• Propósito do trabalho
– Estado-da-arte
• Por que precisa de uma solução nova/melhor
– Solução
• Nome da proposta
• Metodologia básica sem detalhes
• Quais características respondem as questões iniciais
– Interpretação dos resultados, conclusões
MORO et al – WWW 2006
21
22
Resumo: exemplo
Resumo: exemplo
Contexto Geral A Web é abundante em páginas que armazenam dados de
forma implícita.
Contexto Geral
Problema Em muitos casos, estes dados estão presentes em textos
semiestruturados sem a presença de delimitadores explícitos e
organizados em uma estrutura também implícita.
Contexto
Específico
Solução Neste artigo apresentamos uma nova abordagem para extração
em textos semi-estruturados baseada em Modelos de Markov
Ocultos (Hidden Markov Models - HMM).
Problema
Estado-da-Arte Ao contrário de outros trabalhos baseados em HMM, nossa
e Método abordagem dá ênfase à extração de metadados além dos
proposto dados propriamente ditos. Esta abordagem consiste no uso de
Estado-da-arte
uma estrutura aninhada de HMMs, onde um HMM principal
identifica os atributos no texto e HMMs internos, um para cada
atributo, identificam os dados e metadados. Os HMMs são
gerados a partir de um treinamento com uma fração de
amostras da base a ser extraída.
Solução
Método
proposto
Resultados Nossos experimentos com anúncios de classificados retirados
da Web mostram que o processo de extração alcançáveis de
qualidade acima de 0,97 com a medida F, mesmo se esta
SANTOS et al @ SBBD 2006
fração de treinamento é pequena.
Resultados
23
Publish-subscribe applications are an important class of contentbased dissemination systems where the message transmission
is defined by the message content, rather than its destination IP
address.
With the increasing use of XML as the standard format on many
Internet-based applications, XML aware pub-sub applications
become necessary. In such systems, the messages (generated
by publishers) are encoded as XML documents, and the profiles
(defined by subscribers) as XML query statements.
As the number of documents and query requests grow, the
performance and scalability of the matching phase (i.e. matching
of queries to incoming documents) become vital.
Current solutions have limited or no flexibility to prune out
queries in advance.
In this paper, we overcome such limitation by proposing a novel
early pruning approach called Bounding-based XML Filtering or
BoXFilter.
The BoXFilter is based on a new tree-like indexing structure that
organizes the queries based on their similarity and provides
lower and upper bound estimations needed to prune queries not
related to the incoming documents.
Our experimental evaluation shows that the early profile pruning
approach offers drastic performance improvements over the
current state-of-the-art in XML filtering. MORO et al @ VLDB 2007
24
Resumo: exemplo
Resumo: exemplo
Contexto e Finding useful patterns in large datasets has attracted considerable interest
Problema recently, and one of the most widely studied problems in this area is the
identification of clusters, or densely populated regions, in a multi-dimensional
dataset.
Estado-da-arte Prior work does not adequately address the problem of large datasets and
minimization of I/O costs.
Solução This paper presents a data clustering method named BIRCH (Balanced Iterative
Reducing and Clustering using Hierarchies), and demonstrates that it is especially
suitable for very large databases.
Método proposto BIRCH incrementally and dynamically clusters incoming multi-dimensional metric
data points to try to produce the best quality clustering with the available resources
(i.e., available memory and time constraints).
Vantagens BIRCH can typically find a good clustering with a single scan of the data, and
improve the quality further with a few additional scans. BIRCH is also the first
clustering algorithm proposed in the database area to handle “noise” (data points
that are not part of the underlying pattern) effectively.
Resultados We evaluate BIRCH’s time/space efficiency, data input order sensitivity, and
clustering quality through several experiments. We also present a performance
comparisons of BIRCH versus CLARANS, a clustering method proposed recently
for laerge datasets, and show that BIRCH is consistently superior.
ZHANG et al – SIGMOD 1996
Contexto Geral Today’s cloud-based services integrate globally distributed resources into
seamless computing platforms.
Problema Provisioning and accounting for the resource usage of these Internet-scale
applications presents a challenging technical problem.
Solução This paper presents the design and implementation of distributed rate
limiters, which work together to enforce a global rate limit across traffic
aggregates at multiple sites, enabling the coordinated policing of a cloudbased service’s network traffic.
Método proposto Our abstraction not only enforces a global limit, but also ensures that
congestion-responsive transport-layer flows behave as if they traversed a
single, shared limiter. We present two designs—one general purpose, and
one optimized for TCP—that allow service operators to explicitly trade off
between communication costs and system accuracy, efficiency, and
scalability.
Resultados Both designs are capable of rate limiting thousands of flows with negligible
overhead (less than 3% in the tested configuration). We demonstrate that
our TCP-centric design is scalable to hundreds of nodes while robust to both
loss and communication delay, making it practical for deployment in
nationwide service providers.
RAGHAVAN et al – SIGCOMM 2007
25
4. INTRODUÇÃO
ARTIGO
∩
26
Introdução
=∅
Um artigo científico não é um livro
de suspense no qual o leitor só
descobre o que está realmente
acontecendo no capítulo final
• Uma introdução bem escrita é fundamental!!
• O leitor deve estar ciente do que acontece
desde o início, desde a introdução
APESAR de serem ambos bem escritos
27
Introdução
28
Introdução
• A introdução é uma reafirmação
extentida do conteúdo do Resumo
• Em algum lugar (na introdução),
adicionar exemplos (1 ou mais):
– Como o seu trabalho pode ser empregado
– Onde o seu trabalho pode ser empregado,
quais os contextos, quais aplicações
podem tirar vantagem
– Quais problemas práticos o seu trabalho
resolve
ERRO MAIS COMUM
Não colocar as contribuições
Deixar tudo “implícito”
Achar que é óbvio
29
30
Introdução
Introdução
• Sugestão 1 (um ou dois parágrafos por item)
• Sugestão 2 (um ou dois parágrafos por item)
– Identifica a área de interesse (palavras do título)
– Contexto: revisão básica do estado-da-arte
– Propósito: e/ou hipótese sendo investigada
–
–
–
–
–
• O propósito desse trabalho é definir...
• Esse trabalho propõe três métodos para...
– Solução a ser detalhada
Contexto, motivação
O problema em questão
Trabalhos anteriores relacionados (limitações)
Lista de contribuições, resultados principais
Organização
• Característica fundamental, técnica/metodologia,
vantagens
– Organização
31
Introdução
32
Introdução
Contexto
• Problema
• Relacionados
• Contribuições
• Organização
• Contexto, motivação
• Evolução de um contexto
“Yesterday’s version of distributed computing was a
selfcontained, colocated server farm. Today, applications are
increasingly deployed on third-party resources hosted across
the Internet. Indeed, the rapid spread of open protocols and
standards like Web 2.0 has fueled an explosion of compound
services that script together third-party components to deliver a
sophisticated service [27, 29]. These specialized services are
just the beginning: flagship consumer and enterprise
applications are increasingly being delivered in the software-asa-service model [9]. For example, Google Documents, Groove
Office, and Windows Live are early examples of desktop
applications provided in a hosted environment, and represent
the beginning of a much larger trend.”
• O problema em questão
• Contexto
Problema
• Relacionados
• Contribuições
• Organização
– Definição do problema
– Sua importância, relevância, aplicações práticas
“One of the key barriers to moving traditional applications to the cloud,
however, is the loss of cost control [17]. In the cloud-based services
model, cost recovery is typically accomplished through metered pricing.
Indeed, Amazon’s EC2 charges incrementally per gigabyte of traffic
consumed [3] […] Limiting global resource consumption in a distributed
environment, however, presents a significant technical challenge.
Ideally, resource providers would not require services to specify the
resource demands of each distributed component a priori; such finegrained measurement and modeling can be challenging for rapidly
evolving services. Instead, they should provide a fixed price for an
aggregate, global usage, and allow services to consume resources
dynamically across various locations, subject to the specified aggregate
limit.”
RAGHAVAN et al – SIGCOMM 2007
RAGHAVAN et al – SIGCOMM 2007
33
Introdução
• Trabalhos anteriores relacionados
34
Introdução
• Contexto
• Problema
Relacionados
• Contribuições
• Organização
• Contribuições
– Por extenso em um parágrafo
• Contexto
• Problema
• Relacionados
Contribuições
• Organização
• “Considerando o contexto atual, esse trabalho propõe ...”
– No mesmo contexto, não resolvem o problema ou
apresentam apenas soluções parciais
– Extensão ou continuação de um trabalho anterior:
deve ser mencionado na introdução
– Uma frase sobre cada trabalho ou
– Agrupar trabalhos similares e detalhar um ou dois:
– Delimitado por itens
“This paper makes three primary contributions:
• Rate Limiting Cloud-based Services. We identify a key
challenge...
• Distributed Rate Limiter Design. We present the design and
…
• Evaluation and Methodology. We develop a methodology…”
“... Como resposta a tal requisito, alguns trabalhos têm enfocado a
questão do suporte a versões [2,4,9,13,23,27]. Entre esses,
Golendziner propõe o Modelo de Versões: uma extensão aplicável
a modelos de dados orientado a objetos ... ... [9]”
RAGHAVAN et al – SIGCOMM 2007
35
36
Introdução
• Organização
5. CORPO
• Contexto
• Problema
• Relacionados
• Contribuições
Organização
• Parte central do trabalho
( detalhado mais adiante)
“O restante do artigo está organizado da seguinte
maneira. A seção 2 apresenta alguns conceitos
básicos e discute trabalhos relacionados. A seção 3
detalha o modelo proposto. A seção 4 apresenta um
estudo comparativo através de experimentos,
enquanto a seção 5 conclui o trabalho.”
37
6. CONCLUSÃO
38
Conclusão: exemplo
“As cloud-based services transition from marketing vaporware to
real, deployed systems, the demands on traditional Web-hosting
and Internet service providers are likely to shift dramatically. In
particular, current models of resource provisioning and accounting
lack the flexibility to effectively support the dynamic composition
and rapidly shifting load enabled by the software as a service
paradigm. We have identified one key aspect of this problem,
namely the need to rate limit network traffic in a distributed fashion,
and provided two novel algorithms to address this pressing need.
Our experiments show that naive implementations based on
packet arrival information are unable to deliver adequate levels […]
Our results demonstrate that it is possible to recreate, at
distributed points in the network, the flow behavior that end users
and network operators expect from a single centralized rate limiter.
RAGHAVAN et al - SIGCOMM 2007
Moreover, it is possible […]”
• Sugestão: ser mais específico que na introdução e
informar (um parágrafo/linha por item)
–
–
–
–
resumo do que o artigo apresentou
principais resultados e contribuições
comentários sobre a importância, relevância ou
dicas para o uso prático do seu trabalho (como os
resultados dos experimentos podem ajudar na prática...)
– trabalhos futuros (evite entregar suas idéias de trabalhos
mais inovadores de graça!!)
39
40
7. REFERÊNCIAS
• Corretas, completas, específicas
• Informações obrigatórias: autores, título, nome do
evento ou periódico (editora), volume e número se
necessário, ano
• Referências relevantes
Corpo do Artigo:
Organização Interna
– Do mesmo ano (ou ano anterior) para ilustrar que o tópico é
atual e de interesse da comunidade
– Artigos de conferências, periódicos, livros (não apenas sites
da Internet!)
– Todas as obras listadas no conjunto de referências devem
ser mencionadas no texto, e vice-versa
Exemplos
O que já existe
Novidade
Validação
Discussão
41
Corpo
Escrever Artigos como Arte
• Muitas maneiras de apresentar o corpo
do trabalho
• Faça rascunhos com ordens diferentes
• Revise com seu orientador, escolha um
• Pode ser mudado enquanto o trabalho
é escrito
43
44
Corpo
Corpo
Exemplos de Organização
Exemplos de Organização
ARANTES @ SBBD 2003
1. Introdução
2. Trabalhos Relacionados
3. Motivação e Conceitos
Fundamentais
4. Composição de
Operadores por
Similaridade: os Novos
Algoritmos
5. Experimentos Realizados
6. Conclusões e Trabalhos
Futuros
LORENSEN @ SIGGRAPH 87
1. Introduction
2. Information flow for 3D
medical algorithms
3. Related work
4. Marching cube algorithm
5. Enhancements of the basic
algorithm
6. Implementation
7. Results
8. Conclusions
BRAGANHOLO @ CTD 2005
1. Introduction
2. Related Work
3. Query Trees
4. Update Language
5. Mapping
6. Summary and Concluding
Remarks
WEYUKER @ TSE 88
Introduction
Definitions
Complexity Measures
Desired Properties of
Complexisty Measures
5. Conclusions, Summary,
and Future Directions
1.
2.
3.
4.
45
46
Corpo
Corpo
Exemplos de Organização
1.
2.
3.
4.
5.
6.
7.
ZHANG @ SIGMOD 1996
Introduction
Summary of Relevant Research
Background
Clustering Feature and CF Tree
The BIRCH Clustering Algorithm
Performance Studies
Summary and Future Research
Exemplos de Organização
1. Introdução
2. O que já existe
Estado-da-arte
3. NOVIDADE
4. VALIDAÇÃO
5. Conclusão
RAGHAVAN @ SIGCOMM07
1.
2.
3.
4.
Introduction
Classes of Clouds
Limiter Design
Evaluation
Methodology
5. Evaluation
6. Related Work
7. Conclusion
47
A.
B.
C.
D.
E.
Conceitos Básicos
MODELO
LINGUAGEM; IMPLEMENTAÇÃO
ESTUDO DE CASO
Trabalhos Relacionados
A.
B.
C.
D.
E.
F.
Conceitos Básicos
Trabalhos Relacionados
ARQUITETURA; ALGORITMOS
ANÁLISE COMPARATIVA
EXPERIMENTOS
Discussão
48
1. O que já Existe
Já existe
• Novidade
• Validação
• Discussão
O que já Existe: Conceitos Básicos
• Conceitos Básicos e
Trabalhos
Relacionados
• Apresentados
juntos/não
• Conceitos Básicos
antes da contribuição
principal
• Trabalhos
Relacionados no início
ou fim
Definições
Notações
Modelos
Arquiteturas
Linguagens
Cenários
Padrões
necessários
para entender o
trabalho
• Referências para trabalhos onde os
conceitos são introduzidos ou melhor
detalhados
49
50
O que já Existe: Trabalhos Relacionados
O que já Existe: Trabalhos Relacionados
• Como o artigo avança o estado-da-arte
• O que antes não tinha, e agora tem
• Trabalhos anteriores com temas relacionados
ao seu
• Mencionar todos os trabalhos relacionados
(pessoal do comitê de programa, depto)
• Detalhes desses trabalhos ajudam mostrar
onde o seu trabalho é melhor ou
• Foco: trabalhos RELACIONADOS a
pesquisa apresentada no artigo
• Desvantagens ou pontos fracos de trabalhos
anteriores que são aprimorados
• Condições, requisitos e limitações do seu
trabalho
51
O que já Existe: Trabalhos Relacionados
52
O que já Existe: Trabalhos Relacionados
• Mas o artigo é um survey, precisa de trabalhos
relacionados???
• Seção de Trabalhos Relacionados é praticamente
obrigatória
• Por exemplo, o título é:
– SIM
– É impossível que um artigo referencie todos os outros
– Que outros trabalhos ficaram fora do survey e por quê?
“Resumos Estruturais em Processamento de Consulta XML”
Exemplos de temas relacionados:
– Resumos estruturais em outros contextos (outros
processamentos)
– Resumos estruturais para processar outros tipos de dados
– Outras formas de processar consultas XML
– ...
• Precisa ter uma seção para Trabs. Rels? Não pode ir
simplesmente mencionando os artigos aqui e ali no
meio do artigo?
– Melhor não
– Melhor ter todos os artigos em uma seção
– COMPARANDO com o trabalho em questão
53
54
2. Novidade: Contribuições
• Já existe
Novidade
• Validação
• Discussão
Novidade: Contribuições
• Um parágrafo com idéia geral da proposta
• Esclareça novas definições (escreva claramente que
são novas definições propostas no artigo)
• Adicione quantos parágrafos necessários para
apresentar:
• Parte principal do
artigo!!!!
• A que veio
• Adiciona o que
• Tem de estar
claríssimo
–
–
–
–
o que é o trabalho
como funciona a proposta
o que é novidade, por que
detalhes e explicações sobre partes principais do
funcionamento da proposta
55
3. Validação
• Já existe
• Novidade
Validação
• Discussão
56
Validação: Análise
• Mostrar que a
solução proposta
funciona e seus
benefícios
• Análise
• Estudo de caso
• Experimentos
• Proposta é correta (demonstração e provas)
• Inclua (conforme necessário):
– Um parágrafo com o resumo do que é provado
nessa seção
– Um parágrafo com definições específicas usadas
na análise (ex. estruturas usadas nas provas)
– Provas e análises
– Comentários finais sobre o significado das provas
de um modo intuitivo ou num nível mais prático
57
Validação: Estudo de Caso
58
Validação: Experimentos
• Proposta é aplicável, implementável
• Inclua (conforme necessário):
• Proposta funciona, desempenho
bom/superior
• Inclua (conforme necessário):
– Contexto geral
– Regras ou condições específicas necessárias
nesse estudo de caso caso
– Modelagem / Implementação
– Funcionamento
– Vantagens e desvantagens de usar o modelo
proposto nesse estudo de caso
– Contexto: o que é medido, o que não é, por que
– Modelo de simulação ou infraestrutura das
medições: configuração do sistema, tipo de
máquinas usadas, linguagens, ...
– Resultados dos experimentos [próximo slide]
– Comentários finais, discussões, explicações
adicionais
59
60
Validação: Experimentos
Experimentos: Exemplo
• Descrição de resultados
• Performance studies
– Subtítulo (em negrito): para diferenciar experimentos (ex:
avaliando tamanho da entrada, variando a quantidade de
consultas, usando dados sintéticos, usando dados reais, ...)
– Razão clara: por que cada gráfico aparece no seu artigo
(ex: conforme o tamanho dos arquivos de entrada aumenta,
o throughput diminui, ...)
– Explicar: os axis, o que o gráfico mostra, qual é a
tendência, por que a tendência aparece, por que um
algoritmo apresenta melhores resultados que outro, ...
– Auto-contido: legendas devem ser legíveis e
compreensíveis e suficientes para entender o gráfico
–
–
–
–
–
–
–
–
6.1 Analysis
6.2 Synthetic Dataset Generator
6.3 Parameters and Default Setting
6.4 Base Workload Performance
6.5 Sensitivity to Parameters
6.6 Time Scalability
6.7 Comparison of BIRCH and CLARANS
6.8 Application to Real Datasets
ZHANG @ SIGMOD 1996
61
4. Discussão
• Discussão
62
• Já existe
• Novidade
• Validação
Discussão
– Pode ser incluída como subseção final de Experimentos ou
na Conclusão
– Relacionamentos entre os fatos e resultados observados
– Princícios, relações, generalizações mostrados nos
Experimentos
– Exceção ou falta de relação, pontos incertos
– Mostrar que resultados e interpretações concordam (ou
contrastam) com trabalhos previamente publicados
– Implicações teóricas e possíveis aplicações práticas
Dicas de Estilo
• Conclusão
– Principal contribuição
– Evidências para cada conclusão (não assuma que o leitor é
super capaz de juntar todos os pontos sozinho)
63
Dicas de Estilo
Dicas de Estilo
SETE pecados capitais
• Siga o formato
1. Frases longas (repletas de
vírgulas ou não!)
2. Erros ortográficos
3. Tradução literal e
imbromation
4. Imagens/tabelas ilegíveis
5. Erros gramaticais
– Confira cuidadosamente a seção de "Instruções a
Autores"/"Instruções para Submissão"
– Artigos podem ser recusados apenas por não seguir o
formato requisitado (independente da qualidade de seu
conteúdo)
• Cópia literal não!!!
– Quando referenciar outros trabalhos, resuma suas idéias
principais
– Resista à tentação de copiar literalmente colocando o texto
entre “..”
(paralelismo, concordância,
conjugação, crase)
6. Cópia literal
7. Blablabla (encher linguiça)
65
66
Dicas de Estilo
Dicas de Estilo
• Palavras estrangeiras em itálico
• Siglas esclarecidas
• Uma imagem vale mil palavras
– Trabalho apresenta um processo complicado, cheio de
fases, entradas e saídas para lá e para cá, tente resumir
tudo em uma imagem
– Uma nova arquitetura
– Colocar seu significado entre parênteses
– “... conforme definido pela W3C (World Wide Web
Consortium)...”
– Lembre-se que pode existir sobreposição
• Escreva enquanto trabalha
– É uma boa idéia começar a escrever o artigo enquanto o
trabalho está em desenvolvimento (enquanto idéias,
problemas, soluções e detalhes estão mais frescos na
memória)
• REVISAR! REVISAR! REVISAR!
• Backup! Backup! Backup!
67
68
Revisão Final
Verificar antes da Submissão
• Ortografia de título, nomes dos autores e filiação
• Imprima o artigo (no formato final de submissão):
tudo legível
• Tenha certeza absoluta da data e do horário limites
para submissão de trabalhos
• MS Word:
Revisão Final
O que verificar
Avaliação
– Numeração das seções e subseções
– Numeração no texto concorda com a numeração usada em
figuras e tabelas
– Referências cruzadas não foram perdidas dentro do editor
70
Revisão Final
Exemplo de Formulário de Avaliação
• Relevância
(enquadramento no evento)
Conclusões
•
•
•
•
•
Originalidade
Mérito técnico-científico
Apresentação
Organização
Legibilidade
(readability)
• Referências
71
Conclusões
Conclusões
Tudo junto
Título
Título inicial da tese/dissertação
Autores
Aluno + Orientador(es)
Resumo / Abstract
Contexto + problema + objetivos
1. Introdução
Contexto + motivação + problema +
estado-da-arte + contribuições + organização
2. O que já existe
Estado-da-arte: avaliação comparativa
3. NOVIDADE
Contribuições + trabalho desenvolvido
4. Validação
Validação inicial + próximos passos
5. Conclusão
Estado atual + próximos passos
6. Referências
Local (DCC) + nacional + internacional
• Como escrever artigos científicos
• Muuuuitas outras opções
www.dcc.ufmg.br/~mirella
73
74
Perguntas???
Estudo de Caso
VLDB 2007 Best Paper Awards
Scalable Semantic Web Data
Management Using Vertical Partitioning
Daniel J. Abadi, Adam Marcus, Samuel
Madden, Katherine J. Hollenbach
mirella@dcc.ufmg.br
www.dcc.ufmg.br/~mirella
Tem um formato particular
75
76
Estudo: Abstract
•
•
•
•
•
Estudo: Introduction
Efficient management of RDF data is an important factor in realizing the semantic
Web vision.
Performance and scalability issues are becoming increasingly pressing as
Semantic Web technology is applied to real-world applications.
In this paper, we examine the reasons why current data management solutions
for RDF data scale poorly, and explore the fundamental scalability limitations of
these approaches. We review the state of the art for improving performance for
RDF databases and consider a recent suggestion, “property tables.” We then
discuss practically and empirically why this solution has undesirable features.
As an improvement, we propose an alternative solution: vertically partitioning the
RDF data. We compare the performance of vertical partitioning with prior art on
queries generated by a Web-based RDF browser over a large-scale (more than
50 million triples) catalog of library data.
Our results show that a vertical partitioned schema achieves similar performance
to the property table technique while being much simpler to design. Further, if a
column-oriented DBMS (a database architected specially for the vertically
partitioned case) is used instead of a row-oriented DBMS, another order of
magnitude performance improvement is observed, with query times dropping
from minutes to several seconds.
77
•
•
The Semantic Web is an effort by the W3C [8] to enable integration and sharing
of data across different applications and organizations. Though called the
Semantic Web, the W3C envisions something closer to a global database than to
the existing World Wide Web. In the W3C vision, […] . Database researchers will
immediately recognize that building the Semantic Web requires surmounting
many of the semantic heterogeneity problems faced by the database community
over the years. In fact – as in many database research efforts – the W3C has
proposed schema matching, ontologies, and schema repositories for managing
semantic heterogeneity.
One area in which the Semantic Web community differs from the relational
database community is in its choice of data model. The Semantic Web data
model, called the “Resource Description Framework,” [9] or RDF, represents data
as statements about resources using a graph connecting resource nodes and
their property values with labeled arcs representing properties. Syntactically, […].
For example, to represent the fact that Serge Abiteboul, Rick Hull, and Victor
Vianu wrote a book called “Foundations of Databases” we would use seven
triples: […]
O artigo tem de explicar esses conceitos:
Trata da área de Web Semântica em um evento
de Banco de Dados
78
Estudo: Introduction
•
•
Estudo: Introduction
The commonly stated advantage of this approach is that it is very general […]
These tools won’t be useful if different users describe objects differently, so the
Semantic Web community has developed a set of standards for expressing
schemas (RDFS and OWL); these make it possible, for example, to say that
every book should have an author, or that the property “isAuthor” is the same as
the property “authored.”
This data representation, though flexible, has the potential for serious
performance issues, since there […]. For example, […] Figure 1.
•
This query is potentially very slow to
execute, since as the number of triples in
the library collection scales, the RDF
table may well exceed the size of
memory, and each of these filters and
joins will require a scan or index lookup.
Real world queries involve many more
joins, which complicates selectivity
estimation and query optimization, and
limits the benefit of indices.
As a database researcher, it is tempting to dismiss RDF, as the data model
seems to offer inherently limited performance for little – or no – improvement in
expressiveness or utility. Regardless of one’s opinion of RDF, however, it
appears to have a great deal of momentum in the web community, with several
international conferences (ISWC, ESWC) each drawing more than 250 full paper
submissions and several hundred attendees, as well as enthusiastic support from
the W3C (and its founder, Tim Berners-Lee.) Further, an increasing amount of
data is becoming available on the Web in RDF format, including the UniProt
comprehensive catalog of protein sequence, function, and annotation data
(created by joining the information contained in Swiss-Prot, TrEMBL, and PIR) [6]
and Princeton University’s WordNet (a lexical database for the English language)
[7]. The online Semantic Web search engine Swoogle [5] reports that it indexes
2,171,408 Semantic Web documents at the time of the publication of this paper.
Vende o peixe para a comunidade de BD
79
80
Estudo: Introduction
•
•
•
Estudo: Introduction
Hence, it is our goal in this paper to explore ways to improve RDF query
performance, since […]. We focus on […] The gist of our technique is based on a
simple and familiar observation to proponents of relational technology: […]
We look at two different physical organization techniques for RDF data. The first,
called the property table technique, denormalizes […]. For example, “title,”
“author,” and “isbn” might all be properties that tend to be defined for subjects
that represent book entities. […] This flattened property table representation will
require many fewer joins to access, since self-joins on the subject column can be
eliminated. One can use standard query rewriting techniques to translate queries
over the RDF triple-store to queries over the flattened representation.
There are several issues with this property table technique, including:
–
–
–
NULLs. Because […]
Multi-valued Attributes. […]
Proliferation of union clauses and joins. In the above example, […]
Fornece uma primeira solução que requer
menos joins.
Explica os problemas desta solução.
•
To address these limitations, we propose a different physical organization
technique for RDF data. We create a two-column table […] For the library
example, […] Although many joins are still required to answer queries over
multiple properties, each table is sorted by subject, so fast (linear) merge joins
can be used. Further, only those properties that are accessed by the query need
to be read off disk (or from memory), saving I/O time.
Fornece uma segunda solução
•
The above technique can be thought of as a fully vertically partitioned database
on property value. Although vertically partitioning a database can be done in a
normal DBMS, these databases are not optimized for these narrow schemas (for
example, the tuple header dominates the size of the actual data resulting in table
scans taking 4-5 times as long as they need to), and there has been a large
amount of recent work on column-oriented databases [19, 20, 29, 31], which are
DBMSs optimized for vertically partitioned schemas.
Explica a diferença da nova técnica para as
anteriores (da própria comunidade de BD)
81
Estudo: Introduction
•
•
•
In this paper, we compare the performance of different RDF storage schemes on
a real world RDF dataset. We use the Postgres open source DBMS to show that
both the property table and the vertically partitioned approaches outperform the
standard triple-store approach by more than a factor of 2 (average query times go
from around 100 seconds to around 40 seconds) and have superior scaling
properties. We then show that one can get another order of magnitude in
performance improvement by using a column-oriented DBMS since they are
designed to perform well on vertically partitioned schemas (queries now run in an
average of 3 seconds).
The main contributions of this paper are: an overview of the state of the art for
storing RDF data in databases, a proposal to vertically partition RDF data as a
simple way to improve RDF query performance relative to the state of the art, a
description of how we extended a column-oriented database to implement the
vertical partitioning approach, and a performance evaluation of these different
proposals. Ultimately, the column-oriented DBMS is able to obtain nearinteractive performance (on non-trivial queries) over real-world RDF datasets of
many millions of records, something that (to the best of our knowledge) no other
RDF store has been able to achieve.
The remainder of this paper is organized as follows. […]
83
82
Estudo: Corpo
2. Current State of the Art
In this section, we discuss the state of the art of storing RDF
data in relational databases, with an extended look at the
property table approach.
2.1 RDF in RDBMSs
2.2 Property Tables
3. A Simpler Alternative
We now look at an alternative to the property table solution to
speed up queries over a triple-store. In Section 3.1 we discuss
the vertically partitioned approach to storing RDF triples.We
then look at how we extended a column-oriented DBMS to
implement this approach in Section 3.2
3.1 Vertically Partitioned Approach
3.2 Extending a Column-Oriented DBMS
84
Estudo: Corpo
Estudo: Validação
4. Materialized Path Expressions
5. Benchmark
In this section, we describe the RDF benchmark we have
developed for evaluating the performance of our three RDF
databases. Our benchmark is based on publicly available library
data and a collection of queries generated from a web-based
user interface for browsing RDF content.
6. Evaluation
Now that we have described our benchmark dataset and the
queries that we run over it, we compare their performance in
three different schemas – a triples schema, a property tables
schema, and a vertically partitioned schema. We study the
performance of each of these three schemas in a row-store
(Postgres) and, for the vertically partitioned schema, also in a
column-store (our extension of C-Store).
Our goal is to study the performance tradeoffs between these
representations to understand when a vertically partitioned
approach performs better (or worse) than the property tables
solution. Ultimately, the goal is to improve performance as much
as possible over the triple-store schema, since this is the
schema most RDF store systems use.
5.1 Barton Data
5.2 Longwell Overview
5.3 Longwell Queries
85
86
Estudo: Validação
Estudo: Validação
6.1 System
6.4 Results
6.1.1 PostgreSQL Database (por que? configurações)
6.4.1 Postgres as a Choice of RDBM
6.2 Store Implementation Details
6.5 Scalabililty
We now describe the details of our store implementations. Note that all
implementations feature a dictionary encoding table that maps strings to integer
identifiers (as was described in Section 2.1); these integers are used instead of
strings to represent properties, subjects, and objects. The encoding table has a
clustered B+tree index on the identifiers, and an unclustered B+tree index on the
strings. We found that all experiments, including those on the triplestore, went
an order of magnitude faster with dictionary encoding.
6.2.1 Triple Store
6.2.2 Property Table Store
6.2.3 Vertically Partitioned Store in Postgres
6.2.4 Column-Oriented Store
6.6 Materialized Path Expressions
6.7 The Effect of Further Widening
6.3 Query Implementation Details
In this section, we discuss the implementation of all seven benchmark queries in
the four designs described above.
87
Estudo: Conclusão
88
Estudo: Acknowledgments
The emergence of the Semantic Web necessitates high performance
data management tools to manage the tremendous collections of RDF
data being produced. Current state of the art RDF databases – triplestores – scale extremely poorly since most queries require multiple selfjoins on the triples table. The previously proposed “property table”
optimization has not been adopted in most RDF databases, perhaps due
to its complexity and inability to handle multi-valued attributes. We
showed that a poorly-selected property table can result in a factor of 3.8
slowdown over an optimal property table, thus making the solution
difficult to use in practice. As an alternative to property tables, we
proposed vertically partitioning tables and demonstrated that they
achieve similar performance as property tables in a row-oriented
database, while being simpler to implement. Further, we showed that on
a version of the C-Store column-oriented database, it is possible to
achieve a factor of 32 performance improvement over the current state
of the art triple store design. Queries that used to take hundreds of
seconds can now be run in less than ten seconds, a significant step
toward interactive time semantic web content storage and querying.
• We thank George Huo and the Postgres development team for
their advice on our Postgres implementation, and Michael
Stonebraker for his feedback on this paper. This work was
supported by the National Science Foundation under grants IIS048124, CNS- 0520032, IIS-0325703 and two NSF Graduate
Research Fellowships.
89
90