Hoje precisei substituir uma String em 51 arquivos VXML. Como fazer isso? Editar um por um? Nao... isso e coisa pra quem usa Windows! :)Para quem tem um Linux basta usar o comando replace ou entao o sed.Exemplo usando sed:for i in * ; do sed -i 's/ORIGINAL/NOVO/g' $i; doneExemplo usando o replace:replace ORIGINAL NOVO < oldfile > newfileUsei o sed para fazer o trabalho por que achei mais facil. Mas ta ai a dica pra quem precisar. Por diversos anos tentei criar um site pessoal com informacoes de areas do meu interesse, testei Drupal, Wordpress e Joomla, utilizei cada um dos CMS por um tempo, mas nunca consegui manter o site sempre atualizado. Resolvi entao, abandonar os CMS e abrir um Blog! Acho que ficara mais facil de atualizar...Espero estar comecando um Blog com informacoes que sirvam para todos que trabalham com Asterisk, Linux, roteadores Cisco e outras tecnologias que eu esteja trabalhando.Bom... espero que isto seja apenas o comeco...Abraco a todos! Por necessidade, resolvi realizar testes em bancos de dados NoSQL. Estava precisando de um banco de dados que comporte pelo menos 1.5 milhões de registros por dia e que forneça uma forma rápida para realizar consultas.Testei três NoSQL: Cassandra, MongoDB e CouchDB.Criei uma pequena aplicação em PHP para inserir 500 milhões de registros (exagerei né? Mas precisava ter certeza) e um PHP para listar a quantidade de registros. Percebi que ainda tem poucos tutoriais que mostram de forma clara como as coisas funcionam e por isso resolvi escrever alguns pequenos posts mostrando o caminho das pedras.Resolvi então escrever alguns posts sobre banco de dados NoSQL com PHP.Vamos começar falando sobre o Cassandra com PHP.1- Por onde começar?A primeira coisa a fazer é acessar o site do projeto http://cassandra.apache.org e fazer o download do Cassandra. A versão que usei para os testes foi o Cassandra 0.6.3.Passos para baixar e iniciar o Cassandra:- wget http://ftp.unicamp.br/pub/apache/cassandra/0.6.3/apache-cassandra-0.6.3-bin.tar.gz- tar -xzvf apache-cassandra-0.6.3- cd apache-cassandra-0.6.3- ./bin/cassandra -fDepois desses comandos o Cassandra estará funcionando com as configurações padrão. Mas antes de começarmos a usar é necessário entenderemos a estrutura desse banco de dados NoSQL. Pra quem é acostumar com bancos de dados tradicionais, é necessário um pouco de esforço para a quebra de paradígma.2- Conhecendo a estrutura do CassandraO Cassandra é um banco de dados NoSQL e armazena as informações no formato chave = valor, mas para quem está acostumado com bancos de dados tradicionais, tabelas, joins, normalização, etc., é difícil colocar na cabeça que tudo o que você aprendeu a vida toda foi por água abaixo. :)Li vários artigos e tutoriais para entender o esquema de armazenamento e indexação do Cassandra. Um excelente ponto de partida é este artigo: WTF is a SuperColumn? An Intro to the Cassandra Data Model.Pra quem não sabe o que significa WTF: What the fuck... ou seja, que porra é uma supercolumn?!?! :)Com este artigo dá para entender bem o funcionamento do esquema de armazenamento e indexação, por isso, não explicarei detalhadamente como funciona, apenas superficialmente através de exemplo para complementar o artigo citado.De forma bem simplificada:- Column: Armazena chave, valor