Manticoresearch 最佳实践遵循的一些事项

实时表 (Real-time table)vs 普通表(Plain Table)
  • 实时表格允许添加、更新和删除文档,并立即提供更改。
  • 普通表是一种几乎不可变的数据结构,也是实时表使用的基本元素。Plain table 存储一组文档、它们的通用字典和索引设置。一个实时表可以由多个普通表(块)组成,但除此之外,Manticore 还提供了使用工具索引器构建普通表的直接访问。当你的数据大部分是不可变的时,这是有道理的,因此你不需要一个实时表。

实时模式与普通模式

Manticore Search 有两种工作模式:

  • 实时模式(RT 模式)。这是默认的,允许命令式地管理你的数据模式:
    • 允许使用 SQL 命令 // 及其在非 SQL 客户端中的等效命令在线管理数据架构CREATE ALTER DROP TABLE
    • 在配置文件中,您只需定义与服务器相关的设置,包括 data_dir
  • Plain 模式允许在配置文件中定义数据模式,即提供声明式模式管理。这在三种情况下是有道理的:
    • 当您只处理普通表格时
    • 或者,当数据架构非常稳定且不需要复制时(因为它仅在 RT 模式下可用)
    • 当您必须使数据架构可移植时(例如,为了更轻松地在新服务器上部署它)

你不能将这两种模式组合在一起,需要通过在配置文件中指定 data_dir 来决定要遵循哪一种(这是默认行为)。如果您不确定,我们的建议是遵循 RT 模式,就好像您需要一个普通表一样,您可以使用单独的普通表配置来构建它并导入到您的主 Manticore 实例。

实时表可以在 RT 和普通模式下使用。在 RT 模式下,实时表是通过命令定义的,而在 plain 模式下,它是在配置文件中定义的。普通(脱机)表仅在普通模式下受支持。在 RT 模式下无法创建普通表,但在普通模式下创建的现有普通表可以转换为实时表,并在 RT 模式下导入

SQL 与 JSON

Manticore 提供了多种方式和接口来管理数据库模式和数据,但主要有以下两种:

  • SQL。这是一种原生的 Manticore 语言,支持 Manticore 的所有功能。最佳做法是使用 SQL 执行以下作
    • 管理您的数据库模式(schemas)并执行其他 DBA 例程,因为这是最简单的方法
    • 设计查询,因为 SQL 比 JSON DSL 更接近自然语言,这在设计新内容时非常重要。您可以通过任何 MySQL 客户端或 /sql 使用 Manticore SQL。
  • JSON 的 JSON 格式。大多数功能也可以通过 JSON 域特定语言获得。当您将 Manticore 与应用程序集成时,这尤其有用,因为使用 JSON 时,您可以比使用 SQL 更多地以编程方式执行此作。最佳实践是首先探索如何通过 SQL 执行某些作,然后使用 JSON 将其集成到您的应用程序中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值