发布于: Aug 18, 2022

如何利用大数据搜索引擎推动搜索流程的简化与现代化是一项新的探索,不仅许多搜索引擎公司致力于此,一些房产公司等拥有庞大数据流的企业也在不断探索中。
Amazon Elasticsearch Service (Amazon ES)是一项全托管服务,能够帮助用户轻松在 Amazon Web Services 之上大规模部署、保护并操作 Elasticsearch。作为一项广受欢迎的服务,Amazon ES 支持着不同客户针对不同用例将搜索功能集成到自己的应用程序当中。
Compass 公司则运用包括 Amazon ES 在内的一系列 Amazon Web Services 服务重构自己的搜索解决方案,借此为客户提供高质量的房产搜索与结果保存服务。
在本文中,我们将了解 Compass 的搜索解决方案如何逐步演变、他们在不同架构下面对的挑战与收益,以及 Amazon ES 如何为他们提供长期可扩展的解决方案。我们还将探讨如何使用 Amazon Managed Streaming for Apache Kafka 为房地产列表数据建立起事件驱动型实时流式功能。相关案例极具参考价值,您可以将解决方案直接引入自己的类似用例当中。

Amazon ES 能够帮助大家轻松部署、操作及扩展 Elasticsearch,借此实现日志分析、应用程序监控以及交互式搜索等各类功能。这是一项全托管服务,不仅继承了 Elasticsearch 易于使用的 API 与实时功能,同时也能够充分匹配实际应用场景对可用性、可扩展性以及安全性提出的要求。Amazon ES 还能够与其他 Amazon Web Services 服务(包括 Amazon Kinesis、Amazon Web Services Lambda 以及 Amazon CloudWatch 等)以及多种第三方工具(例如 Logstash 与 Kibana)实现内置集成,帮助用户快速将原始数据转换为具备可行性的洞见结论。

Amazon ES 还具备以下优势:

  • 全托管 – 在数分钟之内启动生产级集群,无需额外的补丁、版本控制与备份操作。
  • 访问全部数据 – 以集中方式统一实现数据的获取、保留、关联与分析。
  • 可扩展性 – 只需单击几下或执行一次 API 调用,即可快速调整集群大小。
  • 安全性 – 部署在您的 VPC 内,并使用安全组及 Amazon Web Services 身份与访问管理(Amazon Web Services Identity and Access Management,简称 IAM)策略限制访问活动。
  • 高可用性 – 可实现跨可用区复制,且具备监控与自动自我修复等功能。
  • 紧密集成 – 无缝实现数据获取、安全保护、审计与编排。

Amazon MSK 是一项全托管服务,能够帮助用户轻松构建并运行通过 Apache Kafka 处理流式数据的应用程序。Apache Kafka 是一套开源平台,可用于构建各类实时流数据管道与应用程序。在 Amazon MSK 的支持下,您可以使用原生 Apache Kafka API 填充数据湖,在数据库之间流式传输变更,并为机器学习与分析应用程序提供底层支持。

Urban Compass 有限公司(简称 Compass)是一家全球房地产科技企业,提供一个可支持房地产资产购买、租赁与出售的在线平台。
援引其自我介绍:“Compass 打造出一套史无前例的现代房地产平台,将行业顶尖人才与科技结合起来,旨在实现搜索与销售体验的智能化与无缝化。Compass 业务遍及 24 个市场,今年上半年的销售额超过 20 亿美元,拥有 2300 名员工与 15000 多名代理商。Compass 的愿景是为全球各地的用户找到心仪的房屋。”

搜索可以说是 Compass 公司的一大核心业务,用于帮助网站访客及代理商在其平台当中查找符合要求的房产。Compass 平台包含以下搜索组件:

  • 搜索服务 – 广泛使用 Amazon ES 对地方性房产数据(涵盖成千上万个属性)进行高级搜索。数据首先在 Apache Spark 中进行处理,而后被保存在 Amazon Aurora PostgreSQL 当中;搜索服务组件随后会通过 Amazon MSK 获取这些数据。
  • 代理与消费者搜索 – 建立在搜索服务之上的前端,用于充当各代理商、消费者以及 Compass 搜索服务之间的接口。其内置于 React 当中,允许用户无缝搜索房产数据并访问本地过滤器。
  • 保存搜索本身 – 作为消费者,大家可以运行查询并保存相应结果。已保存的搜索索引将配合搜索参数进行更新。当有新列表进入系统(通过列表 Elasticsearch 索引进行编排)时,Compass 搜索组件将使用 Elasticsearch 的过滤功能识别与新列表相匹配的已保存搜索本身,并将新的房产列表以通知方式向用户发布。

相关文章