ES2809163T3 - Procedimiento y dispositivo de procesamiento de datos - Google Patents

Procedimiento y dispositivo de procesamiento de datos Download PDF

Info

Publication number
ES2809163T3
ES2809163T3 ES17759146T ES17759146T ES2809163T3 ES 2809163 T3 ES2809163 T3 ES 2809163T3 ES 17759146 T ES17759146 T ES 17759146T ES 17759146 T ES17759146 T ES 17759146T ES 2809163 T3 ES2809163 T3 ES 2809163T3
Authority
ES
Spain
Prior art keywords
attribute
target
storage field
target attribute
personal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES17759146T
Other languages
English (en)
Inventor
Jie Peng
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Application granted granted Critical
Publication of ES2809163T3 publication Critical patent/ES2809163T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • G06F16/213Schema design and management with details for schema evolution support

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Storage Device Security (AREA)

Abstract

Un procedimiento de procesamiento de datos, donde el procedimiento comprende: obtener un identificador de usuario, un identificador de atributo y un valor de atributo de al menos un atributo personal correspondiente al identificador de usuario (S101); para cada uno de los al menos un atributo personal, generar una correspondencia de atributo objetivo del atributo personal en función del identificador de atributo y el valor de atributo del atributo personal (S102); determinar si un campo de almacenamiento de atributo objetivo correspondiente al identificador de usuario existe en primeras correspondencias almacenadas entre identificadores de usuario y campos de almacenamiento de atributo (S103); y o bien a) almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al identificador de usuario existe en las primeras correspondencias (S104), donde almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo objetivo comprende determinar si el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo (S201), y o bien i) almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo objetivo cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo (S202), o ii) crear al menos un nuevo campo de almacenamiento de atributo correspondiente al identificador de usuario cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es mayor que el espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo (S203) y almacenar todas las correspondencias de atributo objetivo en el nuevo campo de almacenamiento de atributo o en el campo de almacenamiento de atributo objetivo y el nuevo campo de almacenamiento de atributo (S204), o b) cuando ningún campo de almacenamiento de atributo objetivo correspondiente al identificador de usuario existe en las primeras correspondencias, crear un campo de almacenamiento de atributo correspondiente al identificador de usuario (S105) y almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo creado (S106).

Description

DESCRIPCIÓN
Procedimiento y dispositivo de procesamiento de datos
CAMPO TÉCNICO
Esta solicitud se refiere al campo de las tecnologías de Internet y, en particular, a un procesamiento y dispositivo de procesamiento de datos.
ANTECEDENTES
Con el rápido desarrollo de las tecnologías de Internet, las personas optan cada vez más por disfrutar de diversos servicios útiles en Internet. En lo que respecta a los proveedores de servicios, la manera de proporcionar a los usuarios servicios precisos en áreas específicas es un factor importante para obtener el reconocimiento de los usuarios. Para satisfacer las necesidades individuales de los usuarios y proporcionar a los usuarios servicios precisos, es necesario recopilar atributos personales de los usuarios y almacenar estos atributos, de modo que se pueda proporcionar a los usuarios servicios precisos de acuerdo con los atributos personales de los usuarios.
Los atributos personales incluyen algunos de los hábitos de comportamiento del usuario, preferencias de interés, requisitos de personalización, etc. Por ejemplo, los atributos personales incluyen un procedimiento de pago preferido del usuario, el número de cuenta de pago preferido del usuario, la categoría de producto en la que está interesado el usuario, la tienda visitada con frecuencia por el usuario y el número de cuenta de inicio de sesión por defecto del usuario.
Un atributo personal del usuario incluye un nombre de atributo del atributo personal y un valor de atributo del atributo personal. Por ejemplo, el nombre de atributo de un atributo personal del usuario es "procedimiento de pago por defecto" y el valor de atributo es "pago en línea". Como otro ejemplo, el nombre de atributo de otro atributo personal del usuario es "categoría del producto de interés" y el valor de atributo es "electrodoméstico digital".
Actualmente, en la tecnología existente, los atributos personales del usuario se almacenan generalmente en el procedimiento mostrado en la Tabla 1 que se presenta a continuación. Cada campo de la columna situada más a la izquierda en la Tabla 1 almacena un ID() de cada usuario, por ejemplo, del usuario A al usuario M, respectivamente; cada campo de la fila superior de la Tabla 1 almacena el nombre de atributo de cada atributo personal recopilado con antelación por el técnico; por ejemplo, se almacenan, respectivamente, del nombre de atributo 1 al nombre de atributo N. La Tabla 1 incluye un total de (M+1 )*(N+1) campos.
Cuando es necesario almacenar un valor de atributo de un atributo personal de un determinado usuario en la Tabla 1, en la Tabla 1 se busca la fila en la que está ubicado el ID de usuario del usuario y la columna en la que está ubicado el nombre de atributo del atributo personal. A continuación, se determina el campo ubicado tanto en la fila encontrada como en la columna encontrada y el campo es rellenado con el valor de atributo del atributo personal.
En la Tabla 1, si el campo en una fila en la que está ubicado un ID de usuario y en una columna en la que está ubicado un nombre de atributo es un campo vacío, esto indica que el usuario correspondiente al ID de usuario no tiene el atributo personal correspondiente al nombre de atributo.
Tabla 1
Figure imgf000002_0001
En un proceso de implementación de esta solicitud, los inventores consideran que al menos existe la siguiente desventaja en las soluciones de las tecnologías relacionadas:
Hay varios atributos personales recopilados con antelación por los técnicos y, por lo tanto, habrá muchos campos incluidos en la primera fila de la Tabla 1 pero, en ocasiones, los atributos personales de diferentes usuarios tienen muchas diferencias y un bajo nivel de coincidencia, y los atributos personales de cada usuario solo suponen una pequeña parte de todos los atributos personales recopilados con antelación por los técnicos. Como resultado, solo algunos campos de una fila correspondiente a un ID de usuario pueden rellenarse con los valores de atributo y otros campos son campos totalmente vacíos. De este modo, habrá un elevado número de campos vacíos en la Tabla 1 y, dado que los campos vacíos ocupan una determinada cantidad de espacio de almacenamiento, muchos campos vacíos en la Tabla 1 ocuparán una gran cantidad de espacio de almacenamiento.
El documento US 2015/169895A1 describe un sistema para anonimizar datos. Los conjuntos de datos a anonimizar incluyen una parte relacional y una parte secuencial. Cada uno de estos tipos de datos puede anonimizarse usando técnicas de anonimización k y ofrece protección de privacidad a personas o entidades contra atacantes cuyo conocimiento abarca los dos tipos de datos de atributo.
RESUMEN
Para mitigar los problemas de las tecnologías relacionadas, la presente divulgación proporciona un procedimiento y dispositivo de procesamiento de datos.
La presente invención se refiere al procedimiento definido en la reivindicación 1. Las reivindicaciones dependientes describen formas de realización ventajosas de la presente invención.
Las soluciones técnicas proporcionadas en las implementaciones de la presente divulgación tienen los siguientes efectos beneficiosos:
En las implementaciones de la presente divulgación, se obtiene un ID de usuario así como un identificador, ID, de atributo y un valor de atributo de al menos un atributo personal correspondiente al ID de usuario; para cada uno de los atributos personales se genera una correspondencia de atributo objetivo del atributo personal en función del ID de atributo y el valor de atributo del atributo personal; se determina si un campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en primeras correspondencias almacenadas entre ID de usuario y campos de almacenamiento de atributo; y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias; de forma alternativa, un campo de almacenamiento de atributo correspondiente al ID de usuario se crea cuando ningún campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias, y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo creado.
La estructura de almacenamiento en la tecnología existente se abandona en la implementación de la presente divulgación. En primer lugar, no hay ningún campo vacío, lo que evita el problema de malgastar espacio de almacenamiento para campos vacíos y consigue el objetivo de ahorrar espacio de almacenamiento. Además, en la tecnología existente, solo se almacena un valor de atributo en cada campo. Sin embargo, en las implementaciones de la presente divulgación, una pluralidad de correspondencias de atributo se almacenan en un campo de almacenamiento de atributo, y cada correspondencia de atributo incluye un valor de atributo. Por tanto, en comparación con la tecnología existente, en las implementaciones de la presente divulgación, una pluralidad de valores de atributo se almacenan en un campo de almacenamiento de atributo, y el espacio de almacenamiento en un campo de almacenamiento de atributo se utiliza por completo, lo que ahorra espacio de almacenamiento.
Además, con el rápido desarrollo de las empresas de servicios, surge una variedad ilimitada de necesidades personalizadas del usuario. Por lo tanto, con frecuencia es necesario crear nuevos atributos personales. En este caso, en la tecnología existente, es necesario añadir un campo en el lado situado más a la derecha de la primera fila de la Tabla 1, y el nombre de atributo del nuevo atributo personal se añade al campo recién añadido. A continuación, es necesario añadir un nuevo campo en el lado situado más a la derecha de la fila de cada ID de usuario en la Tabla 1 de modo que cuando un usuario tenga el nuevo atributo personal, el campo recién añadido en el lado situado más a la derecha de la fila en la que está ubicado el ID de usuario se rellene con el valor de atributo del atributo personal.
Sin embargo, en este caso, no todos los usuarios correspondientes a los ID de usuario en la Tabla 1 tienen el nuevo atributo personal y, por consiguiente, no se rellenarán con valores de atributo los campos recién añadidos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario, lo que da lugar a que algunos campos estén vacíos y a que se malgaste espacio de almacenamiento en menor o mayor medida.
Además, en el proceso de añadir nuevos campos a la Tabla 1, es necesario bloquear la Tabla 1 y, en el estado bloqueado, la Tabla 1 no puede usarse. Cuando hay una gran cantidad de ID de usuario almacenados en la Tabla 1, es decir, hay un gran número de filas en la Tabla 1, el añadir nuevos campos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario requerirá mucho tiempo. Como resultado, la Tabla 1 no puede usarse durante mucho tiempo, lo que impide proporcionar a los usuarios servicios precisos durante un largo periodo de tiempo. Sin embargo, en la implementación de la presente divulgación, incluso si se desarrolla un nuevo atributo personal, no es necesario asignar un campo al nuevo atributo personal que se ha desarrollado, y no es necesario bloquear los atributos personales almacenados, de modo que puede proporcionarse constantemente servicios precisos a los usuarios. Además, no es necesario asignar campos a los nuevos atributos personales que se han desarrollado y, en consecuencia, no habrá campos vacíos, lo que mitiga el problema de malgastar espacio de almacenamiento.
Debe entenderse que la anterior descripción general y la siguiente descripción detallada son simplemente ejemplos y no imponen ninguna limitación en la presente divulgación.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
Los dibujos adjuntos, que se incorporan en y forman parte de la presente memoria descriptiva, ilustran implementaciones acordes con la presente divulgación y, junto con la descripción, sirven para explicar los principios de la presente divulgación.
La FIG. 1 es un diagrama de flujo que ilustra un procedimiento de procesamiento de datos de acuerdo con una implementación.
La FIG. 2 es un diagrama de flujo que ilustra un procedimiento de procesamiento de datos de acuerdo con una implementación.
La FIG. 3 es un diagrama de flujo que ilustra un procedimiento de procesamiento de datos de acuerdo con una implementación.
La FIG. 4 es un diagrama de flujo que ilustra un procedimiento de procesamiento de datos de acuerdo con una implementación.
La FIG. 5 es un diagrama de bloques que ilustra un dispositivo de procesamiento de datos de acuerdo con una implementación.
La FIG. 6 es un diagrama de bloques que ilustra un dispositivo de procesamiento de datos de acuerdo con una implementación.
DESCRIPCIÓN DE IMPLEMENTACIONES
Las implementaciones se describen en detalle en el presente documento, y los ejemplos de las implementaciones se presentan en los dibujos adjuntos. Cuando la siguiente descripción hace referencia a los dibujos adjuntos, los mismos números en diferentes dibujos adjuntos representan elementos idénticos o similares, a no ser que se especifique lo contrario. Las implementaciones descritas a continuación no representan todas las implementaciones acordes con la presente divulgación. Por el contrario, las implementaciones son solo ejemplos de dispositivos y procedimientos que se describen en detalle en las reivindicaciones adjuntas y acordes con algunos aspectos de la presente divulgación.
La FIG. 1 es un diagrama de flujo que ilustra un procedimiento de procesamiento de datos de acuerdo con una implementación. Como se muestra en la FIG. 1, el procedimiento incluye las siguientes etapas.
Etapa S101: Obtener un identificador (ID) de usuario así como un identificador (ID) de atributo y un valor de atributo de al menos un atributo personal correspondiente al ID de usuario.
El ID de usuario puede ser un número de cuenta del usuario. Por ejemplo, el usuario puede registrar con antelación una cuenta de usuario en el servidor, y el ID de usuario puede ser el número de cuenta de la cuenta de usuario.
El ID de atributo del atributo personal puede ser el nombre del atributo personal, por ejemplo, "procedimiento de pago por defecto" y "número de cuenta de pago por defecto", etc.
Cuando el nombre del atributo personal es "procedimiento de pago por defecto", el valor de atributo del atributo personal puede ser "pago en línea" o "pago contra reembolso".
Cuando el nombre del atributo personal es "número de cuenta de pago por defecto", el valor de atributo del atributo personal puede ser un número de cuenta, por ejemplo "273356214" o "178549624".
Cuando el nombre del atributo personal es "categoría del producto de interés", el valor de atributo del atributo personal puede ser "electrodoméstico digital", "alimento" o "calzado/mochila", etc.
En la implementación de la presente divulgación, cuando el servidor almacena atributos personales de un determinado usuario por primera vez, el servidor puede obtener el ID de usuario del usuario, así como el ID de atributo y el valor de atributo de cada atributo personal del usuario, a partir de la cuenta de usuario del usuario.
A continuación, después de que el usuario inicie sesión en el servidor usando su propio ID de usuario en su propio dispositivo terminal de usuario, si el usuario actualiza el valor de atributo correspondiente al ID de atributo de uno o más atributos personales existentes en la propia cuenta del usuario, el dispositivo terminal obtiene el ID de usuario del usuario, el ID de atributo del uno o más atributos personales actualizados, y el valor de atributo correspondiente a cada ID de atributo de los uno o más atributos personales actualizados, y después envía el ID de usuario, el ID de atributo y el valor de atributo obtenidos al servidor. El servidor recibe el ID de usuario, el ID de atributo y el valor de atributo enviados por el dispositivo terminal.
Después de que el usuario inicie sesión en el servidor usando su propio ID de usuario en su propio dispositivo terminal de usuario, si el usuario añade un ID de atributo de uno o más nuevos atributos personales y el valor de atributo correspondiente a cada nuevo ID de atributo a la propia cuenta del usuario, el dispositivo terminal obtiene el ID de usuario del usuario, el ID de atributo de cada nuevo atributo personal, y el valor de atributo correspondiente al ID de atributo de cada nuevo atributos personal, y después envía el ID de usuario, el ID de atributo y el valor de atributo obtenidos al servidor. El servidor recibe el ID de usuario, el ID de atributo y el valor de atributo enviados por el dispositivo terminal.
Etapa S102. Para cada uno de los atributos personales, generar una correspondencia de atributo objetivo del atributo personal en función del ID de atributo y el valor de atributo del atributo personal.
En una implementación de la presente divulgación, para cada uno de los atributos personales, puede establecerse la correspondencia de atributo objetivo entre el ID de atributo del atributo personal y el valor de atributo del atributo personal. La correspondencia de atributo objetivo incluye el ID de atributo del atributo personal y el valor de atributo del atributo personal. El ID de atributo del atributo personal y el valor de atributo del atributo personal pueden formar un par clave-valor. La operación se ejecuta para cada atributo personal.
En el par clave-valor, la "clave" se usa para representar el ID de atributo del atributo personal, el "valor" se usa para representar el valor de atributo del atributo personal y el ID de atributo y el valor de atributo se conectan usando un primer identificador predeterminado. El primer identificador predeterminado puede ser "=", "-" o "+", etc., el cual no está limitado en la presente divulgación.
Por ejemplo, si el ID de atributo del atributo personal es "procedimiento de pago por defecto" y el valor de atributo del atributo personal es "pago en línea", entonces la correspondencia de atributo objetivo puede ser "procedimiento de pago por defecto = pago en línea".
En la implementación anterior, el ID de atributo del atributo personal es normalmente el nombre del atributo personal, por ejemplo, "procedimiento de pago por defecto", "número de cuenta de pago por defecto" y "categoría del producto de interés". Sin embargo, el nombre del atributo personal incluye normalmente muchos caracteres y, por consiguiente, el ID de atributo del atributo personal ocupa una gran cantidad de espacio de almacenamiento. Puesto que la correspondencia de atributo incluye el ID de atributo del atributo personal, la correspondencia de atributo ocupa una cantidad relativamente grande de espacio de almacenamiento si el ID de atributo ocupa una gran cantidad de espacio de almacenamiento.
La presente divulgación tiene como objetivo almacenar el mayor número posible de correspondencias de atributo en un campo de almacenamiento de atributo. Sin embargo, el espacio de almacenamiento total de un campo de almacenamiento de atributo es limitado. Por lo tanto, en caso de que la correspondencia de atributo ocupe un espacio de almacenamiento relativamente grande, el número de correspondencias de atributo que puede almacenarse en un campo de almacenamiento de atributo es menor.
Para almacenar más correspondencias de atributo en un campo de almacenamiento de atributo, en otra implementación de la presente divulgación, un identificador (ID) de índice puede asignarse con antelación a cada atributo personal. Diferentes ID de índice se asignan a diferentes atributos personales. El espacio de almacenamiento ocupado por el ID de atributo de cada atributo personal es más pequeño que el espacio de almacenamiento ocupado por el ID de índice asignado al ID de atributo del atributo personal.
A continuación, el ID de atributo de cada atributo personal y el ID de índice asignado al atributo personal se almacenan en las segundas correspondencias entre ID de atributo e ID de índice de índices de secuencia.
Hay un orden de índice predeterminado entre todos los ID de índice asignados. Por ejemplo, los ID de índice son números numéricos, tales como 1,2, 3, 4 y 5, etc., y los números numéricos están dispuestos en orden ascendente.
De este modo, en otra implementación de la presente divulgación, generar una correspondencia de atributo objetivo del atributo personal en función del ID de atributo y el valor de atributo del atributo personal puede ser como sigue:
Para cualquier atributo personal se obtienen las segundas correspondencias almacenadas entre los ID de atributo y los ID de índice de índices de secuencia, en las segundas correspondencias se busca un ID de índice correspondiente a un ID de atributo del atributo personal, y se establece una correspondencia de atributo objetivo entre el ID de índice y el valor de atributo del atributo personal de modo que la correspondencia de atributo objetivo del atributo personal pueda generarse en función del ID de atributo y el valor de atributo del atributo personal. La correspondencia de atributo objetivo incluye el ID de índice correspondiente al ID de atributo del atributo personal y el valor de atributo del atributo personal. El ID de índice correspondiente al ID de atributo del atributo personal y al valor de atributo del atributo personal pueden formar un par clave-valor. La operación se ejecuta para cada atributo personal.
En el par clave-valor, la "clave" se usa para representar el ID de índice correspondiente al ID de atributo del atributo personal, el "valor" se usa para representar el valor de atributo del atributo personal y el ID de índice y el valor de atributo se conectan usando un primer identificador predeterminado. El primer identificador predeterminado puede ser "=", "-" o "+", etc., el cual no está limitado en la presente divulgación.
Por ejemplo, si el ID de atributo del atributo personal es "procedimiento de pago por defecto", el valor de atributo del atributo personal es "pago en línea" y el ID de índice correspondiente al ID de atributo del atributo personal es 1, entonces la correspondencia de atributo objetivo puede ser "1 = pago en línea".
Etapa S103: determinar si un campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en primeras correspondencias almacenadas entre ID de usuario y campos de almacenamiento de atributo.
En cuanto a cualquier usuario que registra una cuenta en el servidor, cuando el servidor almacena la correspondencia de atributo del usuario por primera vez, un campo de almacenamiento de atributo correspondiente al ID de usuario se establece en las primeras correspondencias entre los ID de usuario y los campos de almacenamiento de atributo. Entonces, la correspondencia de atributo del usuario se almacena en el campo de almacenamiento de atributo. En la implementación de la presente divulgación, si un nuevo atributo personal del usuario se añade posteriormente, después de generarse una nueva correspondencia de atributo del nuevo atributo personal en función del ID de atributo y el valor de atributo del nuevo atributo personal, la nueva correspondencia de atributo procede a ser almacenada en el campo de almacenamiento de atributo. Lo mismo se aplica al resto de usuarios que registran una cuenta con el servidor.
Después de generarse la correspondencia de atributo objetivo, es necesario determinar si el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias almacenadas entre ID de usuario y campos de almacenamiento de atributo.
Si existe el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario, la correspondencia de atributo objetivo puede almacenarse directamente en el campo de almacenamiento de atributo objetivo.
Si el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario no existe, esto indica que la correspondencia de atributo del usuario no se ha almacenado todavía, es decir, no se ha almacenado ningún campo de almacenamiento de atributo correspondiente al ID de usuario. En este caso, el campo de almacenamiento de atributo correspondiente al ID de usuario tiene que crearse en las primeras correspondencias y, a continuación, la correspondencia de atributo objetivo puede almacenarse en el campo de almacenamiento de atributo creado.
Etapa S104: Almacenar todas las correspondencias de atributo objetivo en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias.
Etapa S105: Crear un campo de almacenamiento de atributo correspondiente al ID de usuario cuando ningún campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias, y ejecutar la etapa S106.
Etapa S106: Almacenar todas las correspondencias de atributo objetivo en el campo de almacenamiento de atributo creado.
En la implementación mostrada en la FIG. 1 de la presente divulgación, se obtiene un ID de usuario así como un ID de atributo y un valor de atributo de al menos un atributo personal correspondiente al ID de usuario; para cada uno de los atributos personales se genera una correspondencia de atributo objetivo del atributo personal en función del ID de atributo y el valor de atributo del atributo personal; se determina si un campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en primeras correspondencias almacenadas entre ID de usuario y campos de almacenamiento de atributo; y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias; de forma alternativa, un campo de almacenamiento de atributo correspondiente al ID de usuario se crea cuando ningún campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias, y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo creado.
La estructura de almacenamiento en la tecnología existente se abandona en la implementación de la presente divulgación. En primer lugar, no hay ningún campo vacío, lo que evita el problema de malgastar espacio de almacenamiento para campos vacíos y consigue el objetivo de ahorrar espacio de almacenamiento. Además, en la tecnología existente, solo se almacena un valor de atributo en cada campo. Sin embargo, en las implementaciones de la presente divulgación, una pluralidad de correspondencias de atributo se almacenan en un campo de almacenamiento de atributo, y cada correspondencia de atributo incluye un valor de atributo. Por tanto, en comparación con la tecnología existente, en las implementaciones de la presente divulgación, una pluralidad de valores de atributo se almacenan en un campo de almacenamiento de atributo, y el espacio de almacenamiento en un campo de almacenamiento de atributo se utiliza por completo, lo que ahorra espacio de almacenamiento.
Además, con el rápido desarrollo de las empresas de servicios, surge una variedad ilimitada de necesidades personalizadas del usuario. Por lo tanto, con frecuencia es necesario crear nuevos atributos personales. En este caso, en la tecnología existente, es necesario añadir un campo en el lado situado más a la derecha de la primera fila de la Tabla 1, y el nombre de atributo del nuevo atributo personal se añade al campo recién añadido. A continuación, es necesario añadir un nuevo campo en el lado situado más a la derecha de la fila de cada ID de usuario en la Tabla 1 de modo que cuando un usuario tenga el nuevo atributo personal, el campo recién añadido en el lado situado más a la derecha de la fila en la que está ubicado el ID de usuario se rellene con el valor de atributo del atributo personal.
Sin embargo, en este caso, no todos los usuarios correspondientes a los ID de usuario en la Tabla 1 tienen el nuevo atributo personal y, por consiguiente, no se rellenarán con valores de atributo los campos recién añadidos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario, lo que da lugar a que algunos campos estén vacíos y a que se malgaste espacio de almacenamiento en menor o mayor medida.
Además, en el proceso de añadir nuevos campos a la Tabla 1, es necesario bloquear la Tabla 1 y, en el estado bloqueado, la Tabla 1 no puede usarse. Cuando hay una gran cantidad de ID de usuario almacenados en la Tabla 1, es decir, hay un gran número de filas en la Tabla 1, el añadir nuevos campos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario requerirá mucho tiempo. Como resultado, la Tabla 1 no puede usarse durante mucho tiempo, lo que impide proporcionar a los usuarios servicios precisos durante un largo periodo de tiempo. Sin embargo, en la implementación de la presente divulgación, incluso si se desarrolla un nuevo atributo personal, no es necesario asignar un campo al nuevo atributo personal que se ha desarrollado, y no es necesario bloquear los atributos personales almacenados, de modo que puede proporcionarse constantemente servicios precisos a los usuarios. Además, no es necesario asignar campos a los nuevos atributos personales que se han desarrollado y, en consecuencia, no habrá campos vacíos, lo que mitiga el problema de malgastar espacio de almacenamiento.
En otra implementación de la presente divulgación, con referencia a la FIG. 2, la etapa S104 incluye lo siguiente:
Etapa S201: Determinar si el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo.
En la implementación de la presente divulgación, cada carácter ocupa una unidad de espacio de almacenamiento y cada correspondencia de atributo incluye una pluralidad de caracteres. Por lo tanto, cada correspondencia de atributo ocupa una determinada cantidad de espacio de almacenamiento. Puesto que el espacio de almacenamiento disponible de un campo de almacenamiento de atributo es limitado, cuando una correspondencia de atributo tiene que almacenarse en un campo de almacenamiento de atributo, debe satisfacerse una condición objetiva: el espacio de almacenamiento ocupado por la correspondencia de atributo es menor que o igual al espacio de almacenamiento disponible del campo de almacenamiento de atributo. Solo cuando se satisface la condición, la correspondencia de atributo puede almacenarse con éxito en el campo de almacenamiento de atributo. En caso contrario, si el espacio de almacenamiento ocupado por la correspondencia de atributo es mayor que el espacio de almacenamiento disponible del campo de almacenamiento de atributo, la correspondencia de atributo no puede almacenarse con éxito en el campo de almacenamiento de atributo.
Asimismo, cuando es necesario almacenar una pluralidad de correspondencias de atributo en un campo de almacenamiento de atributo, también se requiere determinar si el espacio de almacenamiento ocupado por la pluralidad de correspondencias de atributo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo.
Etapa S202: Almacenar todas las correspondencias de atributo objetivo en el campo de almacenamiento de atributo objetivo cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo.
Cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo, esto indica que el campo de almacenamiento de atributo objetivo puede alojar todas las correspondencias de atributo objetivo y, por lo tanto, todas las correspondencias de atributo objetivo pueden almacenarse directamente en el campo de almacenamiento de atributo objetivo.
Etapa S203: Crear al menos un nuevo campo de almacenamiento de atributo correspondiente al ID de usuario cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es mayor que el espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo y, a continuación, ejecutar la etapa S204.
Cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es mayor que el espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo, esto indica que el campo de almacenamiento de atributo objetivo no puede alojar todas las correspondencias de atributo objetivo y, por lo tanto, es necesario crear al menos un nuevo campo de almacenamiento de atributo correspondiente al ID de usuario.
El número de nuevos campos de almacenamiento de atributo a crear puede determinarse en función del espacio de almacenamiento disponible de un campo de almacenamiento de atributo, el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo o el espacio de almacenamiento disponible del campo de atributo objetivo. Un procedimiento de determinación específico no está limitado en la presente divulgación.
Etapa S204: Almacenar todas las correspondencias de atributo objetivo en el nuevo campo de almacenamiento de atributo o en el campo de almacenamiento de atributo objetivo y el nuevo campo de almacenamiento de atributo.
Si el campo de almacenamiento de atributo objetivo se ha ocupado por completo, las correspondencias de atributo objetivo se almacenan en el nuevo campo de almacenamiento de atributo. Si el campo de almacenamiento de atributo objetivo no se ha ocupado por completo, algunas correspondencias de atributo objetivo pueden almacenarse primero en el campo de almacenamiento de atributo objetivo y, después de que se haya ocupado por completo el campo de almacenamiento de atributo objetivo, las correspondencias de atributo objetivo restantes se almacenan en el nuevo campo de almacenamiento de atributo.
Cuando se han almacenado todas las correspondencias de atributo objetivo, el segundo separador predeterminado puede usarse para separar correspondencias de atributo adyacentes para impedir que diferentes correspondencias de atributo se confundan entre sí. El segundo separador predeterminado puede ser "|", "*" o "~", etc., el cual no está limitado en la presente divulgación.
Por ejemplo, supóngase que una correspondencia de atributo es "procedimiento de pago por defecto = pago en línea", otra correspondencia de atributo es "categoría del producto de interés = electrodoméstico digital" y otra correspondencia de atributo adicional es "número de cuenta de pago por defecto = 123456789". Cuando las tres correspondencias de atributo se almacenan en el campo de almacenamiento de atributo, puede usarse el segundo separador predeterminado "|" para separar las tres correspondencias de atributo: "procedimiento de pago por defecto = pago en línea | categoría del producto de interés = electrodoméstico digital | número de cuenta de pago por defecto = 123456789".
En la implementación anterior, la correspondencia de atributo incluye el ID de índice correspondiente al ID de atributo del atributo personal y el valor de atributo del atributo personal, y hay un orden de índice predeterminado entre los ID de índice de todos los atributos personales. Por lo tanto, en la implementación de la presente divulgación, las correspondencias de atributo objetivo pueden almacenarse en función de los ID de índice incluidos en las correspondencias de atributo objetivo y el orden de índice predeterminado entre los ID de índice en las correspondencias de atributo almacenadas, con el fin de mejorar la eficacia de consultar posteriormente un valor de atributo de un atributo personal.
Por consiguiente, en otra implementación de la presente divulgación, con referencia a la FIG. 3, la etapa S104 incluye lo siguiente:
Etapa S301: Determinar una ubicación en la que la correspondencia de atributo objetivo va a almacenarse en el campo de almacenamiento de atributo objetivo, en función del ID de índice en la correspondencia de atributo objetivo y los ID de índice en todas las correspondencias de atributo almacenadas en el campo de almacenamiento de atributo objetivo.
Las ubicaciones de las correspondencias de atributo en el campo de almacenamiento de atributo en la implementación de la presente divulgación se determinan después de haberse ordenado en función del orden de índice predeterminado entre los ID de índice incluidos en las correspondencias de atributo.
Por ejemplo, supóngase que el ID de índice es un número de serie, por ejemplo, 1, 2, 3, 4, 5, etc. Para cualquier campo de almacenamiento de atributo, en dos campos de almacenamiento de atributo adyacentes al campo de almacenamiento de atributo, el número de serie de un campo de almacenamiento de atributo es mayor que el del campo de almacenamiento de atributo, y el número de serie del otro campo de almacenamiento de atributo es menor que el del campo de almacenamiento de atributo. Lo mismo se aplica al resto de campos de almacenamiento de atributo.
En la presente etapa, la correspondencia de atributo objetivo puede ordenarse en todas las correspondencias de atributo ordenadas en función del ID de índice en la correspondencia de atributo objetivo y los ID de índice en las correspondencias de atributo almacenadas, y se determinan dos correspondencias de atributo en el campo de almacenamiento de atributo objetivo entre las que está ubicada la correspondencia de atributo objetivo. En las dos correspondencias de atributo, el número de serie de una correspondencia de atributo es mayor que el número de serie de la correspondencia de atributo objetivo, y el número de serie de la otra correspondencia de atributo es menor que el número de serie de la correspondencia de atributo objetivo. La ubicación entre las dos correspondencias de atributo puede determinarse como la ubicación en la que va a almacenarse la correspondencia de atributo objetivo.
Etapa S302: Almacenar la correspondencia de atributo objetivo en la ubicación determinada.
Cuando es necesario proporcionar al usuario servicios precisos, el servidor necesita consultar el valor de atributo de uno o más atributos personales del usuario. Con referencia a la FIG. 4, la consulta puede realizarse de acuerdo con el siguiente procedimiento. El procedimiento incluye las siguientes etapas:
Etapa S401: Cuando se obtiene una solicitud de adquisición que incluye un ID de usuario y un ID de atributo de un atributo personal, buscar primeras correspondencias entre los ID de usuario y campos de almacenamiento de atributo para determinar si un campo de almacenamiento de atributo correspondiente al ID de usuario existe en las primeras correspondencias.
En la implementación de la presente divulgación, cuando es necesario proporcionar un servicio preciso al usuario, es necesario obtener el valor de atributo de uno o más atributos personales del usuario. En primer lugar, se genera una solicitud de adquisición en función del ID de usuario del usuario y el ID de atributo del atributo personal que es necesario obtener. Después, pueden obtenerse las primeras correspondencias entre los ID de usuario y los campos de almacenamiento de atributo, y se buscan las primeras correspondencias para determinar si el campo de almacenamiento de atributo correspondiente al ID de usuario existe en las primeras correspondencias.
Etapa S402: Cuando existe el campo de almacenamiento de atributo correspondiente al ID de usuario, buscar el campo de almacenamiento de atributo para determinar si una correspondencia de atributo correspondiente al ID de atributo existe en el campo de almacenamiento de atributo.
En una implementación de la presente divulgación, si la correspondencia de atributo es una correspondencia entre el ID de atributo y el valor de atributo, el campo de almacenamiento de atributo puede buscarse en la presente etapa para determinar si una correspondencia de atributo que incluye el ID de atributo existe en el campo de almacenamiento de atributo; y puede determinarse que la correspondencia de atributo correspondiente al ID de atributo existe en el campo de almacenamiento de atributo cuando existe la correspondencia de atributo que incluye el ID de atributo.
Específicamente, la primera correspondencia de atributo se obtiene en el campo de almacenamiento de atributo, se obtiene un ID de atributo en la primera correspondencia de atributo y se determina si el ID de atributo en la primera correspondencia de atributo es el mismo que el ID de atributo. Cuando los dos son iguales, la primera correspondencia de atributo se determina como la correspondencia de atributo correspondiente al ID de atributo. De forma alternativa, cuando los dos son diferentes, se obtiene la segunda correspondencia de atributo, se obtiene un ID de atributo en la segunda correspondencia de atributo y se determina si el ID de atributo en la segunda correspondencia de atributo es el mismo que el ID de atributo. Cuando los dos son iguales, la segunda correspondencia de atributo se determina como la correspondencia de atributo correspondiente al ID de atributo. De forma alternativa, cuando los dos son diferentes, se obtiene una siguiente correspondencia de atributo y el anterior procedimiento se ejecuta hasta que un ID de atributo en una correspondencia de atributo sea idéntico al ID de atributo, y la correspondencia de atributo obtenida se determina como la correspondencia de atributo correspondiente al ID de atributo. Si los ID de atributo en todas las correspondencias de atributo en el campo de almacenamiento de atributo son diferentes del ID de atributo, puede determinarse que no hay ninguna correspondencia de atributo correspondiente al ID de atributo en el campo de almacenamiento de atributo.
Cuando no hay ningún campo de almacenamiento de atributo correspondiente al ID de atributo, el procedimiento termina.
Generalmente, el campo de almacenamiento de atributo almacena una pluralidad de correspondencias de atributo. Si la correspondencia de atributo correspondiente al ID de atributo se almacena en una posición posterior en el campo de almacenamiento de atributo, se recorrerá la mayor parte de correspondencias de atributo de acuerdo con el procedimiento anterior, lo cual es muy lento y tiene una baja eficiencia de búsqueda.
En otra implementación de la presente divulgación, si la correspondencia de atributo es la correspondencia entre el ID de índice correspondiente al ID de atributo y al valor de atributo, en esta etapa pueden obtenerse segundas correspondencias entre los ID de atributo y los ID de índice. En las segundas correspondencias se busca el ID de índice correspondiente al ID de atributo; se busca el campo de almacenamiento de atributo para determinar si la correspondencia de atributo que incluye el ID de índice existe en el campo de almacenamiento de atributo; y cuando existe la correspondencia de atributo que incluye el ID de índice, puede determinarse que la correspondencia de atributo correspondiente al ID de atributo existe en el campo de almacenamiento de atributo.
Las ubicaciones de las correspondencias de atributo en el campo de almacenamiento de atributo en la implementación de la presente divulgación se determinan después de haberse ordenado en función del orden de índice predeterminado entre los ID de índice incluidos en las correspondencias de atributo. Por lo tanto, para mejorar la eficiencia de búsqueda, cuando se busca el campo de almacenamiento de atributo para determinar si la correspondencia de atributo que incluye el ID de índice existe en el campo de almacenamiento de atributo, en primer lugar puede compararse el ID de índice con los ID de índice en correspondencias de atributo en una o más ubicaciones predeterminadas en el campo de almacenamiento de atributo; la ubicación aproximada de la correspondencia de atributo que incluye el ID de índice en el campo de almacenamiento de atributo se determina en función del resultado de la comparación; y, a continuación, el ID de índice se compara con el ID de índice en una o más correspondencias de atributo en la ubicación aproximada a fin de determinar si existe la correspondencia de atributo que incluye el ID de índice.
Etapa S403: Obtener un valor de atributo en la correspondencia de atributo cuando existe la correspondencia de atributo correspondiente al ID de atributo.
Cuando la correspondencia de atributo correspondiente al ID de atributo no existe, esto indica que el usuario correspondiente al ID de usuario no tiene el atributo personal. Además, puede informarse al usuario de que el usuario correspondiente al ID de usuario no tiene el atributo personal.
La FIG. 5 es un diagrama de bloques que ilustra un dispositivo de procesamiento de datos de acuerdo con una implementación. Haciendo referencia a la FIG. 5, el dispositivo incluye lo siguiente: un primer módulo de obtención 11, configurado para obtener un ID de usuario así como un ID de atributo y un valor de atributo de al menos un atributo personal correspondiente al ID de usuario; un módulo de generación 12, configurado para generar, para cada uno de los atributos personales, una correspondencia de atributo objetivo del atributo personal en función del ID de atributo y el valor de atributo del atributo personal; un módulo de determinación 13, configurado para determinar si un campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en primeras correspondencias almacenadas entre ID de usuario y campos de almacenamiento de atributo; un primer módulo de almacenamiento 14, configurado para almacenar todas las correspondencias de atributo objetivo en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias; un módulo de creación 15, configurado para crear un campo de almacenamiento de atributo correspondiente al ID de usuario cuando ningún campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias; y un segundo módulo de almacenamiento 16, configurado para almacenar todas las correspondencias de atributo objetivo en el campo de almacenamiento de atributo creado.
El módulo de generación 12 incluye lo siguiente: una primera unidad de establecimiento, configurada para establecer una correspondencia de atributo objetivo entre el ID de atributo del atributo personal y el valor de atributo del atributo personal; o una primera unidad de obtención, configurada para obtener segundas correspondencias entre ID de atributo almacenados e ID de índice de índices de secuencia; una unidad de búsqueda, configurada para buscar las segundas correspondencias para un ID de índice correspondiente al ID de atributo; y una segunda unidad de establecimiento, configurada para establecer una correspondencia de atributo objetivo entre el ID de índice y el valor de atributo del atributo personal.
El primer módulo de almacenamiento 14 incluye lo siguiente: una unidad de determinación, configurada para determinar si el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo; y una primera unidad de almacenamiento, configurada para almacenar todas las correspondencias de atributo objetivo en el campo de almacenamiento de atributo objetivo cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo; una unidad de creación, configurada para crear al menos un nuevo campo de almacenamiento de atributo correspondiente al ID de usuario cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es mayor que el espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo; y una segunda unidad de almacenamiento, configurada para almacenar todas las correspondencias de atributo objetivo en el nuevo campo de almacenamiento de atributo o en el campo de almacenamiento de atributo objetivo y el nuevo campo de almacenamiento de atributo.
El primer módulo de almacenamiento 14 incluye lo siguiente: una primera unidad de determinación, configurada para determinar una ubicación en la que la correspondencia de atributo objetivo va a almacenarse en el campo de almacenamiento de atributo objetivo, en función del ID de índice en la correspondencia de atributo objetivo y los ID de índice en todas las correspondencias de atributo almacenadas en el campo de almacenamiento de atributo objetivo; y una tercera unidad de almacenamiento, configurada para almacenar la correspondencia de atributo objetivo en la ubicación determinada.
En la implementación mostrada en la FIG. 5 de la presente divulgación, se obtiene un ID de usuario, así como un ID de atributo y un valor de atributo de al menos un atributo personal correspondiente al ID de usuario. Para cada uno de los atributos personales, una correspondencia de atributo objetivo del atributo personal se genera en función del ID de atributo y el valor de atributo del atributo personal. Se determina si un campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en primeras correspondencias almacenadas entre ID de usuario y campos de almacenamiento de atributo; y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias. De forma alternativa, se crea un campo de almacenamiento de atributo correspondiente al ID de usuario cuando ningún campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias, y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo creado.
La estructura de almacenamiento en la tecnología existente se abandona en la implementación de la presente divulgación. En primer lugar, no hay ningún campo vacío, lo que evita el problema de malgastar espacio de almacenamiento para campos vacíos y consigue el objetivo de ahorrar espacio de almacenamiento. Además, en la tecnología existente, solo se almacena un valor de atributo en cada campo. Sin embargo, en las implementaciones de la presente divulgación, una pluralidad de correspondencias de atributo se almacenan en un campo de almacenamiento de atributo, y cada correspondencia de atributo incluye un valor de atributo. Por tanto, en comparación con la tecnología existente, en las implementaciones de la presente divulgación, una pluralidad de valores de atributo se almacenan en un campo de almacenamiento de atributo, y el espacio de almacenamiento en un campo de almacenamiento de atributo se utiliza por completo, lo que ahorra espacio de almacenamiento.
Además, con el rápido desarrollo de las empresas de servicios, surge una variedad ilimitada de necesidades personalizadas del usuario. Por lo tanto, con frecuencia es necesario crear nuevos atributos personales. En este caso, en la tecnología existente, es necesario añadir un campo en el lado situado más a la derecha de la primera fila de la Tabla 1, y el nombre de atributo del nuevo atributo personal se añade al campo recién añadido. A continuación, es necesario añadir un nuevo campo en el lado situado más a la derecha de la fila de cada ID de usuario en la Tabla 1 de modo que cuando un usuario tenga el nuevo atributo personal, el campo recién añadido en el lado situado más a la derecha de la fila en la que está ubicado el ID de usuario se rellene con el valor de atributo del atributo personal.
Sin embargo, no todos los usuarios correspondientes a los ID de usuario en la Tabla 1 tienen el nuevo atributo personal y, por consiguiente, no se rellenarán con valores de atributo los campos recién añadidos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario, lo que da lugar a que algunos campos estén vacíos y a que se malgaste espacio de almacenamiento en menor o mayor medida.
Además, en el proceso de añadir nuevos campos a la Tabla 1, es necesario bloquear la Tabla 1 y, en el estado bloqueado, la Tabla 1 no puede usarse. Cuando hay una gran cantidad de ID de usuario almacenados en la Tabla 1, es decir, hay un gran número de filas en la Tabla 1, el añadir nuevos campos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario requerirá mucho tiempo. Como resultado, la Tabla 1 no puede usarse durante mucho tiempo, lo que impide proporcionar a los usuarios servicios precisos durante un largo periodo de tiempo. Sin embargo, en la implementación de la presente divulgación, incluso si se desarrolla un nuevo atributo personal, no es necesario asignar un campo al nuevo atributo personal que se ha desarrollado, y no es necesario bloquear los atributos personales almacenados, de modo que puede proporcionarse constantemente servicios precisos a los usuarios. Además, no es necesario asignar campos a los nuevos atributos personales que se han desarrollado y, en consecuencia, no habrá campos vacíos, lo que mitiga el problema de malgastar espacio de almacenamiento.
La FIG. 6 es un diagrama de bloques que ilustra un dispositivo de procesamiento de datos de acuerdo con una implementación. Haciendo referencia a la FIG. 6, el dispositivo incluye lo siguiente: un primer módulo de búsqueda 21, configurado para buscar, cuando se obtiene una solicitud de adquisición que incluye un ID de usuario y un ID de atributo de un atributo personal, primeras correspondencias entre ID de usuario y campos de almacenamiento de atributo para determinar si un campo de almacenamiento de atributo correspondiente al ID de usuario existe en las primeras correspondencias; un segundo módulo de búsqueda 22, configurado para buscar, cuando existe el campo de almacenamiento de atributo correspondiente al ID de usuario, el campo de almacenamiento de atributo para determinar si una correspondencia de atributo correspondiente al ID de atributo existe en el campo de almacenamiento de atributo; y un segundo módulo de obtención 23, configurado para obtener un valor de atributo en la correspondencia de atributo cuando existe la correspondencia de atributo correspondiente al ID de atributo.
El segundo módulo de búsqueda 22 incluye lo siguiente: una primera unidad de búsqueda, configurada para buscar el campo de almacenamiento de atributo para determinar si una correspondencia de atributo que incluye el ID de atributo existe en el campo de almacenamiento de atributo; y una segunda unidad de determinación, configurada para determinar que la correspondencia de atributo correspondiente al ID de atributo existe en el campo de almacenamiento de atributo cuando existe la correspondencia de atributo que incluye el ID de atributo.
El segundo módulo de búsqueda 22 incluye lo siguiente: una segunda unidad de obtención, configurada para obtener segundas correspondencias entre ID de atributo e ID de índice; una segunda unidad de búsqueda, configurada para buscar las segundas correspondencias para un ID de índice correspondiente al ID de atributo; una tercera unidad de búsqueda, configurada para buscar el campo de almacenamiento de atributo para determinar si una correspondencia de atributo que incluye el ID de índice existe en el campo de almacenamiento de atributo; y una tercera unidad de determinación, configurada para determinar que la correspondencia de atributo correspondiente al ID de atributo existe en el campo de almacenamiento de atributo cuando existe la correspondencia de atributo que incluye el ID de índice.
En la implementación mostrada en la FIG. 6 de la presente divulgación, se obtiene un ID de usuario, así como un ID de atributo y un valor de atributo de al menos un atributo personal correspondiente al ID de usuario. Para cada uno de los atributos personales, una correspondencia de atributo objetivo del atributo personal se genera en función del ID de atributo y el valor de atributo del atributo personal. Se determina si un campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en primeras correspondencias almacenadas entre ID de usuario y campos de almacenamiento de atributo; y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias. De forma alternativa, se crea un campo de almacenamiento de atributo correspondiente al ID de usuario cuando ningún campo de almacenamiento de atributo objetivo correspondiente al ID de usuario existe en las primeras correspondencias, y todas las correspondencias de atributo objetivo se almacenan en el campo de almacenamiento de atributo creado.
La estructura de almacenamiento en la tecnología existente se abandona en la implementación mostrada en la FIG. 1 de la presente divulgación. En primer lugar, no hay ningún campo vacío, lo que evita el problema de malgastar espacio de almacenamiento para campos vacíos y consigue el objetivo de ahorrar espacio de almacenamiento. Además, en la tecnología existente, solo se almacena un valor de atributo en cada campo. Sin embargo, en la implementación mostrada en la FIG. 6 de la presente divulgación, una pluralidad de correspondencias de atributo se almacenan en un campo de almacenamiento de atributo, y cada correspondencia de atributo incluye un valor de atributo. Por tanto, en comparación con la tecnología existente, en la implementación mostrada en la FIG. 6 de la presente divulgación, una pluralidad de valores de atributo se almacenan en un campo de almacenamiento de atributo, y el espacio de almacenamiento en un campo de almacenamiento de atributo se utiliza por completo, lo que ahorra espacio de almacenamiento.
Además, con el rápido desarrollo de las empresas de servicios, surge una variedad ilimitada de necesidades personalizadas del usuario. Por lo tanto, con frecuencia es necesario crear nuevos atributos personales. En este caso, en la tecnología existente, es necesario añadir un campo en el lado situado más a la derecha de la primera fila de la Tabla 1, y el nombre de atributo del nuevo atributo personal se añade al campo recién añadido. A continuación, es necesario añadir un nuevo campo en el lado situado más a la derecha de la fila de cada ID de usuario en la Tabla 1 de modo que cuando un usuario tenga el nuevo atributo personal, el campo recién añadido en el lado situado más a la derecha de la fila en la que está ubicado el ID de usuario se rellene con el valor de atributo del atributo personal.
Sin embargo, en este caso, no todos los usuarios correspondientes a los ID de usuario en la Tabla 1 tienen el nuevo atributo personal y, por consiguiente, no se rellenarán con valores de atributo los campos recién añadidos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario, lo que da lugar a que algunos campos estén vacíos y a que se malgaste espacio de almacenamiento en menor o mayor medida.
Además, en el proceso de añadir nuevos campos a la Tabla 1, es necesario bloquear la Tabla 1 y, en el estado bloqueado, la Tabla 1 no puede usarse. Cuando hay una gran cantidad de ID de usuario almacenados en la Tabla 1, es decir, hay un gran número de filas en la Tabla 1, el añadir nuevos campos en el lado situado más a la derecha de la fila en la que están ubicados todos los ID de usuario requerirá mucho tiempo. Como resultado, la Tabla 1 no puede usarse durante mucho tiempo, lo que impide proporcionar a los usuarios servicios precisos durante un largo periodo de tiempo. Sin embargo, en la implementación mostrada en la FIG. 6 de la presente divulgación, incluso si se desarrolla un nuevo atributo personal, no es necesario asignar un campo al nuevo atributo personal que se ha desarrollado, y no es necesario bloquear los atributos personales almacenados, de modo que puede proporcionarse constantemente servicios precisos a los usuarios. Además, no es necesario asignar campos a los nuevos atributos personales que se han desarrollado y, en consecuencia, no habrá campos vacíos, lo que mitiga el problema de malgastar espacio de almacenamiento.
Con respecto al dispositivo de las implementaciones anteriores, los procedimientos específicos para realizar operaciones mediante módulos se han descrito en detalle en las implementaciones relacionadas con el procedimiento, y los detalles se omiten aquí por simplicidad.
Un experto en la técnica puede concebir fácilmente otra implementación de la presente divulgación después de analizar la memoria descriptiva y llevar a la práctica la presente divulgación. La presente solicitud pretende cubrir cualquier variación, uso o adaptación de la presente divulgación, y dichas variaciones, usos o adaptaciones siguen los principios generales de la presente divulgación e incluyen un conocimiento común o técnicas convencionales no desvelados en el campo técnico de la presente divulgación. La memoria descriptiva y las implementaciones se consideran simplemente ejemplos, estando indicado el alcance de la presente divulgación por las reivindicaciones adjuntas.
Cabe señalar que la presente divulgación no está limitada a las estructuras precisas que se han descrito anteriormente y mostrado en los dibujos, y pueden realizarse diversas modificaciones y cambios sin apartarse del alcance de la presente divulgación. El alcance de la presente divulgación solo está limitado por las reivindicaciones adjuntas.

Claims (11)

REIVINDICACIONES
1. Un procedimiento de procesamiento de datos, donde el procedimiento comprende:
obtener un identificador de usuario, un identificador de atributo y un valor de atributo de al menos un atributo personal correspondiente al identificador de usuario (S101);
para cada uno de los al menos un atributo personal, generar una correspondencia de atributo objetivo del atributo personal en función del identificador de atributo y el valor de atributo del atributo personal (S102);
determinar si un campo de almacenamiento de atributo objetivo correspondiente al identificador de usuario existe en primeras correspondencias almacenadas entre identificadores de usuario y campos de almacenamiento de atributo (S103); y
o bien
a) almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo objetivo cuando el campo de almacenamiento de atributo objetivo correspondiente al identificador de usuario existe en las primeras correspondencias (S104), donde almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo objetivo comprende
determinar si el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo (S201), y o bien
i) almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo objetivo cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es menor que o igual al espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo (S202), o ii) crear al menos un nuevo campo de almacenamiento de atributo correspondiente al identificador de usuario cuando el espacio de almacenamiento ocupado por todas las correspondencias de atributo objetivo es mayor que el espacio de almacenamiento inactivo del campo de almacenamiento de atributo objetivo (S203) y almacenar todas las correspondencias de atributo objetivo en el nuevo campo de almacenamiento de atributo o en el campo de almacenamiento de atributo objetivo y el nuevo campo de almacenamiento de atributo (S204), o
b) cuando ningún campo de almacenamiento de atributo objetivo correspondiente al identificador de usuario existe en las primeras correspondencias, crear un campo de almacenamiento de atributo correspondiente al identificador de usuario (S105) y almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo creado (S106).
2. El procedimiento de acuerdo con la reivindicación 1, en el que generar una correspondencia de atributo objetivo del atributo personal en función del identificador de atributo y el valor de atributo del atributo personal comprende establecer una correspondencia de atributo objetivo entre el identificador de atributo del atributo personal y el valor de atributo del atributo personal.
3. El procedimiento de acuerdo con la reivindicación 1, en el que generar una correspondencia de atributo objetivo del atributo personal en función del identificador de atributo y el valor de atributo del atributo personal comprende: obtener segundas correspondencias almacenadas entre identificadores de atributo e identificadores de índice de índices de secuencia;
buscar en las segundas correspondencias un identificador de índice correspondiente al identificador de atributo; y establecer una correspondencia de atributo objetivo entre el identificador de índice y el valor de atributo del atributo personal.
4. El procedimiento de acuerdo con la reivindicación 2 o 3, en el que almacenar todas las correspondencias de atributo objetivo generadas en el campo de almacenamiento de atributo objetivo comprende:
determinar una ubicación en la que la correspondencia de atributo objetivo va a almacenarse en el campo de almacenamiento de atributo objetivo, en función del identificador de índice en la correspondencia de atributo objetivo y los identificadores de índice en todas las correspondencias de atributo almacenadas en el campo de almacenamiento de atributo objetivo (S301); y
almacenar la correspondencia de atributo objetivo en la ubicación determinada (S302).
5. El procedimiento de acuerdo con la reivindicación 4, en el que determinar una ubicación en la que la correspondencia de atributo objetivo va a almacenarse en el campo de almacenamiento de atributo objetivo comprende ordenar las correspondencias de atributo almacenadas en función del ID de índice en la correspondencia de atributo objetivo y los ID de índice en las correspondencias de atributo almacenadas.
6. El procedimiento de acuerdo con la reivindicación 4, en el que el procedimiento comprende además buscar el campo de almacenamiento de atributo objetivo para determinar si una correspondencia de atributo que incluye un ID de índice existe en el campo de almacenamiento de atributo objetivo, lo que comprende:
comparar el ID de índice con los ID de índice en correspondencias de atributo en una o más ubicaciones predeterminadas en el campo de almacenamiento de atributo objetivo;
determinar una ubicación aproximada de la correspondencia de atributo que incluye el ID de índice en el campo de almacenamiento de atributo objetivo en función del resultado de la comparación; y
comparar el ID de índice con los ID de índice en una o más correspondencias de atributo en la ubicación aproximada para determinar si existe la correspondencia de atributo que incluye el ID de índice.
7. El procedimiento de acuerdo con una cualquiera de las reivindicaciones 1 a 6, donde el procedimiento comprende además consultar un valor de atributo de uno o más atributos personales del usuario para proporcionar un servicio específico al usuario.
8. El procedimiento de acuerdo con una cualquiera de las reivindicaciones 1 a 7, donde el procedimiento comprende además:
cuando el campo de almacenamiento de atributo objetivo correspondiente al identificador de usuario existe en las primeras correspondencias, buscar el campo de almacenamiento de atributo objetivo para determinar si una correspondencia de atributo correspondiente al identificador de atributo existe en el campo de almacenamiento de atributo; y
cuando existe la correspondencia de atributo correspondiente al identificador de atributo, obtener un valor de atributo en la correspondencia de atributo.
9. El procedimiento de acuerdo con la reivindicación 8, en el que buscar el campo de almacenamiento de atributo objetivo para determinar si una correspondencia de atributo correspondiente al identificador de atributo existe en el campo de almacenamiento de atributo comprende:
buscar el campo de almacenamiento de atributo objetivo para determinar si una correspondencia de atributo que comprende el identificador de atributo existe en el campo de almacenamiento de atributo objetivo; y determinar que la correspondencia de atributo correspondiente al identificador de atributo existe en el campo de almacenamiento de atributo objetivo cuando existe la correspondencia de atributo que comprende el identificador de atributo.
10. El procedimiento de acuerdo con la reivindicación 7, en el que buscar el campo de almacenamiento de atributo objetivo para determinar si una correspondencia de atributo correspondiente al identificador de atributo existe en el campo de almacenamiento de atributo objetivo comprende:
obtener segundas correspondencias entre identificadores de atributo e identificadores de índice;
buscar las segundas correspondencias para un identificador de índice correspondiente al identificador de atributo; buscar el campo de almacenamiento de atributo objetivo para determinar si una correspondencia de atributo que comprende el identificador de índice existe en el campo de almacenamiento de atributo; y
determinar que la correspondencia de atributo correspondiente al identificador de atributo existe en el campo de almacenamiento de atributo objetivo cuando existe la correspondencia de atributo que comprende el identificador de índice.
11. Un dispositivo de procesamiento de datos, en el que el dispositivo comprende múltiples módulos configurados para realizar operaciones de acuerdo con el procedimiento de una cualquiera de las reivindicaciones 1 a 10.
ES17759146T 2016-03-01 2017-02-20 Procedimiento y dispositivo de procesamiento de datos Active ES2809163T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610116003.0A CN107145493B (zh) 2016-03-01 2016-03-01 信息处理方法及装置
PCT/CN2017/074171 WO2017148295A1 (zh) 2016-03-01 2017-02-20 信息处理方法及装置

Publications (1)

Publication Number Publication Date
ES2809163T3 true ES2809163T3 (es) 2021-03-03

Family

ID=59743504

Family Applications (1)

Application Number Title Priority Date Filing Date
ES17759146T Active ES2809163T3 (es) 2016-03-01 2017-02-20 Procedimiento y dispositivo de procesamiento de datos

Country Status (12)

Country Link
US (1) US11200220B2 (es)
EP (1) EP3425525B1 (es)
JP (1) JP6865763B2 (es)
KR (1) KR102153806B1 (es)
CN (1) CN107145493B (es)
ES (1) ES2809163T3 (es)
MY (1) MY177886A (es)
PH (1) PH12018501838A1 (es)
PL (1) PL3425525T3 (es)
SG (1) SG11201807256XA (es)
TW (1) TWI676904B (es)
WO (1) WO2017148295A1 (es)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110096693B (zh) * 2018-01-29 2024-05-28 北京搜狗科技发展有限公司 一种数据处理方法、装置和用于数据处理的装置
US11036702B1 (en) * 2018-03-23 2021-06-15 Amazon Technologies, Inc. Generation of search indexes for disparate device information
CN108897819B (zh) * 2018-06-20 2021-09-21 北京密境和风科技有限公司 一种数据搜索方法和装置
CN111080459B (zh) * 2019-11-21 2023-08-25 泰康保险集团股份有限公司 配置文件的配置方法、装置及可读存储介质
CN111897818A (zh) * 2020-07-31 2020-11-06 平安普惠企业管理有限公司 数据存储方法、装置、电子设备及存储介质
CN112765176B (zh) * 2021-01-22 2023-02-03 浪潮通用软件有限公司 一种微服务模式下属性扩展方法、装置及存储介质

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107265B1 (en) * 2000-04-06 2006-09-12 International Business Machines Corporation Software management tree implementation for a network processor
US6574631B1 (en) * 2000-08-09 2003-06-03 Oracle International Corporation Methods and systems for runtime optimization and customization of database applications and application entities
JP2002278810A (ja) 2001-03-16 2002-09-27 Casio Comput Co Ltd データ処理装置及びプログラム
US7103670B2 (en) * 2001-06-14 2006-09-05 International Business Machines Corporation Streaming digital content under remote direction
JP4207438B2 (ja) 2002-03-06 2009-01-14 日本電気株式会社 Xml文書格納/検索装置及びそれに用いるxml文書格納/検索方法並びにそのプログラム
KR100600862B1 (ko) * 2004-01-30 2006-07-14 김선권 인터넷상의 정보자원에 대한 접근 경로를 체계적으로수집하고 검색하는 방법, 및 이 방법을 실행할 수 있는컴퓨터 프로그램을 수록한 기록매체
US7761455B2 (en) * 2004-03-31 2010-07-20 Hewlett-Packard Development Company, L.P. Loading data from a vertical database table into a horizontal database table
JP2006004026A (ja) 2004-06-16 2006-01-05 Hitachi Eng Co Ltd データベース登録管理方法
US7788293B2 (en) * 2005-03-02 2010-08-31 Google Inc. Generating structured information
US8392400B1 (en) 2005-12-29 2013-03-05 Amazon Technologies, Inc. Method and apparatus for stress management in a searchable data service
CN100501734C (zh) * 2006-04-19 2009-06-17 华为技术有限公司 实体属性数据处理装置及方法
US20150363478A1 (en) * 2008-07-11 2015-12-17 Michael N. Haynes Systems, Devices, and/or Methods for Managing Data
JP5675043B2 (ja) * 2008-11-19 2015-02-25 キヤノン株式会社 画像処理装置及び画像データ送信方法、並びにプログラム
US20100185871A1 (en) * 2009-01-15 2010-07-22 Authentiverse, Inc. System and method to provide secure access to personal information
CN101504672B (zh) * 2009-03-23 2011-08-10 金蝶软件(中国)有限公司 一种动态配置实体数据表的方法和系统
KR20110013816A (ko) * 2009-08-03 2011-02-10 주식회사 케이티 효율적인 서비스 가입자 인증을 위한 지역 db 관리 방법
JP5482284B2 (ja) * 2010-02-23 2014-05-07 富士通株式会社 コンテンツ提供用ユーザ情報管理装置,処理方法,およびプログラム
CN102541867A (zh) * 2010-12-15 2012-07-04 金蝶软件(中国)有限公司 数据字典生成方法及系统
TW201227587A (en) * 2010-12-24 2012-07-01 Chunghwa Telecom Co Ltd System and method for automatically and synchronously updating transaction interest point data
CN102243664B (zh) * 2011-08-22 2013-04-03 西北大学 一种复合字段的数据存储及查询方法
CN102436475B (zh) * 2011-09-29 2013-12-25 用友软件股份有限公司 数据表汇总装置和数据表汇总方法
CN103246664B (zh) * 2012-02-07 2016-05-25 阿里巴巴集团控股有限公司 网页检索方法和装置
JP6060833B2 (ja) * 2013-06-28 2017-01-18 株式会社Jvcケンウッド 情報処理装置、情報処理方法、及び情報処理プログラム
US9230132B2 (en) * 2013-12-18 2016-01-05 International Business Machines Corporation Anonymization for data having a relational part and sequential part
CN105354025B (zh) * 2015-10-18 2018-09-14 广州赛意信息科技股份有限公司 基于移动应用的业务模型配置系统和方法

Also Published As

Publication number Publication date
JP2019512143A (ja) 2019-05-09
EP3425525A4 (en) 2019-08-21
TWI676904B (zh) 2019-11-11
CN107145493A (zh) 2017-09-08
TW201732653A (zh) 2017-09-16
KR20180118736A (ko) 2018-10-31
EP3425525A1 (en) 2019-01-09
JP6865763B2 (ja) 2021-04-28
EP3425525B1 (en) 2020-06-17
KR102153806B1 (ko) 2020-09-10
PL3425525T3 (pl) 2020-11-30
CN107145493B (zh) 2020-11-24
PH12018501838A1 (en) 2019-05-15
US20180373747A1 (en) 2018-12-27
MY177886A (en) 2020-09-24
US11200220B2 (en) 2021-12-14
SG11201807256XA (en) 2018-09-27
WO2017148295A1 (zh) 2017-09-08

Similar Documents

Publication Publication Date Title
ES2809163T3 (es) Procedimiento y dispositivo de procesamiento de datos
US9934329B2 (en) Composite term index for graph data
JP5767748B2 (ja) ソーシャルネットワークにおいてフィードを追跡すること
US9514169B2 (en) Columnar table data protection
ES2775429T3 (es) Procedimiento de elección de al menos un servicio y dispositivo asociado
EP3218811B1 (en) Testing insecure computing environments using random data sets generated from characterizations of real data sets
US9977922B2 (en) Multi-tier storage based on data anonymization
US9026542B2 (en) System and method for modelling and profiling in multiple languages
Doudali et al. Spaten: A spatio-temporal and textual big data generator
US20150339361A1 (en) Exposing data to query generating applications using usage profiles
Li et al. Differentially private trajectory analysis for points-of-interest recommendation
Song et al. Inference attack on browsing history of twitter users using public click analytics and twitter metadata
CN107920121A (zh) 一种基于互联网的体育测试方法
Wang et al. An efficient multiple-user location-based query authentication approach for social networking
CN117441210A (zh) 包括用户域概念的个性化数据图
Wang Search over encrypted data in cloud computing
ES2803498T3 (es) Proceso para proteger la privacidad de un usuario en una red
Juncheng et al. Potential Attacks against k-Anonymity on LBS and Solutions for Defending the Attacks
Saibabavali et al. Application for searching product nearby location
Yamamoto et al. A Secure Conjunctive Keyword Search Using a Hierarchical Bloom Filter