Atlassian. Trabajo en equipo

Deja un comentario

Si trabajamos en equipo siempre es muy útil tener herramientas que nos permitan comunicarnos con los otros miembros del equipo, compartir archivos, realizar video-conferencias, etc.

Algunas aplicaciones tales como Skype, Google Talk, AIM, etc. podrían ser utilizadas con ese objetivo pero están diseñadas para ser utilizadas por el público en general, no para ser utilizadas por un grupo de trabajo que se encarga de desarrollar software.

Hay una empresa, cuyo nombre es Atlassian que nos provee de herramientas altamente especializadas, muy fáciles de utilizar, y muy baratas.

http://www.atlassian.com

Sus productos están enfocados para ser utilizados por personal informático, es decir por personas que se dedican a desarrollar software. Claro que no solamente los desarrolladores de software podrían utilizarlos pero ese es el público al cual se dirigen.

Ventajas

  • Conocimiento centralizado. En lugar de tener el conocimiento esparcido en e-mails y en carpetas compartidas se lo tiene en un solo lugar de fácil acceso para todos
  • Espacio privado. Cada equipo, proyecto, o departamento puede tener su propio espacio, con sus propios permisos de acceso. La información estará bien organizada y será fácilmente accesible
  • Creación de archivos. Que pueden tener varios formatos (Word, Excel, Power Point, PDF, etc.), se podría tener notas de las reuniones, requerimientos de los productos, listas de archivos, planes para los proyectos, etc.
  • Discusiones. Se puede discutir con los colegas y seguirles la pista a los comentarios, ponerles “me gusta”, mencionarlos, etc.
  • Búsquedas. Como todo se encuentra en un solo lugar es muy fácil buscar notas de reuniones, archivos, requerimientos, políticas, o personas
  • Obtener respuestas. Se puede escribir preguntas y obtener las respuestas a dichas preguntas

Productos ofrecidos

En esta página encontrarás todos los productos que la empresa Atlassian tiene para ofrecerte, tendrías que echarle un vistazo porque probablemente encontrarás algunos que te serán de mucha utilidad si trabajas en equipo

https://www.atlassian.com/software

HipChat

Este producto es gratis si será utilizado por un máximo de 5 personas. Sirve para “chatear”. Podrías descargarlo y probarlo.

https://www.atlassian.com/software/hipchat

Vídeo demostrativo

En esta página encontrarás un vídeo (en inglés) que explica para que sirve Confluence, el producto estrella de Atlassian.

https://www.atlassian.com/software/confluence/demo

Conclusión:

Cuando trabajamos en equipo es muy importante tener un comunicación fluida y eficiente con todos los miembros del equipo y además que podamos encontrar rápidamente cualquier cosa que estemos buscando porque solamente provoca malhumor y pérdida de tiempo necesitar un archivo y no encontrarlo en las carpetas compartidas. O saber que alguna vez dijimos o hicimos algo pero no recordar donde lo guardamos.

Los productos de Atlassian (el autor de este blog no tiene relación con ellos, pero le gustan sus productos) pueden facilitarnos grandemente la vida, así que no estaría mal que les eches un vistazo.

Artículo relacionado:

El índice del blog Firebird21

 

Mejorando el rendimiento de las bases de datos (1)

6 comentarios

Si quieres que las operaciones con tu Base de Datos sean muy rápidas entonces hay 6 aspectos fundamentales que debes considerar:

  1. Hardware
  2. Software
  3. Red
  4. Administración
  5. Diseño de la Base de Datos
  6. Programación

El hardware es todo lo relacionado a la parte física de la computadora donde se encuentra el Servidor del Firebird, la conexión de red y las computadoras clientes. Esto engloba a: cantidad de memoria RAM, cantidad de núcleos, cantidad de discos duros, tipos de discos duros, capacidad de los discos duros, tarjetas de red, router, cablerío, etc.

El software se refiere al Sistema Operativo utilizado, el cual siempre debe ser una versión Server. Por ejemplo: Windows Server, Ubuntu Server, FreeBSD, OS X Server, AIX, HP-UX. ¿Por qué? porque las versiones Server están optimizadas para trabajar como servidores de bases de datos. En cambio las versiones “normales” son para los usuarios que quieren ejecutar sus aplicaciones de Contabilidad, de Control del Stock, navegar por Internet, revisar sus e-mail, visitar su Facebook, jugar sus jueguitos, etc. Estas versiones “normales” también pueden usarse como servidores de bases de datos pero no les pidas velocidad porque no están pensadas para eso.

La red está íntimamente relacionada con el hardware y con la administración. Por un lado, debes instalar tarjetas lo más rápidas posibles, jamás usar tarjetas inalámbricas porque degradan la velocidad, tener un router de buena calidad (olvídate totalmente de esos chinitos que cuestan casi lo mismo que una docena de caramelos), usar el cablerío adecuado, asegurarte que la distancia siempre sea al menos un 20% menor a la especificada (por ejemplo 1000BASE-T tiene un alcance de unos 100 metros, no uses más de 80), y por el otro lado asegurarte que la red se use exclusivamente para comunicarse con las bases de datos y para nada más. Si permites que la red la usen también con Internet y los muchachos se dedican a descargar canciones, vídeos y películas, pues no habrá red que te aguante.

La administración se divide en dos partes: una, la correspondiente al Firebird; otra, la correspondiente a las bases de datos. En la correspondiente a Firebird: ¿qué arquitectura estás usando: SuperServer, Classic, SuperClassic? ¿Cuántos núcleos están configurados? ¿en cuál disco guardas los archivos temporales? ¿en cuál disco haces el shadow?. En la correspondiente a la Base de Datos: ¿cuál es el tamaño del caché? ¿cuál es el tamaño de la página? ¿qué valor tienen la OAT y la NT? ¿cuáles son las estadísticas de los índices? ¿cuántos usuarios concurrentes tienes como máximo? ¿el sweep es manual o automático? ¿cada cuánto tiempo se hace un backup con GBAK? ¿hay transacciones que demoran mucho tiempo, cuál es el programa culpable?, etc.

El diseño de la Base de Datos es fundamental para conseguir buenos rendimientos. Aquí deberías preguntarte: ¿están todas las tablas normalizadas? ¿todas las tablas tienen las restricciones que deberían tener? ¿faltan índices para hacer las consultas más rápidas? ¿sobran índices, pues hay algunos que casi nunca se usan? ¿se pueden cambiar las estructuras de algunas tablas para conseguir mayores velocidades en las operaciones? ¿faltaría algún trigger?, etc.

En relación a la programación debes preguntarte: ¿todas las transacciones finalizan con un COMMIT o con un ROLLBACK? ¿están todas las consultas optimizadas?  ¿Hay momentos en los cuáles se realizan inserciones masivas de datos? ¿se pueden hacer transacciones más cortas?, ¿se puede reemplazar un stored procedure por otro más rápido?, ¿se puede reemplazar una vista por otra más rápida (quizás usando tablas temporales, tablas CTE, etc.)?, ¿se puede mejorar la velocidad de las inserciones masivas de datos?, etc.

Conclusión:

Como puedes ver, conseguir un rendimiento óptimo de las bases de datos no es sencillo porque involucra a muchos aspectos diferentes. Si mejoras cualquiera de ellos entonces verás un aumento en las velocidades pero para llegar al máximo debes mejorarlos a todos. Claro, eso tomará tiempo y dinero así que debes evaluar si vale la pena hacer el trabajo de optimización.

Artículos relacionados:

¿Cuál Sistema Operativo usar en el Servidor?

Consejos para optimizar el rendimiento de las bases de datos

Consultas lentas, causas y soluciones

El índice del blog Firebird21