Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Almacenar datos en JSON en vez de con MySQL

Estas en el tema de Almacenar datos en JSON en vez de con MySQL en el foro de Bases de Datos General en Foros del Web. Hola a todos:) Tengo esta duda que no se si conviene mejor buscar datos en un JSON en vez de con MySQL. Puedo almacenar todos ...
  #1 (permalink)  
Antiguo 19/02/2012, 08:29
Avatar de daffyduck  
Fecha de Ingreso: febrero-2012
Mensajes: 13
Antigüedad: 12 años, 2 meses
Puntos: 1
Almacenar datos en JSON en vez de con MySQL

Hola a todos:)
Tengo esta duda que no se si conviene mejor buscar datos en un JSON en vez de con MySQL. Puedo almacenar todos los datos en una base de datos y cada 1 minuto un crontab genera un archivo JSON con todos los datos de la tabla actualizados.

Luego llamo al archivo, hago lo siguiente: json_decode($file) y busco en los datos...
Esto me parece mejor que estar haciendo continuas peticiones a la base de datos, ¿vosotros que opinais?

Un saludo !
  #2 (permalink)  
Antiguo 19/02/2012, 08:47
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 1 mes
Puntos: 2534
Respuesta: Almacenar datos en JSON en vez de con MySQL

Pésima idea.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 19/02/2012, 08:55
Avatar de daffyduck  
Fecha de Ingreso: febrero-2012
Mensajes: 13
Antigüedad: 12 años, 2 meses
Puntos: 1
Respuesta: Almacenar datos en JSON en vez de con MySQL

Hola, ¿por que una pesima idea? :/
  #4 (permalink)  
Antiguo 19/02/2012, 09:08
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 1 mes
Puntos: 2534
Respuesta: Almacenar datos en JSON en vez de con MySQL

¿Para que crees que sirven las bases de datos?

Piensa un poco hombre, si tener JSON en archivos, parsearlos, cargarlos en memoria e iterarlos intensivamente fuera eficiente entonces ¿para que crees que habrían desarrollado las bases de datos como MySQL?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 19/02/2012, 09:37
Avatar de daffyduck  
Fecha de Ingreso: febrero-2012
Mensajes: 13
Antigüedad: 12 años, 2 meses
Puntos: 1
Respuesta: Almacenar datos en JSON en vez de con MySQL

Bueno, visto asi, tienes razon, pero pense que ocuparia menos tiempo de servidor, ya que no hay que consultarlo ni hacer una conexion a una base de datos.
Gracias por tu aclaracion :)
  #6 (permalink)  
Antiguo 19/02/2012, 11:18
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Almacenar datos en JSON en vez de con MySQL

Cita:
Iniciado por daffyduck Ver Mensaje
Bueno, visto asi, tienes razon, pero pense que ocuparia menos tiempo de servidor, ya que no hay que consultarlo ni hacer una conexion a una base de datos.
Gracias por tu aclaracion :)
Piensa en lo que querías hacer, cada minuto una consulta a la base de datos, haya o no peticiones de usuarios, si hay un rango de horas en el que no hay usuarios activos, tu sistema estaría haciendo peticiones igualmente... crees que eso es optimización?
Otra cosa, cuando ese fichero json tenga 100.000 registros... crees que no le pesará al sistema hacer una búsqueda? mucho más que en una base de datos, si encima esa base de datos tiene índices, la búsqueda es instantánea.
Eso, por decir un par de cosas, que hay más inconvenientes que ventajas (que por otro lado, no le encuentro ninguna por mucho que le de vueltas :))
  #7 (permalink)  
Antiguo 19/02/2012, 16:01
Avatar de daffyduck  
Fecha de Ingreso: febrero-2012
Mensajes: 13
Antigüedad: 12 años, 2 meses
Puntos: 1
Respuesta: Almacenar datos en JSON en vez de con MySQL

Vale, ahora ya si entiendo la diferencia, no tome en cuenta lo de los indices.

De todas formas, me gustaria saber mas sobre MySQL, los indices, y la optimizacion... Ya se que este es otro tema, pero me resultaria interesante saber todo esto. Muchas gracias por vuestras respuestas :)
  #8 (permalink)  
Antiguo 22/02/2012, 19:08
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: Almacenar datos en JSON en vez de con MySQL

daffyduck, según lo que planteas, hay dos temas que deberías analizar:

1. Almacenamiento de los datos, en este caso, una base de datos MySQL vs ficheros del sistema operativo, en general lo mejor es utilizar bases de datos porque tiene ventajas como seguridad, transacciones, mayor velocidad, mejor gestión en el acceso a datos (consultas SQL), etc, y utilizar ficheros cuando tienes poco volumen de datos, consultas de solo lectura, baja concurrencia y el costo de administrar una base de datos (instalación, mantenimiento de tablas, índices y espacio, backup, restore, etc) supera las ventajas. Lo que no se recomienda, como ya te dijeron, es almacenar el mismo dato en dos ubicaciones diferentes.

2. Estructura de los datos almacenados, si utilizas JSON para intercambiar datos entre las capas de la aplicación o como estándar para instanciar los objetos, debes evaluar la forma de almacenar los datos, por ejemplo, un JSON Personas {"id":1,"nom":"Pepe","ape":"Lopez","edad":50}, lo puedes guardar en una tabla Personas (id int, nom varchar(30), ape varchar(30), edad int) donde hay una columna para cada elemento del JSON, o en una tabla Personas (id int, json text) donde todo el JSON se guarda en una sola columna.

Saludos

Etiquetas: almacenar, json, mysql, tabla, vez
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 02:47.