|
Post by account_disabled on Jan 10, 2024 22:50:18 GMT -8
对于第二阶段,查询将包含 个 语句,其中每个国家 地区的 语句将转向特定列。查询会很大,但 支持最大 的查询大小。我们可以将这两个步骤组合成一个查询,并在每个 语句中连接起来。使用策略模板控制数据分组 通过分享:工程 无评论 爱 作者: 和 的一个重要产品是社交数据源,我们的客户使用它来访问互联网上的社交信号,并使用有关世界各地生成的社交事件的国家级数据。社交数据源是一个文件,其中包含用户查看过的每个网页的事件。该文件每天包含大约 亿个事件。 事件包含 、地理位置和时间戳等信息。一原籍国将事件放入多个文 巴西电话号码数据 件中,而不是单个文件中。 我们用策略模式来解决这个问题。这使我们能够支持新功能并保留原始功能。策略模式允许一个对象根据遵循接口的另一个对象来定义其部分行为。我们通过创建两个新对象来使用策略模式。其中一个人有一种方法可以扭转整个国家的局势。另一个有一个方法,无论提供什么事件,它总是返回一个空字符串。 这是建立这个国家的战略: 这是始终返回空字符串的策略。 下面的代码显示了如何在创建社交数据源的应用程序中使用这些策略。该应用程序从 服务器获取日志文件,向每个事件添加信息并生成包含添加信息的文件。您可以看到代码第 行中使用的策略模式。应用程序将生成多个文件或单个文件,具体取决于 方法中传递的策略。 策略的主要替代方案是 。 比策略更简洁,但不容易支持添加方法或状态。我们还希望将每个策略分离到自己的模块中,并允许在命令行上指定策略。有了这个要求, 就变得和策略一样冗长,所以我们最终使用了策略。
|
|