Produtos Locaweb

Posts com o tag ‘Banco de dados’

Webcast: Modelagem de dados

22 de junho de 2009

Na apresentação Caio Spadafora fala sobre como modelar os dados da sua aplicação, para obter melhor desempenho e escalabilidade ao utilizar seu Banco de Dados.

Dúvidas referentes ao webcast podem ser postadas nos comentários e serão respondidas posteriormente.

Dicas de leitura:

Effective Oracle by Design

The Relational Model for Database Management
Version 2
Autor:  E. F. CODD

The Relational Model for Database Management

Effective Oracle by Design
Autor:  Thomas Kyte
Este livro, apesar de dar ênfase a Oracle, vários capítulos se aplicam a outros bancos de dados.

Novos Planos de SQL SERVER

27 de maio de 2008

Se você já é nosso cliente de SQL Server, talvez você já tenha percebido que o espaço disponível de seu banco de dados MS SQL ficou maior, em alguns casos 5 vezes maior! Se ainda não tem este serviço, esta é a hora para começar a usar. Com os novos preços e as novas capacidades, o seu negócio está pronto para crescer ainda mais.

Os nossos planos ficaram assim:
MS SQL Server I com 100MB por R$30,00/Mês
MS SQL Server II com 250MB por R$50,00/Mês
MS SQL Server III com 500MB por R$70,00/Mês

Lançamos também o novo plano MS SQL Server IV de 1GB por R$120,00/Mês, o que equivale a apenas R$ 0,12/MB mensais!

Os novos valores aparecerão na sua próxima fatura que ainda não foi emitida.

Na Locaweb, você pode utilizar ferramentas como o Gerenciador SQL, Query Analyzer ou SQL Server Enterprise Manager para se conectar diretamente e administrar o seu banco de dados.

A facilidade de gerenciamento e performance conhecidos do MS SQL agora tem o preço e espaço que viabiliza qualquer projeto.

Hospedagem com MS SQL Server é na Locaweb!

Mais detalhes em www.locaweb.com.br/sql

Cansado de fechar suas conexões com banco de dados?

24 de abril de 2008

Quem nunca esqueceu de fechar uma conexão com banco de dados que atire a primeira pedra!
Sempre que uma conexão com o banco de dados é feita, ela ficará ativa até que o método Close() seja chamado. Existem duas formas de garantir que a conexão não ficará ativa após sua utilização:

- Utilizando o bloco try/catch/finally
Ao utilizar o bloco try/catch/finally pode-se garantir que a conexão será finalizada colocando-se o método Close() dentro do bloco finally, pois mesmo que uma exception seja gerada, esse bloco será executado.

// Criando o conexão e recuperando a connection string do web.config
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager.ConnectionStrings["StringConexao"].ConnectionString;

try
{
// Abre a conexão com o banco de dados
conn.Open();

// Coloque aqui seu código que interajirá o banco de dados
}
catch (Exception ex)
{
// Caso seja encontrado algum erro, a exception será gerada
Response.Write(ex.Message);
}
finally
{
// Mesmo que a exception tenha sido gerada, esse bloco será executado
// conn.Close() ou conn.Dispose() são equivalentes e pode-se usar tanto um como o outro
conn.Close();
}

- Utilizando a instrução “using”
Ao usar o bloco try/catch/finally, nada garante que você sempre irá se lembrar que colocar o método que fecha a conexão dentro do finally (como esse bloco é opcional, o que te impede de não coloca-lo!!!).
Uma ótima alternativa é a utilização do using, pois ele se encarregará de fechar a conexão assim que seu bloco se encerrar:

using (SqlConnection conn = new SqlConnection())
{
// Define a string de conexão vinda do web.config
conn.ConnectionString = ConfigurationManager.ConnectionStrings["StringConexao"].ConnectionString;

// Abre a conexão
conn.Open();

- Utilizando a instrução “using”

Ao usar o bloco try/catch/finally, nada garante que você sempre irá se lembrar que colocar o método que fecha a conexão dentro do finally (como esse bloco é opcional, o que te impede de não coloca-lo!!!).

Uma ótima alternativa é a utilização do using, pois ele se encarregará de fechar a conexão assim que seu bloco se encerrar:

using (SqlConnection conn = new SqlConnection())

{

// Define a string de conexão vinda do web.config

conn.ConnectionString = ConfigurationManager.ConnectionStrings["StringConexao"].ConnectionString;

// Abre a conexão

conn.Open();

// Coloque seu código aqui

}

Assim que o bloco using se encerrar, ele automaticamente fechará a conexão pra você.
Mais informações sobre a class SqlConnection clique aqui .

Otimizações nas consultas ao banco de dados

7 de janeiro de 2008

Quando notamos que o site está crescendo ou percebemos que número de visitas aumentou a solução mais eficiente é pensar na otimização das consultas.

A busca de um assunto específico em um livro é muito mais fácil e rápido quando feita pelo índice, essa definição é clássica. Por esta razão, neste artigo focaremos a criação de índices para otimizações nas consultas nos bancos de dados.

Em um banco de dados com o aumento de visitas ao site é necessário que a resposta seja o mais rápida possível, os índices são uma espécie de “turbo” para consultas ao banco quando utilizados corretamente.
De qualquer forma, a criação de índices deve ser cautelosa, pois o mesmo necessita de espaço na base de dados, não se deve criar índices em todos os campos, mas sim, nos que são utilizado em critérios de buscas (WHERE ou INNER JOIN).

O uso de índices é um dos aspectos mais importantes para otimizar bases de dados. Não importa se ela é simples, por exemplo: Uma pesquisa em uma tabela não indexada com 1.000.000 (um milhão) de registros nunca será rápida e leve.

Se sua aplicação faz várias vezes a mesma consulta que retornam uma quantidade considerável de registros, você pode utilizar o SQL_CACHE, por exemplo:

A cada acesso ao seu index.php ele executa a query: “SELECT id, nome FROM tabela WHERE id > 0;”
Ao invés de fazer o MySQL processar sempre esta query, use “SELECT SQL_CACHE id, nome FROM tabela WHERE id > 0;”, o MySQL buscará o resultado da query no cache ao invés de fazer sempre a mesma pesquisa, o servidor MySQL poderá responder até 90% mais rápida a sua solicitação, deixando o carregamento do seu site muito mais leve.

MySQL em Windows e mais espaço para BD

8 de outubro de 2007

A LocaWeb acaba de lançar duas grandes novidades para banco de dados da hospedagem compartilhada.

A primeira novidade é o MySQL incluso nos planos de hospedagem compartilhada em plataforma Windows, sem custo adicional. A plataforma Linux já contava com várias bases MySQL inclusas ao plano e agora estendemos essa vantagem também para todos os planos Windows.

MySQL é o sistema de gerenciamento de banco de dados relacional de código aberto mais utilizado do mundo. Considerado um banco de dados de alta performance, que possui interfaces para diversas linguagens de programação, o que permite sua utilização na LocaWeb com PHP, Java e Perl em Linux, ASP e ASP.Net em Windows.

Já o gerenciamento pode ocorrer via phpMyAdmin, que permite executar inúmeros procedimentos como criar tabelas, inserir e consultar registros, criar índices, entre outros.

A segunda é que separamos o espaço de BD do espaço Web e, com isso, pode-se dizer que dobrou o espaço em disco dos clientes. Como assim? Antes, o espaço consumido era igual ao espaço de banco de dados inclusos somados ao espaço do servidor Web. Na nova regra o banco de dados ganhou um espaço independente e igual ao espaço Web do plano contratado. Desta forma, o plano Profissional I, por exemplo, passou a ter 1 GB de espaço Web e mais 1 GB de espaço para banco de dados, tanto em Windows quanto em Linux.

Saiba mais sobre os planos de hospedagem compartilhada.