SQLite en MQL5: nuevas funciones y pruebas de rendimiento - página 2

 
Vladimir Simakov:
¿Es difícil, en principio, sincronizar el acceso a la misma base de datos desde diferentes programas/terminales? ¿Volvemos a ser ersatz?
No tenemos en absoluto esa tarea por delante.
 
Gracias) valiosa introducción.
Ahora puedes utilizar bases de datos en lugar de archivos para almacenar grandes cantidades de datos.
 
Renat Fatkhullin:
No tenemos esa tarea por delante en absoluto.
¿Por qué no?
 
Renat Fatkhullin:

¿Has visto la tabla de rendimiento de arriba? A menudo es más rápido en MQL5 que en C++.

Por supuesto, todo es multihilo y todo es correcto.

La pregunta se refiere a lo que ocurre si diferentes programas/procesos acceden de forma independiente al mismo archivo de base de datos. No se trata de un programa (MQL5), sino de varios programas independientes que no se conocen entre sí y que no utilizan el mismo manejador de base de datos.

La actuación, sí, es excelente.
Sí, los diferentes procesos en Sqlite probablemente se bloquearán.
Tal vez el manejador de la base de datos debería ser una directiva del preprocesador para cada archivo individual, que debería declararse en cada EA/script,
algo así como el manejador común interno para la base.

 
Renat Fatkhullin:

Dejen de difundir tonterías descaradas sobre "matar a los SSD" por parte de usuarios incompetentes.

Los copiadores de terminal a terminal del mercado se implementan según el principio de actualización de los datos del archivo cada 10 segundos.

No es difícil calcular cuántos registros son por año.

 

Por cierto... recientemente he notado que el portátil va más lento. Limpiado el disco, decidí comprobar cómo se siente el ssd, ya que es una pieza de hardware brillante que no he estudiado mucho. Comprobado que mostraba un 68% de vida útil restante, el portátil tiene poco más de 2 años. Es curioso.

Pero que yo recuerde, el tornillo del husillo podría haber muerto después de 2 años tranquilamente.

Unidad de sistema, todos los archivos de appdata/roaming para MT5 están en otra, no la he comprobado

 
fxsaber:

Los copiadores de terminal a terminal del mercado se implementan según el principio de actualizar los datos del archivo una vez cada 10 segundos.

No es difícil calcular cuántos registros son por año.

Oooh... 1/10 de segundo: qué código más feroz. Dar a la gente un mapeo de archivos nativo con primitivas de sincronización del sistema...
 
Pavel Verveyko:
Gracias) valiosa introducción.
Ahora puedes utilizar bases de datos en lugar de archivos para almacenar grandes cantidades de datos.
Perdón por la pregunta nubia: "¿cuál es la diferencia fundamental? ¿Es más fácil y conveniente clasificarlos? ¿Más espacio? ¿Algo más?
 
Renat Fatkhullin:

Si quieres intercambiar datos entre terminales, ¿qué tal si haces posible conectar un terminal para editar y el otro sólo para leer, como los archivos, todo a través de una memoria súper rápida?

¿sería posible en mql4?
 
La función DatabaseExecute acepta filas para llenar la tabla, pero no puede haber más de 64 filas. Se trata de una limitación de los parámetros de la función. ¿Y si hay más filas? ¿Cómo llenar una tabla grande de forma secuencial?