【问题标题】:What are best practices for collecting, maintaining and ensuring accuracy of a huge data set?收集、维护和确保庞大数据集准确性的最佳实践是什么?
【发布时间】:2011-05-29 04:14:28
【问题描述】:

我提出这个问题是为了寻求有关如何设计系统的实用建议。

amazon.com 和 pandora 等网站拥有并维护着庞大的数据集来运营其核心业务。例如,亚马逊(以及其他所有主要电子商务网站)有数百万种产品可供出售,这些产品的图片、价格、规格等等等。

忽略来自第三方卖家的数据和用户生成的内容,所有“东西”必须来自某个地方并由某人维护。它也非常详细和准确。如何?他们是怎么做到的呢?是只有一大群数据录入员,还是他们设计了系统来处理繁重的工作?

我的公司也有类似的情况。我们维护着一个庞大的(10 万条记录)汽车零件目录及其适合的汽车。我们已经有一段时间了,并提出了许多程序和流程来保持我们的目录不断增长和准确;但是,似乎要将目录增长到 x 个项目,我们需要将团队增长到 y

我需要想出一些方法来提高数据团队的效率,希望我可以从其他人的工作中学习。任何建议都表示赞赏,但更多的是指向我可以花一些时间阅读的内容的链接。

【问题讨论】:

    标签: database dataset large-data


    【解决方案1】:

    使用访问者。

    1. 即使每件商品只有一个人,也会有错误的记录,而客户找到它。因此,让他们将项目标记为“不合适”并发表简短评论。但别忘了,他们不是你的员工,不要问他们太多;看看 Facebook 的“赞”按钮,它很容易使用,并且不需要用户过多的精力。良好的性能/价格。如果 Facebook 中有一个必填字段,询问“你为什么喜欢它?”,那么任何人都不应使用该功能。

    2. 访问者还可以帮助您隐含方式:他们访问项目页面,并使用搜索功能(我指的是内部搜索引擎和外部搜索引擎,例如 Google)。您可以从访问者的活动中获取信息,例如,设置访问量最大的项目的顺序,那么您应该将更多的人力集中在列表的顶部,而不是“长尾”。

    【讨论】:

      【解决方案2】:

      由于这更多是关于管理团队/代码/数据而不是实施,而且由于您提到了亚马逊,我认为您会发现这很有用:http://highscalability.com/amazon-architecture

      特别是,点击 Werner Vogels 采访的链接。

      【讨论】:

        【解决方案3】:

        首先正确构建它。确保您使用所用数据库中可用的所有完整性检查方法,以适合您所存储的内容。上传失败比静默引入不良数据要好。

        然后,根据您自己的完整性检查,弄清楚您将要做什么。数据库完整性检查是一个好的开始,但很少是您所需要的。这也将迫使您从一开始就思考您正在使用什么类型的数据,您需要如何存储它,以及如何识别和标记或拒绝不良或有问题的数据。

        我无法告诉你我在尝试返工(或只是日常使用)充满垃圾数据的旧系统时所经历的痛苦程度。正确执行并预先对其进行彻底测试可能看起来很痛苦,但也可能如此,但回报是拥有一个在大多数情况下都能正常运行且几乎不需要干预的系统。

        至于链接,如果有人必须考虑和设计可扩展性,那就是 Google。你可能会觉得这很有启发性,它有一些好东西要记住:http://highscalability.com/google-architecture

        【讨论】:

          【解决方案4】:

          Master Data Management 是已提议的另一种替代方案。 Here 是 Microsoft 的文章“主数据管理的内容、原因和方式”。 Data stewards 被赋予了维护企业数据准确性的权利/责任。

          主要的扩展能力来自于使技术与业务保持一致,这样数据人员就不是唯一可以管理信息的人。工具和流程/程序使企业主能够帮助管理企业数据。

          【讨论】:

            【解决方案5】:

            与您的供应商分享日期。然后数据输入一次。

            如果很重要,就应该做一次,否则根本不做。

            【讨论】:

            • 如果我们这样做,我们就会倒闭。我们的业务是管理他们的数据(并将其发送给其他所有人,因此只完成一次)。
            【解决方案6】:

            我会大力投资于数据挖掘。尽可能多地获取有关您尝试销售的产品的信息。直接从供应商以及 Mitchell 和 Haynes 等汽车维修公司获取有关车辆的信息。

            一旦您知道所需的零件,就可以将这些零件编号与 Internet 上提供的零件编号进行交叉关联。还将这些零件编号与图像、评论和文章交叉关联。尝试在一个页面中聚合尽可能多的信息,并最终允许该页面被 google 索引。

            根据您的数据聚合结果,为每个产品分配一系列权重。根据您的权重值,将结果传递给员工并让他们与供应商协商价格,按原样创建页面并链接到来源(假设您会收到佣金),或者不出售零件.

            一旦您在一个地方拥有足够的产品,您就可以支持其他想要向您的网站添加其他产品的人。亚马逊上可用资源的广度在很大程度上归功于支持第三方卖家并允许这些卖家在亚马逊网站上上市。

            特别是在汽车行业,我认为它们在高质量索引方面具有很大的价值,它既可以在谷歌上找到,也可以被希望替换特定组件的人在逻辑上找到。您可能还想根据他们有兴趣购买的组件,研究通过 IP 地理位置销售/提供特定位置的服务。

            【讨论】:

              【解决方案7】:

              由 Google 等站点管理的大部分数据都来自用户。我输入我的数据并对其准确性负责。网站有他们的数据,这些数据是从网络上捕获的。搜索数据是从搜索中捕获的。这可能与您的尝试有很大不同。 Google 员工几乎不需要对其进行任何操作。

              使用制造商的 Feed 可以减少您的工作量。权衡是投资于数据转换软件。您可能希望捕获每个交叉引用的来源。这将在您获得更新时轻松重新加载。

              根据我的经验,您还会遇到交叉引用可能是单向的问题。 A可以代替B,但B不能代替A。

              只要手动输入,就会出错。您可以在界面中执行的任何检测这些错误的操作都可能值得付出努力。工作人员的输入量应呈线性增长。

              查看有关注意力周期的研究,以确定您是否可以采取措施提高输入和验证过程的质量。最近对安全扫描的研究表明,您可能希望在验证数据中生成周期性错误。

              正如其他人所指出的,让用户更容易标记错误是一个好主意。

              【讨论】:

                猜你喜欢
                • 2016-09-19
                • 1970-01-01
                • 2015-09-18
                • 2019-01-25
                • 1970-01-01
                • 1970-01-01
                • 2010-09-08
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多