Pregunta

estoy revisando mi código y darse cuenta de que gasto una enorme cantidad de tiempo

  1. teniendo filas de una base de datos,
  2. el formato como XML,
  3. AJAX llegar al navegador, y luego
  4. convertir de nuevo en un hash Javascript objeto como mi almacén de datos local.

En las actualizaciones, tengo que invertir el proceso (excepto el uso de la POST en lugar de XML.)

Tras haber empezado a buscar en Redis, estoy pensando que puedo ahorrar una enorme cantidad de tiempo, mantener los objetos en un almacén de claves-valor en el servidor y sólo usar JSON para transferir directamente al cliente JS. Pero mi mente débil no puede anticipar lo que estoy renunciando al dejar una base de datos SQL (es decir, tengo miedo de renunciar a la GROUP BY / TIENE consultas)

Para obtener los datos de mi, que tengo:

  • muchas-muchas relaciones, es decir, OBJ-tags, OBJ-grupos, etc.
  • objetos de consulta por una combinación de tales etiquetas, es decir, donde IN ( 'a', 'b', 'c') y el grupo de ( 'x', 'y')
  • auto se une, es decir, todas las etiquetas para cada objeto donde tag = 'a' (sql GROUP_CONCAT ())
  • una gran cantidad de combinaciones externas, es decir OUTER JOIN calificación EN o.id = rating.obj_id
  • y alimentos, que parecen ser un punto fuerte en SRID

¿Cómo se puede mezclar con éxito clave-valor y SQL DB?

Por ejemplo, es práctico para unirse a una larga lista de obj.Ids de un SRID conjunto con datos SQL mediante una consulta SQL GAMA (es decir, donde obj.id EN (1,4,6,7,8,34,876,9879 , 567345, ...), o viceversa?

ideas / sugerencias son bienvenidos.

¿Fue útil?

Solución

Es posible que desee echar un vistazo a MongoDB . Se trabaja con objetos de estilo JSON, y viene con SQL como la indexación y consulta. Redis es más adecuado para almacenar estructuras de datos le gusta, listas y conjuntos, cuando se desea una búsqueda sencilla en lugar de una consulta compleja.

Otros consejos

Ahora que el problema real es más definido (es decir, que pasa mucho tiempo escribiendo código de conversión repetitivo para pasar de una capa / representación a la siguiente) tal vez usted podría considerar la escritura (o googlear) algo que automatiza esto, tal vez ?

de Google devuelve un montón de resultados para "convertir la tabla a XML" (y al revés), haría esta ayuda? Sería algo va directamente de la tabla de pares clave / valor será mejor? ¿Usted ha intentado abordar este problema de una manera generalizada?

Cuando se dice "Me paso una enorme cantidad de tiempo" Qué quiere decir esto es una gran cantidad de tiempo de desarrollo, o se está refiriendo al tiempo de cálculo?

En lo personal me gustaría tener cuidado de no mezclar un RDBMS con una solución no RDBMS, ya que esto probablemente va a crear problemas cuando los dos paradigmas diferentes choque.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top