hargon 64 Denunciar post Postado Agosto 25, 2010 Para quem trabalha com banco de dados relacional, saber que Access é inferior a MySQL, e MySQL inferior a Oracle e SQL Server é mais tranquilo para encontrar essas informações. Mas na opinião de vocês que já trabalham com NoSQL, qual seria o melhor banco de dados atualmente? Quais as principais diferenças entre eles? Ou todos comportam da mesma forma, mudando apenas algumas sintaxes? Estou vendo alguns posts aqui sobre MongoDB (parece que é o que tem mais facilidade de integração com PHP), mas já li alguns bons comentários sobre Cassandra, e principalmente sobre o CouchDB, por isso surgiu a dúvida. Desde já agradeço pessoal. Compartilhar este post Link para o post Compartilhar em outros sites
Avelino.US 1 Denunciar post Postado Agosto 25, 2010 hargon depende de sua necessidade. Qual a sua necessidade hoje para usar database NoSQL? Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Agosto 25, 2010 A minha necessidade agora é estudar um para aprender NoSQL. Por isso queria conhecer mais sobre eles. O primeiro que ouvi falar foi Cassandra, mas nunca estudei a fundo. Agora com a criação desta área aqui, me interessei mais. Só que vejo posts somente do MongoDB. Pesquisei sobre ele e ao que parece é o que possui mais referências na Internet. Neste link existe uma explicação interessante. Compartilhar este post Link para o post Compartilhar em outros sites
Suissa 1 Denunciar post Postado Agosto 25, 2010 A minha necessidade agora é estudar um para aprender NoSQL. Por isso queria conhecer mais sobre eles. O primeiro que ouvi falar foi Cassandra, mas nunca estudei a fundo. Agora com a criação desta área aqui, me interessei mais. Só que vejo posts somente do MongoDB. Pesquisei sobre ele e ao que parece é o que possui mais referências na Internet. Neste link existe uma explicação interessante. Em uma grande síntese do movimento NoSQL no blog Heroku, Adam Wiggins nos dá os seguintes exemplos de uso do NoSQL: Dados estatísticos, frequentemente escritos mas raramente lidos (por exemplo, um contador de hits na web), devem usar um modelo chave/valor como o Redis, ou um modelo de documento como o MongoDB. Big Data (como estatísticas meteorológicas ou analytics de negócios, Business intelligence) funcionam melhor de uma forma livre, em sistemas distribuídos utilizando Hadoop. Binários (como MP3s e PDFs) são melhores acomodados em um armazenamento de dados que pode servir diretamente para o navegador do usuário, como a Amazon S3. Dados transientes (como sessões web, bloqueios, ou estatísticas de curto prazo) devem ser mantidos em um armazenamento de dados transitórios como Memcache. Se você precisa reproduzir o conjunto de dados em vários locais (como a sincronização de um banco de dados de música entre um aplicativo web e um dispositivo móvel), você vai querer os recursos de replicação do CouchDB. Aplicativos de alta disponibilidade, onde a minimização da inatividade é fundamental, você encontra uma grande utilidade nos datastores de configuração redundante e clusters automáticos como o Cassandra e o Riak. Então broder para estudar te aconselho a pegar 1 de cada tipo, mas ja te aviso que a maioria é feito em Java. Se quiser podes começar pelos mais conhecidos: MongoDb, CouchDB, Cassandra e Memcache No nosqlbr.com.br tem alguns exemplo de Mongo+PHP aqui Cassandra+PHP: http://nivaldomjunior.blogspot.com/2010/07/cassandra-php.html CouchDB+PHP: http://thecosmotron.com/2008/08/11/basic-couchdb-w-php/ Memcache+PHP: http://php.net/manual/en/book.memcache.php Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Agosto 25, 2010 Muito bom Suissa. Agora ficou claro, o melhor é conhecer todos, pois cada um serve para um tipo de aplicação. Obrigado pela resposta. Compartilhar este post Link para o post Compartilhar em outros sites
Avelino.US 1 Denunciar post Postado Agosto 26, 2010 Nada melhor do que um bom teste focado em sua necessidade. Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Agosto 26, 2010 Existe algum adequado para data mining? Compartilhar este post Link para o post Compartilhar em outros sites
João Batista Neto 448 Denunciar post Postado Agosto 26, 2010 Existe algum adequado para data mining? Acredito, giesta, que MongoDB pode ser bastante adequado para data miming. Se combinar, dentro do banco de dados, o modelo de documentos com MapReduce, e os padrões Iterator e Visitor, conseguimos fazer análises complexas, com vários algorítimos diferentes, em grandes volumes de dados, separar possíveis ruídos e recuperar a informação desejada. Talvez, se você puder expor uma situação "real" com algum volume de dados e o possível algorítimo, conseguimos ilustrar um caso de uso, dentro do MongoDB. Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Agosto 26, 2010 Dentre o que o Suissa demonstrou, não estou certo se conseguiria enquadrar minha aplicação em uma das categorias. O sistema, apesar de complexo, é simples (hein? Que antagônico, não? :lol: ). Assim, é um sistema "comum", nada de tão especial, mas quando em produção, pode gerar fluxo de acesso enorme e, por isso, precisaria de velocidade "extrema". Seria o caso do Cassandra ou Riak? Compartilhar este post Link para o post Compartilhar em outros sites
Avelino.US 1 Denunciar post Postado Agosto 26, 2010 Dentre o que o Suissa demonstrou, não estou certo se conseguiria enquadrar minha aplicação em uma das categorias. O sistema, apesar de complexo, é simples (hein? Que antagônico, não? :lol: ). Assim, é um sistema "comum", nada de tão especial, mas quando em produção, pode gerar fluxo de acesso enorme e, por isso, precisaria de velocidade "extrema". Seria o caso do Cassandra ou Riak? Se você tem somente a necessidade da velocidade sim, agora se você mais alguma necessidade pode colocar em um ambiente de desenvolvimento e ver qual tem uma melhor per-forma para a sua necessidade. Compartilhar este post Link para o post Compartilhar em outros sites
Suissa 1 Denunciar post Postado Agosto 27, 2010 Se for por velocidade usa soh um mysql +memcache pode ser q resolva. Para data mining não sei mas acho q os Graphs Bds devem ser mais fáceis p/ fazer essas ligaçoes entre os dados. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 27, 2010 Se a ideia do NoSql é justamente esquecer o BD faz sentido perguntar qual o melhor BD ? Seria como perguntar qual a melhor carne numa dieta vegetariana, não ? :) Compartilhar este post Link para o post Compartilhar em outros sites
Suissa 1 Denunciar post Postado Agosto 27, 2010 ahhuahuhuahahahua não é bem assim seria como perguntar se era melhor comer tofu ou bife de soja. Todos com o mesmo conceito mas sabores diferentes! Compartilhar este post Link para o post Compartilhar em outros sites
efmendes 0 Denunciar post Postado Janeiro 8, 2013 Para armazenar uma grande quantidade de imagens, que no futuro serão tratadas, qual o melhor banco NOSQL? Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Janeiro 8, 2013 A menos que provem o contrário, você NUNCA deve armazenzar imagens num banco de dados, seja ele qual for. Compartilhar este post Link para o post Compartilhar em outros sites
efmendes 0 Denunciar post Postado Janeiro 9, 2013 Minha situação é a seguinte: Estou em um projeto que utiliza aeronaves, não tripuladas, com sensores acoplados e produz uma enorme quantidade de imagens em alta resolução por sensoriamento remoto. Por voo são produzidas 1000 imagens que ocupam até 2 GB, sendo que em 1 ano estima-se a produção de 262.800.000 imagens com requisitos de armazenamento de ate 525 TB. Este volume de dados não pode ser gerenciado eficientemente em ambientes de bancos de dados tradicionais, talvez em nuvem. Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Janeiro 9, 2013 Isso é indiferente. Se você precisa de maior velocidade, acessá-las diretamente a partir do disco é N vezes mais rápido do que pelo banco de dados. Eu acho que para ficar ainda mais veloz, a mudança seria ou deveria ser mais quanto ao hardware do que quanto ao software. Compartilhar este post Link para o post Compartilhar em outros sites
Prog 183 Denunciar post Postado Janeiro 9, 2013 Pode falar um pouco mais sobre a sua aplicação? Vocês farão uso de geolocalização neste armazenamento? Como pretendem realizar as buscas? Numa avaliação superficial, me parece que as melhores opções para o seu cenário são MongoDB e Apache CouchDB. Você deve estudar quais estratégias de indexação, replicação e escalabilidade deseja utilizar a sua aplicação, isto pode vir a ser um impedimento técnico mais adiante e (um clichê de leve) tempo é dinheiro. Compartilhar este post Link para o post Compartilhar em outros sites
void 1 Denunciar post Postado Abril 15, 2013 mongodb Compartilhar este post Link para o post Compartilhar em outros sites
Almir Bispo 2 Denunciar post Postado Maio 6, 2013 Sua aplicação para fotos é simples. Crie uma grande tabela com as coordenadas,dimensões da imagem e caminho para elas.Exemplo: ID;LATITUDE;LONGITUDE;ALTITUDE;LARGURA_IMAGEM;ALTURA_IMAGEM;DATA;HORA;IMAGEM 001;234342;78837578583;1222;200;200;12/12/2013;12:00;[file://c:/pasta/001.bmp] Uma aplicação embarcada usa o comando @adicionar para adicionar os dados da imagem na tabela: { Tabela_imagem;@adicionar; ( ID; LATITUDE; LONGITUDE; ALTITUDE; LARGURA_IMAGEM; ALTURA_IMAGEM; DATA; HORA; IMAGEM; ); 0;0;0; query=0; destino=0 } Depois,quando quiser pesquisar uma imagem,poderá fazer uma pesquisa por ID,altitude,data,etc...com parametro ou sem parametro usando o comando @algo (fulltext) ou @pesquisar,@pesquisar>=,@pesquisar<=,@key. Com os resultados da query,você pode criar instantaneamente um html usando @html_resposta com (css,etc) e usar duas opções: A)Comando @link para criar um link para o arquivo da imagem. B)Comando @imagem para exibir a imagem no html (desktop ou web). Compartilhar este post Link para o post Compartilhar em outros sites