2010-12-22 23 views
8

Estoy planteando esta pregunta en busca de consejos prácticos sobre cómo diseñar un sistema.¿Cuáles son las mejores prácticas para recopilar, mantener y garantizar la precisión de un gran conjunto de datos?

Sitios como amazon.com y pandora tienen y mantienen grandes conjuntos de datos para ejecutar su negocio principal. Por ejemplo, Amazon (y cualquier otro sitio importante de comercio electrónico) tiene a la venta millones de productos, imágenes de esos productos, precios, especificaciones, etc. etc.

Ignorando los datos provenientes de vendedores de terceros y el usuario generó contenido que todo ese "material" tenía que venir de alguna parte y lo mantiene alguien. También es increíblemente detallado y preciso. ¿Cómo? ¿Cómo lo hicieron? ¿Existe solo un ejército de empleados que ingresan datos o han ideado sistemas para manejar el trabajo pesado?

Mi empresa se encuentra en una situación similar. Mantenemos un catálogo enorme (10 de millones de registros) de piezas de automóviles y los automóviles que caben. Hemos estado en esto por un tiempo y hemos creado una serie de programas y procesos para mantener nuestro catálogo en crecimiento y preciso; sin embargo, parece que el catálogo crece a x elementos que necesitamos para hacer crecer el equipo a y.

Necesito encontrar algunas maneras de aumentar la eficiencia del equipo de datos y espero poder aprender del trabajo de otros. Cualquier sugerencia es apreciada, más bien serían enlaces a contenido que podría pasar algún tiempo leyendo.

Respuesta

5

Use visitors visitors.

  1. Incluso si usted tiene una persona por artículo, habrá registros erróneos, y los clientes se encontrarlo.Por lo tanto, permítales marcar los artículos como "inapropiados" y hagan un breve comentario. Pero no olvides que no son tus empleados, no les preguntes demasiado; vea el botón "me gusta" de Facebook, es fácil de usar y no requiere demasiada energía del usuario. Buen rendimiento/precio. Si hubiera un campo obligatorio en Facebook, que pregunta "¿por qué te gusta?", Nadie debería usar esa función.

  2. Los visitantes también le ayudan de manera implicita: visitan las páginas de los artículos, y usan la función de búsqueda (me refiero tanto al buscador interno como a los externos, como Google). Puede obtener información de la actividad de los visitantes, por ejemplo, establecer el orden de los elementos más visitados, luego debe concentrar más fuerzas humanas en la parte superior de la lista, y menos para la "cola larga".

3

Dado que este es más sobre el manejo del equipo/código/datos en lugar de la ejecución y ya que ha mencionado Amazon creo que encontrará esto útil: http://highscalability.com/amazon-architecture.

En particular, haga clic en el enlace a la entrevista de Werner Vogels.

+0

gracias, lo estoy viendo ahora. –

3

Compórtala bien desde el principio. Asegúrese de utilizar todos los métodos de comprobación de integridad disponibles en la base de datos que está utilizando, según corresponda a lo que está almacenando. Es mejor que se introduzca silenciosamente una carga que datos malos.

Luego, descubra qué va a hacer en términos de su propia verificación de integridad. Las comprobaciones de integridad DB son un buen comienzo, pero rara vez son todo lo que necesita. Eso también lo obligará a pensar, desde el comienzo, sobre con qué tipo de datos está trabajando, cómo debe almacenarlos y cómo reconocer y marcar o rechazar datos incorrectos o cuestionables.

No puedo decirle la cantidad de dolor que he visto al tratar de volver a trabajar (o simplemente el trabajo diario con) los viejos sistemas llenos de datos basura. Hacerlo bien y probarlo completamente desde el principio puede parecer un dolor, y puede ser, pero la recompensa es tener un sistema que en su mayor parte se propaga y necesita poca o ninguna intervención.

En cuanto a un enlace, si hay alguien que ha tenido que pensar y diseñar para la escalabilidad, es Google. Puede encontrar este instructivo, tiene algunas cosas buenas a tener en cuenta: http://highscalability.com/google-architecture

1

Comparta la fecha con sus proveedores. Luego, los datos se ingresan una vez.

Si es importante, se debe hacer una vez, sino nada.

+0

Si hiciéramos esto, estaríamos fuera del negocio. Estamos en el negocio de administrar sus datos (y enviarlos a todos los demás para que solo se realicen una vez). –

1

Yo invertiría mucho en la minería de datos. Obtenga tantos feeds como sea posible sobre los productos que intenta vender. Obtenga información sobre el vehículo directamente de los vendedores, así como de las empresas de reparación de automóviles como Mitchell y Haynes.

Una vez que conozca las piezas que necesita, correlacione los números de parte con los números de pieza que están disponibles en Interenet. También Cross correlaciona los números de parte con imágenes, reseñas y artículos. Intente agregar la mayor cantidad de información posible en una página, y eventualmente permita que esa página sea indexada por google.

Según los resultados de su agregación de datos, asigne una serie de ponderaciones a cada producto. En función del valor de sus pesos, transfiera los resultados a un empleado y pídales que negocien el precio con los proveedores, cree una página tal como está y vincule a las fuentes (suponiendo que reciba una comisión), o bien, no venda la parte .

Una vez que tenga suficientes productos en un solo lugar, puede apoyar a otras personas que deseen agregar productos adicionales a su sitio web. La amplitud de los recursos disponibles en Amazon se debe en gran medida a apoyar a los vendedores de terceros y permitir que esos vendedores aparezcan en el sitio web de Amazon.

Especialmente en la industria automotriz, creo que su es un gran valor en la indexación de alta calidad que no se pueda encontrar tanto Google, así como lógicamente se pueda encontrar por personas que desean sustituir un componente específico. También puede considerar vender/proporcionar servicios específicos de ubicación a través de la ubicación geográfica de IP en función del componente que están interesados ​​en comprar.

2

Master Data Management es otra alternativa a lo que se ha propuesto. Here es el artículo de Microsoft "El qué, por qué y cómo de la gestión de datos maestros". Data stewards tienen los derechos/la responsabilidad de mantener la exactitud de los datos para la empresa.

La capacidad principal de escalar proviene de la alineación de la tecnología con el negocio, de modo que el personal de datos no sea el único que puede administrar la información. Las herramientas y procesos/procedimientos permiten a los propietarios de negocios ayudar a administrar los datos de la empresa.

1

Gran parte de los datos gestionados por el sitio como google proviene de los usuarios. Ingreso mis datos y soy responsable de su precisión. Los sitios tienen sus datos y se capturan de la web. Los datos de búsqueda se capturan desde una búsqueda. Esto es significativamente diferente de lo que estás intentando. Hay pocos requisitos para que el personal de Google haga algo al respecto.

Trabajar con fuentes de fabricantes podría hacer que sus esfuerzos requieran menos mano de obra. El trade-off es invertir en el software de transformación de datos. Es posible que desee capturar la fuente para cada referencia cruzada. Esto facilitará las recargas cuando recibas actualizaciones.

Según mi experiencia, también tiene el problema de que las referencias cruzadas pueden ser unidireccionales. A puede reemplazar a B, pero B no puede reemplazar a A.

Mientras tenga la entrada manual, tendrá errores. Cualquier cosa que pueda hacer en su interfaz para detectar estos errores probablemente valga la pena. El volumen de entrada al personal debe escalar linealmente.

Revise la investigación sobre ciclos de atención para determinar si puede hacer algo para aumentar la calidad de los procesos de entrada y verificación. La investigación reciente en el análisis de seguridad indica que es posible que desee generar errores periódicos en los datos de verificación.

Como han notado otros, es más fácil para los usuarios señalar errores.

Cuestiones relacionadas