Algunas Consultas

28/12/2009 - 17:04 por Masterx | Informe spam
Hola a todos, tengo algunas consultas:

Tengo una serie de datos que se van almacenando cada x segundos, los datos
ingresados mensualmente son del orden de 2.000.0000 de datos, esta
información es de puntos de GPS entregados por los camiones que andan en
ruta. Mi consulta es, si tengo tal cantidad de información cada mes, como
puedo acceder de manera mas rápida a los datos debido a que actual mente se
tarda en devolver los datos a la pantalla del usuario.

Lo segundo puedo acceder a servicios web o funciones de DLL directo de SQL
server? en relación a esto si hago procesos para analizar los datos cuando
se están insertando en la tabla, esto puede ocasionar que mi servidor me
consuma mucho procesador y memoria. Actualmente tengo una aplicación que
recibe los datos GPRS y esta aplicación los analiza, ¿Mantengo esta
estructura?

Les agradeceré si pueden aportar sus ideas y conocimiento. gracias.

Saludos.

Rodrigo Garcia.

Preguntas similare

Leer las respuestas

#1 Carlos Sacristan
28/12/2009 - 17:25 | Informe spam
Pues depende de cómo accedas a los datos y de la versión y edición de SQL
Server que tengas, así se podrán analizar opciones. Pero no comentas qué es
lo que tarda (si es la consulta, si el procesamiento de los datos, si es
siempre o en momentos puntuales...); tampoco dices cómo se almacena esa
información, algo importante. Se deberían analizar métodos de acceso de la
aplicación, índices, particionamiento, etc... son muchas cosas a analizar y
no se puede dar una respuesta mágica que lo solucione todo.

En cuanto a lo de acceder a dll's desde SQL Server, por poder se podría
(mediante SQLCLR), pero no lo veo mucho sentido. Dependiendo de las
operaciones que se hagan, puede resultar más eficiente hacerlo desde la
aplicación que no intentar que SQL Server haga un trabajo para el que en
principio no fue diseñado.

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"Masterx" wrote in message
news:
Hola a todos, tengo algunas consultas:

Tengo una serie de datos que se van almacenando cada x segundos, los datos
ingresados mensualmente son del orden de 2.000.0000 de datos, esta
información es de puntos de GPS entregados por los camiones que andan en
ruta. Mi consulta es, si tengo tal cantidad de información cada mes, como
puedo acceder de manera mas rápida a los datos debido a que actual mente
se tarda en devolver los datos a la pantalla del usuario.

Lo segundo puedo acceder a servicios web o funciones de DLL directo de SQL
server? en relación a esto si hago procesos para analizar los datos cuando
se están insertando en la tabla, esto puede ocasionar que mi servidor me
consuma mucho procesador y memoria. Actualmente tengo una aplicación que
recibe los datos GPRS y esta aplicación los analiza, ¿Mantengo esta
estructura?

Les agradeceré si pueden aportar sus ideas y conocimiento. gracias.

Saludos.

Rodrigo Garcia.
Respuesta Responder a este mensaje
#2 Masterx
28/12/2009 - 20:00 | Informe spam
Hola Carlos, utilizo SQL Server 2005 en este están todas las bases de la
empresa como SAP, RRHH y otro sistema de GPS.

Los datos están alojados en una sola tabla, con los siguientes datos:

Móvil, fecha/Hora, latitud, longitud, velocidad, RPM, C1, C2, C3, C4, C5,
C6, Llave_Point(Compuesta por Fecha/hora/IdCamion).

Ocupo como índices, móvil y fecha/Hora.

**
La consulta que ejecutan los usuarios es seleccionar los datos de un periodo
de fecha que ellos quieran analizar, ej.,
móvil 2 desde el 02/11/2009 al 06/11/2009, para graficar en un mapa el
recorrido seleccionado.

La segunda consulta son agrupamientos por móvil de excesos de velocidades en
un periodo de tiempo. para análisis de comportamiento de conducción.

Esto toma alrededor de 30 seg. o a veces mas tiempo dependiendo del periodo
de tiempo.
***

Lo del procesamiento me queda claro, lo siguiere realizando de la misma
forma desde la aplicación de captura de datos.




"Carlos Sacristan" escribió en el mensaje de
noticias:
Pues depende de cómo accedas a los datos y de la versión y edición de SQL
Server que tengas, así se podrán analizar opciones. Pero no comentas qué
es lo que tarda (si es la consulta, si el procesamiento de los datos, si
es siempre o en momentos puntuales...); tampoco dices cómo se almacena esa
información, algo importante. Se deberían analizar métodos de acceso de la
aplicación, índices, particionamiento, etc... son muchas cosas a analizar
y no se puede dar una respuesta mágica que lo solucione todo.

En cuanto a lo de acceder a dll's desde SQL Server, por poder se podría
(mediante SQLCLR), pero no lo veo mucho sentido. Dependiendo de las
operaciones que se hagan, puede resultar más eficiente hacerlo desde la
aplicación que no intentar que SQL Server haga un trabajo para el que en
principio no fue diseñado.

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"Masterx" wrote in message
news:
Hola a todos, tengo algunas consultas:

Tengo una serie de datos que se van almacenando cada x segundos, los
datos ingresados mensualmente son del orden de 2.000.0000 de datos, esta
información es de puntos de GPS entregados por los camiones que andan en
ruta. Mi consulta es, si tengo tal cantidad de información cada mes, como
puedo acceder de manera mas rápida a los datos debido a que actual mente
se tarda en devolver los datos a la pantalla del usuario.

Lo segundo puedo acceder a servicios web o funciones de DLL directo de
SQL server? en relación a esto si hago procesos para analizar los datos
cuando se están insertando en la tabla, esto puede ocasionar que mi
servidor me consuma mucho procesador y memoria. Actualmente tengo una
aplicación que recibe los datos GPRS y esta aplicación los analiza,
¿Mantengo esta estructura?

Les agradeceré si pueden aportar sus ideas y conocimiento. gracias.

Saludos.

Rodrigo Garcia.



Respuesta Responder a este mensaje
#3 Carlos Sacristan
29/12/2009 - 09:43 | Informe spam
El nombre de los campos no aporta mucho a la hora de intentar ayudarte.
Mucho más útil sería postear el script de creación de la tabla y sus
índices, así como las consultas que ejecutas.

Por otro lado, ¿has echado un vistazo a los planes de ejecución de esas
consultas costosas? ¿has ejecutado Database Tunning Advisor para analizar lo
que sugiere esta herramienta?

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"Masterx" wrote in message
news:%23ixh4$%
Hola Carlos, utilizo SQL Server 2005 en este están todas las bases de la
empresa como SAP, RRHH y otro sistema de GPS.

Los datos están alojados en una sola tabla, con los siguientes datos:

Móvil, fecha/Hora, latitud, longitud, velocidad, RPM, C1, C2, C3, C4, C5,
C6, Llave_Point(Compuesta por Fecha/hora/IdCamion).

Ocupo como índices, móvil y fecha/Hora.

**
La consulta que ejecutan los usuarios es seleccionar los datos de un
periodo de fecha que ellos quieran analizar, ej.,
móvil 2 desde el 02/11/2009 al 06/11/2009, para graficar en un mapa el
recorrido seleccionado.

La segunda consulta son agrupamientos por móvil de excesos de velocidades
en un periodo de tiempo. para análisis de comportamiento de conducción.

Esto toma alrededor de 30 seg. o a veces mas tiempo dependiendo del
periodo de tiempo.
***

Lo del procesamiento me queda claro, lo siguiere realizando de la misma
forma desde la aplicación de captura de datos.




"Carlos Sacristan" escribió en el mensaje de
noticias:
Pues depende de cómo accedas a los datos y de la versión y edición de SQL
Server que tengas, así se podrán analizar opciones. Pero no comentas qué
es lo que tarda (si es la consulta, si el procesamiento de los datos, si
es siempre o en momentos puntuales...); tampoco dices cómo se almacena
esa información, algo importante. Se deberían analizar métodos de acceso
de la aplicación, índices, particionamiento, etc... son muchas cosas a
analizar y no se puede dar una respuesta mágica que lo solucione todo.

En cuanto a lo de acceder a dll's desde SQL Server, por poder se podría
(mediante SQLCLR), pero no lo veo mucho sentido. Dependiendo de las
operaciones que se hagan, puede resultar más eficiente hacerlo desde la
aplicación que no intentar que SQL Server haga un trabajo para el que en
principio no fue diseñado.

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"Masterx" wrote in message
news:
Hola a todos, tengo algunas consultas:

Tengo una serie de datos que se van almacenando cada x segundos, los
datos ingresados mensualmente son del orden de 2.000.0000 de datos, esta
información es de puntos de GPS entregados por los camiones que andan en
ruta. Mi consulta es, si tengo tal cantidad de información cada mes,
como puedo acceder de manera mas rápida a los datos debido a que actual
mente se tarda en devolver los datos a la pantalla del usuario.

Lo segundo puedo acceder a servicios web o funciones de DLL directo de
SQL server? en relación a esto si hago procesos para analizar los datos
cuando se están insertando en la tabla, esto puede ocasionar que mi
servidor me consuma mucho procesador y memoria. Actualmente tengo una
aplicación que recibe los datos GPRS y esta aplicación los analiza,
¿Mantengo esta estructura?

Les agradeceré si pueden aportar sus ideas y conocimiento. gracias.

Saludos.

Rodrigo Garcia.



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida