Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-09-2010
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 531
Poder: 24
IVAND Va por buen camino
Ya he echo una prueba y me ha salido super bien ... hay un par de cositas q me gustaria q me orientaran , una vez q seguire probando les molestare gracias nuevamente

Tendre q cambiar un par de cositas en la base de datos como claves unicas
__________________
IVAND
Responder Con Cita
  #2  
Antiguo 12-09-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Hola Iván, me alegra que vayas avanzando bien.

Respecto a las claves únicas. Tienes varias opciones.

1) Utilizar un UUID como clave primaria en todas las tablas (Es una solución sencilla, en la que no te tienes que preocupar de más problemas. Yo no la utilizo porqué es incómoda a la hora de trabajar con los datos, si quieres lanzar una consulta para ver todas las líneas de una factura, tendrás que escribir una consulta con una clave secundaria de 16 dígitos).

http://www.firebirdfaq.org/faq98/

NOTA: Estos UUID se guardan en campos varchar(16) con el charset OCTETS.

2) Seguir utilizando un Entero largo, pero en este caso te tienes que asegurar de que no pueden entrar en conflicto los números asignados en las distintas ubicaciones en Replicación.

Para solventar el punto 2) algunos amigos lo han solventado reservando paquetes. Es decir, el primer servidor asignará claves primarias del 1 al 10.000, el segundo servidor del 10.001 al 20.000, etc. ...

A mi me parece muy laborioso, y además tienes que tener en cuenta de que un servidor puede agotar todas las claves primarias que tenía asignadas, y se le ha de asignar un nuevo paquete.

Personalmente he optado por añadir un sufijo a las claves primarias. Es decir todos los claves primarias creadas por el primer servidor acaban en 01, las creadas por el segundo acaban en 02, etc. ...

Para ello tengo una tabla CONFIG, donde se guarda el campo UBICACION (que indica si es el servidor 1, 2, 3, 4, ...).

Asi pués, en el momento de asignar una nueva clave primaria, la calculo de la forma habitual, con un generador, pero mediante una consulta de este estilo :

select gen_id(GENERADOR_TABLA, 1) * 100 + UBICACION
from CONFIG
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #3  
Antiguo 12-09-2010
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 531
Poder: 24
IVAND Va por buen camino
Excelente respuesta

Ya he probado con la replicacion en una via y ademas controlando la coneccion a con la sucursal para evitar q el dato se pierda ... segun el ejemplo q esta en la pagina q me indicas

Segun tu experiencia no es muy pesado este metodo de hacer consultas e ir insertando los datos o es mejor trabajar como dices creando archivos planos o xml y subirlos a un servidor Ftp

Espero sugerencias .... este es un proyecto q debo de entregarlo en unas dos semanas mas o menos , es el tiempo q abriran una nueva sucursal y probaremos este sistema

Nota : Aunque me parece q como solo barre una tabla y de ahi lanza consultas pequenas no deberia tener ningun problema pero pues es mejor preguntar a ver si los tiros van por otra parte y mas eficientemente
__________________
IVAND
Responder Con Cita
  #4  
Antiguo 13-09-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Sinceramente no lo sé.

Yo utilizo el sistema de empaquetar los datos a replicar en un archivo y subirlos por FTP por comodidad, ya que no tengo que andar abriendo puertos en los routers de los servidores en replicación (muchos están en ordenadores de clientes y no tengo acceso a ello ni las contraseñas necesarias). Además no me tengo que preocupar que los servidores en replicación estén activos en un momento determinado, y con conexión a Internet, yo subo los datos por FTP y él ya los leerá cuando pueda.

Pero la verdad es que te complica la programación, no es lo mismo un motor de replicación con todos los servidores en línea, que andar intercambiando paquetes por FTP.

Si te sirve el método de replicar cuando los servidores están en línea (y si te encuentras con que el servidor destino no está en línea, entonces no se replica nada y toda la información queda pendiente para una conexión posterior), yo no me complicaría mucho la vida creando los paquetes por FTP.

Lo que no te puedo decir es el volumen de información que puede tratar un motor de replicación on-line por Internet, puesto que todos sabemos que el protocolo de comunicación de Firebird es poco eficiente, hace muchos viajes de ida y vuelta, y por lo tanto las consultas por Internet son bastante lentas.

Pero en principio no debería ser muy importante, ya que la información tardará más o menos en pasarse, pero siempre se acabará pasando (a menos que el volumen sea tan grande que ni siquiera aprovechando los tiempos en que no se añade nueva información, el motor de replicación no tiene tiempo de ponerse al día).

Lo mejor es probarlo, a ver que tal se comporta y que volumen de información puede absorver (yo no he hecho esta prueba por Internet, ya que desde el principio decidí trabajar desconectado, medianto archivos subidos por FTP). Simplemente recuerda de utilizar la última versión disponible de Servidor de Firebird y de librería cliente (fbclient.dll), puesto que en cada nueva versión de Firebird suelen mejorar bastante el protocolo de comunicación y reducen los viajes de ida y vuelta (que en Internet, dada la gran latencia, son lo que más te perjudica, y no tanto el volumen de información intercambiada) necesarios para lanzar cada consulta.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #5  
Antiguo 13-09-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Mecachis en la mar. ¿ Es normal no poder modificar tus propios mensajes ?.

He querido añadir información respecto a como se haría para intercambiar la información mediante paquetes de datos en archivos que se suben por FTP, y el sistema no me lo ha aceptado porqué he tardado más de 20 minutos en escribirlo, perdiendo todo el texto entrado.

No me apetece volver a escribirlo sin saber siquiera si piensas utilizarlo. Pero si te animas a trabajar con los servidores desconectados, dilo y te explico como lo hago yo.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #6  
Antiguo 13-09-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.670
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por guillotmarc Ver Mensaje
Mecachis en la mar. ¿ Es normal no poder modificar tus propios mensajes ?.
Creo que hay un límite de 30 minutos, se puso porque había gente que se dedicaba a modificar y, sobre todo, a borrar mensajes anteriores dejando totalmente inservibles los hilos.

Antes de abandonar tenías que haber copiado el texto y abrir un nuevo post.


p.d. Casi siempre pagan justos por pecadores, cierto, pero muchas veces no queda más remedio que actuar así. Voy a comentar con los moderadores por si acaso hay alguna opción que permita modificar mensajes a los usuarios que tengan más de un número determinado de mensajes.
Responder Con Cita
  #7  
Antiguo 13-09-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Antes de abandonar tenías que haber copiado el texto y abrir un nuevo post.
No he podido, cuando sale el aviso de que no se puede modificar el post ya no tienes el texto que querías añadir, y al volver para atrás tampoco recuperas el texto que habías modificado.

Gracias por la aclaración.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Sugerencias para nueva aplicación diegofhernando Varios 3 15-04-2009 15:33:49
Sugerencias para pasar XML a Tabla MaMu Varios 0 01-11-2008 01:41:33
sugerencias para generar password torito Varios 7 10-06-2008 19:30:52
Sugerencias para programa 3D... Er_Manué Varios 2 30-10-2006 15:05:22
que usar para hacer replicacion pani_alex Conexión con bases de datos 2 22-04-2006 14:49:25


La franja horaria es GMT +2. Ahora son las 05:43:27.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi