|
Esta longa série de colunas (parte 1, parte 2, parte 3, parte 4, parte 5 y parte 6) terá um final aqui. Eu poderia expandir outros elementos da área de trabalho semântica, mas não vou ser capaz de responder aos argumentos que são dados em muitos guias espalhados pela Internet que aconselham sobre as melhores maneiras de desativar a área de trabalho semântica, porque consumiria memória pela peça. |
Não se preocupe, a única maneira de você ter uma captura como a que você vê em um sistema onde o Nepomuk funciona corretamente como o meu, é fazer o mesmo que eu: baixar 1 GB em arquivos PDF de texto que têm 13 milhões de endereços e executar por meio do indexador do Nepomuk (não estou brincando, eu fiz). Também não acho que você lida com PDFs de literalmente milhares de páginas (para meu trabalho como advogado devo lidar com a História da Constituição do Chile, 10 PDFs de 1.200 páginas de texto cada), então, em um sistema configurado corretamente, você deve não ver isso nunca pegar.
Agora vamos ser sérios e técnicos. Não é hora de mais um tutorial sobre “desabilitar o Nepomuk para obter um bom desempenho”, mas sim do primeiro tutorial na Internet sobre “como obter um ótimo desempenho com o Nepomuk ligado”. Prestem atenção.
Pré-requisitos
Talvez isso devesse vir primeiro no meu guia, e sinto muito, mas eu só tive que justificar por que ativar o Nepomuk (que foi o que fiz nas primeiras seis partes) antes de dizer como ativá-lo corretamente. Então, vamos dar uma olhada no que é necessário e depois vamos configurar.
Em primeiro lugar, precisamos ser rigorosos quanto às distribuições que usaremos. Aqui estão os requisitos muito claros: distribuições que gostam de incorporar software obsoleto não funcionam para o KDE, e que infelizmente inclui o Debian. Graças ao enorme trabalho de Rex Dieter, líder da equipe Fedora KDE, existe um conjunto de pacotes com KDE 4.10 para Red Hat Enterprise Linux 6, então se você precisa do KDE e uma distribuição estável como o Stone, a opção é RHEL 6, ou um clone do RHEL 6 como o CentOS, com esse repositório habilitado.
Em segundo lugar, você deve ter cuidado com a forma como o KDE é empacotado, porque o KDE é extremamente sensível a empacotamento de baixa qualidade. Até recentemente, o Kubuntu era notório por cometer erros grotescos de empacotamento, misturando versões não suportadas de pacotes necessários, resultando em uma experiência horrível no Kubuntu e as pessoas se perguntando por que o Nepomuk era tão lento e com fome de memória quando na verdade era culpa do empacotador. A cadeia de transmissão do Nepomuk e Akonadi é esta (usando nomes de projetos de projects.kde.org e versões mais recentes)
kdelibs (4.10.4)
nepomuk-core (4.10.4)
tempo de execução do kde (4.10.4)
widgets nepomuk (4.10.4)
ontologias de desktop compartilhadas (0.10.0)
sopranos (2.9.1)
akonadi (1.9.2)
Atenção aos últimos 3: eles não dependem da versão do KDE usada e devem ser os últimos disponíveis, mesmo quando usando uma versão pontual estável. A regra é: o KDE usa a versão estável mais recente desses pacotes em seu ramo estável e git snapshots em seus ramos beta. Muitos repositórios de atualização extras do KDE atualizam o KDE, mas não esses três últimos pacotes, o que causa sérios problemas.
Somado a isso está o Strigi, recentemente retirado do Nepomuk, que foi uma verdadeira dor de cabeça para todos que tentaram embalá-lo. Novas versões não foram anunciadas corretamente, e o Ubuntu não empacotou novas versões desse programa por um longo tempo, a ponto de eu ter que fazer uma confusão no blog de Sebastian Trüg para consertá-lo. Felizmente, esse problema já passou e o Strigi não é mais atualizado, o que elimina o problema de empacotamento.
Por esse motivo, recomendo o Chakra como uma boa distribuição de índice. Manuel Tortosa, o empacotador KDE para Chakra, sabe de tudo isso e, portanto, a qualidade dos pacotes é boa, e a experiência com Nepomuk e Akonadi, sob Chakra, também é boa. Chakra tem algumas limitações sérias, como não usar como padrão os pacotes que dependem do GTK +, mas é um bom começo.
Além disso, como veremos a seguir, recomendo fortemente uma distribuição que já fez a mudança do MySQL para o MariaDB. Veremos porque mais tarde.
Preparando o terreno
Assim que tivermos certeza de que atendemos a todos os pré-requisitos e contanto que tenhamos um sistema limpo, faremos algumas alterações nas configurações padrão.
Akonadi
Colocaremos as seguintes linhas no arquivo .local / share / akonadi / mysql.conf.
sync_binlog = 1 innodb_flush_log_at_trx_commit = 1
Se este arquivo não existir, iniciaremos o Akonadi para criá-lo e, em seguida, o fecharemos. No console:
akonadictl start akonadictl stop
Por esta? MySQL (ou MariaDB) é o banco de dados que oferece suporte ao Akonadi, e o MySQL não gosta de interrupções repentinas. No caso de qualquer travamento do sistema ou queda de energia, o MySQL introduzirá erros no banco de dados do Akonadi, e esses erros, acumulados, acabarão perturbando o KMail, tornando seu uso insuportavelmente lento. Essas opções significam que cada transação é imediatamente gravada no disco, minimizando os riscos de corrupção do Akonadi no caso de falha ou corrupção do sistema. Esta opção causa erros em certas versões do MySQL, mas funciona muito bem com MariaDB.
Núcleo
Vamos aumentar o monitoramento de arquivos ao limite máximo, para melhorar substancialmente o desempenho do Nepomuk. A seguinte opção no arquivo /etc/sysctl.conf fará o trabalho
fs.inotify.max_user_watches = 524288
Depois dessas duas coisas, vamos ativar o Nepomuk. Isso é feito em Preferências do sistema | Pesquisa na área de trabalho. Vamos manter o uso de memória nas configurações padrão e ativar a indexação de e-mail. Não se esqueça de conferir as dicas na parte 1 sobre como podemos acelerar a indexação, e depois disso… confira o restante dos guias, para aproveitar a área de trabalho semântica!
Manutenção
E se não pudéssemos evitar a corrupção do banco de dados do Akonadi e o Nepomuk estiver lento? Ainda há uma linha de defesa que o KDE 4.10 implementou: o Nepomuk Cleaner, além das ferramentas de auto-limpeza pouco conhecidas que o Akonadi possui.
vácuo de $ akonadictl: "Vácuo" no banco de dados do Akonadi. Por aspiração, seja entendido: todas as entradas que não se refletem em um recurso são removidas.
$akonadictl fsck: Tente consertar as corrupções dos bancos de dados do Akonadi. Isso nem sempre funciona, então você precisa evitar que eles aconteçam. Quão? Com as opções que já vimos.
$nepomukcleaner: É um conjunto de scripts elaborado por Vishesh Handa para limpar o banco de dados do Nepomuk, que ele converteu em uma interface gráfica. Aperte o botão "Iniciar" e esqueça. A execução deste programa é obrigatória se alguém estiver atualizando a versão do KDE.
Com todas as bugigangas, em um sistema de 64 bits e com recursos experimentais do Akonadi, a soma de Nepomuk e Akonadi consome cerca de 350 MB de RAM. Muito para alguns, mas adequado, a meu ver, pela tremenda funcionalidade que é adquirida.
Mas o Nepomuk ainda está lento demais para o meu gosto. Que faço?
Espere um pouco. O KDE 4.11 incorpora aumentos brutais de desempenho para o Nepomuk. Não é nenhum exagero: de acordo com os números de Vishesh Handa, estamos falando de 5 vezes o desempenho do KDE 4.10 na escrita para o banco de dados, e mais de 7 vezes na leitura, tudo isso, em média. As mudanças a serem vistas no KDE 4.11 são massivas e permitirão que o Nepomuk seja usado, finalmente, como uma alternativa para aquelas aplicações que requerem bancos de dados.
Além disso, o bug que impede o lançamento correto do conector Akonadi-Nepomuk já foi corrigido no branch 4.11, e o limpador do Nepomuk verá grandes melhorias. Teremos um novo indexador de arquivos do Office e poderemos desfrutar de outras ferramentas que serão reveladas posteriormente.
Espero que este guia, repito, o único que você encontrará sobre como obter um desempenho espetacular com o Nepomuk ativado, o ajude a ter uma configuração tranquila, permitindo que você faça o que vimos nas edições anteriores e muito, muito mais. Obrigado por me acompanhar em todos esses episódios, e muito obrigado a Pablo Castagnino, por publicar esta série. Te vejo em breve.