2008-12-23 10 views
8

Estoy dibujando un espacio en blanco, o como algunos dirían, teniendo un momento de alto nivel. Sé que hay una definición formal y un nombre para el concepto donde una operación db (procedimiento almacenado) que se ejecuta en una base de datos producirá los mismos resultados si se ejecuta de forma repetida.¿Operación de base de datos que se puede aplicar repetidamente y producir los mismos resultados?

Es algo en el género de reflexiva, simétrica, transitiva del matemático, etc.

+0

¿Debería el título indicar "operaciones que se pueden _aplicar_ repetidamente"? Yo lo editaría por ti, pero no estoy seguro de que haya algún otro significado de "respuesta" que desconozco. :-) –

Respuesta

11

Se llama idempotente

+0

Creo que idempotente significa "no cambia nada". Como en GET vs. POST (. Al menos idealmente :)) – dkretz

+1

idempotente se define para significar: f (f (x)) = f (x) para todo x ver los detalles a continuación: http: //www.google.com/search?rlz=1C1GGLS_en-USUS298US304&sourceid=chrome&ie=UTF-8&q=define:idempotent –

1

O quizás determinista.

+0

cuando me ganas por una décima de segundo. Que comiencen las guerras downvote. =) –

+0

Eliminé mi respuesta porque era exactamente la misma que la tuya. sin embargo, ese chico Kibbee (o chica) te pegará por verbosidad. –

+0

Sí, podría haber ganado la carrera de velocidad, pero quería hacer mi respuesta un poco más completa. Por cierto, soy un chico. – Kibbee

1

Estoy bastante seguro de que estás pensando en la obra "Deterministic". Una función es determinista si devuelve la misma respuesta para las mismas entradas todo el tiempo. Una función no es determinista si puede devolver respuestas diferentes para la misma entrada.

14

¿Se refiere a "determinista" - como en siempre devolverá el mismo resultado si se llama con la misma entrada?

O tal vez "idempotent", lo que también significa que llamar a la función nuevamente no tendrá efecto en la base de datos.

7

Creo que lo que estás buscando es Idempotent. Idempotence es una propiedad que se puede aplicar a cualquier tipo de operación (no solo bases de datos). Significa que hacer la operación varias veces más de una vez equivale a hacerlo una vez. Es decir. cada operación posterior después de la primera deja el estado sin cambios.

Por ejemplo, el botón de reproducción en la mayoría de los controles remotos de DVD es idempotente durante la reproducción de un video porque no importa cuántas veces lo presione, se sigue reproduciendo. Sin embargo, un botón de encendido en su control remoto generalmente no es idempotente, ya que enciende y apaga la máquina cada vez. Idempotence es una buena propiedad porque no siempre se debe saber en qué estado se encuentra un sistema antes de iniciar una operación para tratar de producir un estado determinado.

Cuestiones relacionadas