Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-03-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Cita:
Empezado por Kipow Ver Mensaje
Yo estoy trabajando precisamente en un sistema de replicacion propio como el de gillotmarc solo que de forma directa, evaluare la posibilidad de hacerlo con un ftp de por medio.
Si tienes dudas sobre los Logs que hay que crear, o cualquier otro problema, no dudes en consultar.

Haz alguna prueba, para ve si la conexión directa te puede manejar el volumen de actualizaciones que tiene que hacer la replicación, y si no lo ves claro, utiliza el sistema de FTP puesto que en este sistema lo preparas todo en local, de forma muy rápida, y después solo tienes que hacer una única conexión a Internet, donde subes de golpe ese archivo. Te puedo asegurar de que podrás replicar una gran cantidad de datos de esta forma.

No hay mucha diferencia entre hacerlo en conexión directa o por FTP. Simplemente todos los datos de los que hay que hacer un INSERT o UPDATE en el destino, yo los pongo en un ClientDataset, lo guardo en un archivo, y los comprimo todos juntos en un zip.

El Servidor destino solo tiene que descargarse el zip, descomprimirlo y cada archivo es un ClientDataset, lo cargo en Delphi en un ClientDataset y lo recorro en un bucle, haciendo los correspondientes INSERT/UPDATE.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #2  
Antiguo 07-04-2010
Avatar de Kipow
Kipow Kipow is offline
Miembro
 
Registrado: abr 2006
Ubicación: Guatemala
Posts: 329
Poder: 19
Kipow Va por buen camino
Cita:
Empezado por guillotmarc Ver Mensaje
Si tienes dudas sobre los Logs que hay que crear, o cualquier otro problema, no dudes en consultar.

Haz alguna prueba, para ve si la conexión directa te puede manejar el volumen de actualizaciones que tiene que hacer la replicación, y si no lo ves claro, utiliza el sistema de FTP puesto que en este sistema lo preparas todo en local, de forma muy rápida, y después solo tienes que hacer una única conexión a Internet, donde subes de golpe ese archivo. Te puedo asegurar de que podrás replicar una gran cantidad de datos de esta forma.

No hay mucha diferencia entre hacerlo en conexión directa o por FTP. Simplemente todos los datos de los que hay que hacer un INSERT o UPDATE en el destino, yo los pongo en un ClientDataset, lo guardo en un archivo, y los comprimo todos juntos en un zip.

El Servidor destino solo tiene que descargarse el zip, descomprimirlo y cada archivo es un ClientDataset, lo cargo en Delphi en un ClientDataset y lo recorro en un bucle, haciendo los correspondientes INSERT/UPDATE.

Saludos.
Gracias por la ayuda.

Ya tengo hecho la parte de los logs. (triggers configurables por el usuario).
Ya tengo tambien el sistema directo, mi replicacion por el momento solamente funciona en 2 vias de las tiendas a la central (por la IP Publica).
Creo que voy a tener que optar por la opcion de FTP porque precisamente una tienda quedo sin internet por 2 meses y esa carga es demasiado para pasarla de forma directa.
Aun tengo que depurar la aplicacion porque me meti a hacerlo con threads y a veces pela cables (actua de forma extraña). consume demasiada memoria, etc.

Precisamente eso es lo que tengo pensado hacer, utilizar clientdataset, y expotarlos a XML, ya que son unicamnte 3 tablas.

Saludos
Responder Con Cita
  #3  
Antiguo 07-04-2010
Gallosuarez Gallosuarez is offline
Miembro
 
Registrado: feb 2007
Posts: 92
Poder: 18
Gallosuarez Va por buen camino
Question Duda...

Saludos a tod@s l@s foristas:

Hasta ahora, aun no he tenido la necesidad de implementar un sistema donde se requiera replicación... pero creo que en poco tiempo lo voy a tener que hacer. Dándole vueltas a este asunto me salta la siguiente duda: ¿que sucede si tambien quiero replicar mi metadatos?, por lo que entiendo de sus comentarios anteriores las implementaciones que hacen de replicación son solo de datos, ¿es correcta esta aseveración? ¿No se si algunas de las herramientas que mencionan (IB-Replicator, etc), ademas de replicar los datos también lo hacen en los metadatos?

Saludos

Gerardo Suárez Trejo
Responder Con Cita
  #4  
Antiguo 07-04-2010
Avatar de Kipow
Kipow Kipow is offline
Miembro
 
Registrado: abr 2006
Ubicación: Guatemala
Posts: 329
Poder: 19
Kipow Va por buen camino
Que tal Gallosuarez, te comento yo tuve que realizar una aplicacioncita para mantener actualizada tambien la metadata es bien facil ya que contamos en firebird con el IBScript que te permite ejecutar DDL. en la base de datos. Es algo bien sencillo, basta con llevar una bitacora de los cambios a la metadata y ejecutarla en orden en los otros sitios.
Responder Con Cita
  #5  
Antiguo 15-05-2010
paty_rlopez paty_rlopez is offline
Miembro
 
Registrado: ene 2006
Ubicación: Torreón
Posts: 46
Poder: 0
paty_rlopez Va por buen camino
hola

Quisiera saber si alguno de ustedes me puede ayudar

ya instale el fbreplicator
pero no se como asignar las bases de datos.

si me pudieran ayudar con un ejemplo estaria muy agradecida
__________________
Saludos Cordiales
Responder Con Cita
  #6  
Antiguo 20-05-2011
Avatar de Vlady
Vlady Vlady is offline
Miembro
 
Registrado: ago 2005
Posts: 217
Poder: 19
Vlady Va por buen camino
tipos de datos-replicación

tu que desarrollaste el replicador, como hiciste para manejar los diferentes tipos de datos que tienen las claves primarias en una base de datos.
Qué propiedades del campo de firebird puedo utilizar desde delphi para saber si es tipo varchar o integer, y poder realizar las consultas correctamente.

En qué tablas quedan almacenados las columnas y tipos de datos en firebird?

Agradezco sus comentarios

Última edición por Vlady fecha: 20-05-2011 a las 00:38:36.
Responder Con Cita
  #7  
Antiguo 20-05-2011
Avatar de Kipow
Kipow Kipow is offline
Miembro
 
Registrado: abr 2006
Ubicación: Guatemala
Posts: 329
Poder: 19
Kipow Va por buen camino
Código SQL [-]
select A.RDB$FIELD_NAME AS CAMPO, RDB$FIELD_TYPE AS TIPO_DATO
from RDB$RELATION_FIELDS A inner join RDB$FIELDS B on (A.RDB$FIELD_SOURCE = B.RDB$FIELD_NAME)
where (A.RDB$RELATION_NAME = :tabla)
ORDER BY RDB$FIELD_POSITION

y para la llave primaria

Código SQL [-]
select S.rdb$field_name as CAMPO, (select RDB$FIELD_TYPE
                                  from RDB$RELATION_FIELDS A inner join RDB$FIELDS B on (A.RDB$FIELD_SOURCE = B.RDB$FIELD_NAME)
                                  where (A.RDB$RELATION_NAME = i.rdb$relation_name) and (a.rdb$field_name = s.rdb$field_name)) AS TIPO_DATO

from ((rdb$indices i INNER JOIN rdb$index_segments s ON (i.rdb$unique_flag=1 and i.rdb$relation_name=:tabla and s.rdb$index_name=i.rdb$index_name)) INNER JOIN rdb$relation_constraints A
      ON s.rdb$index_name=a.rdb$index_name and rdb$constraint_type = 'PRIMARY KEY')


ORDER BY RDB$FIELD_POSITION
Responder Con Cita
  #8  
Antiguo 23-05-2011
Avatar de Vlady
Vlady Vlady is offline
Miembro
 
Registrado: ago 2005
Posts: 217
Poder: 19
Vlady Va por buen camino
Thumbs up gracias

compañero, muchas gracias por su ayuda!!
Responder Con Cita
Respuesta



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
Replicación de BD Firebird santiago14 Firebird e Interbase 9 03-10-2017 16:43:55
Replicacion Base de Datos Firebird Rockin Firebird e Interbase 8 03-11-2008 21:48:07
REplicación de Base de datos -TRABAJO ENTRE DISTINTOS MOTORES DE BD- voldemmor Oracle 1 27-05-2007 10:41:23
Herramienta case para diccionario de datos de base de datos firebird mcalmanovici Firebird e Interbase 1 11-02-2007 15:17:37
Replicacion de Base de Datos Mardol SQL 1 02-10-2006 20:38:52


La franja horaria es GMT +2. Ahora son las 04:41:47.


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