问题标签 [query-engine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1188 浏览

javascript - 如何根据对象数组在 docpad 中查询文档

我有如下所示的 DocPad 文档:

如何查询meta.category数组中具有预定义 slug 值的所有文档?

0 投票
2 回答
265 浏览

javascript - 使用查询引擎的动态主干查询

我刚开始使用https://github.com/bevry/query-engine

我想知道如何在内部创建包含动态数据的查询。

这里有一个代码示例:

有任何想法吗?

dfsq 是对的

编辑:这可以扩展到对象属性:

0 投票
2 回答
129 浏览

docpad - 如何在 DocPad 中获取带有“write: false”的文件集合

我有这样的设置:

我希望将它们全部组合成目录portfolio.html中的一个大文件out/。我所有的项目文件都有write: false阻止它们被写入的元数据。

我已经尝试在我的这方面做一些变化,portfolio.html.eco但它们似乎都得到了一个空集合:

但我总是得到一个空列表。我也试过这个:

它确实为我提供了正确的内容,但尚未呈现。更新:它已被渲染,我使用的是body值而不是contentRendered.

谁能解释我在收藏版本中做错了什么?是否write: false阻止文档被包含在集合中?

0 投票
1 回答
227 浏览

docpad - 如何使用 Docpad 的查询引擎查询嵌套的元数据

例如,我有一个包含嵌套自定义元数据的文档,例如:

我试图找到这个文件:

但无济于事。

我做错了什么?

0 投票
1 回答
84 浏览

coffeescript - 如何使用模式匹配获取路径中的集合?

主要docpad.coffee{relativeDirPath: {'$in' : ['posts']}做标准的事情。

然而,{relativeDirPath: {'$in' : ['posts', /post\/[0-9]+/ ]}没有。

我正在尝试将以下目录结构中的文件添加到posts集合中:

...并且使用模式匹配relativeDirPath似乎是要走的路。但是,它与这些文件中的任何一个都不匹配。我怎样才能使这项工作?

0 投票
1 回答
114 浏览

javascript - Docpad的查询工具可以调用哪些方法?

在 Docpad 的文档中,它列出了一系列查询助手。这是链接。以下列表显示在底部。在这些帮助程序中,有@getCollection、@getFiles、@getFilesAtPath 等。但是没有任何迹象表明我能够找到这些帮助程序返回的对象类型,以及可以在它们上调用哪些类型的方法,如何检索数据等?Docpad 文档中有一些示例,例如初学者指南在“为我们的页面添加菜单列表”部分中展示了如何循环浏览一组 html 页面。从中可以看出,这里返回的对象有一个可以调用它们的 toJSON() 方法。但还有什么?该文档还解释了这些辅助函数是某种查询引擎对象,但是在(查询引擎文档)[ http://learn.bevry.me/queryengine/guide]中我找不到任何关于如何来操作这些对象。所以我的问题是:有谁知道这些对象的结构是什么以及如何操纵它们?有没有我在某处丢失的文件?

0 投票
1 回答
259 浏览

coffeescript - 在 Docpad 中过滤 @getFilesAtPath 结果

在 Docpad 中,以下代码(使用 Query-Engine 助手和eco)从目录树中提取文件名列表并将其 url 添加到数组中:

我如何将查询限制为文件的子集,只说 PNG?

0 投票
1 回答
51 浏览

docpad - 如何在 docpad 中组合查询?

我只需要获得上周的帖子。我在文档中找不到示例,对于测试,我使用Query-Engine 演示和以下代码:

如何获得此片段中的帖子?

0 投票
1 回答
551 浏览

plugins - 使用 Apache Drill 从 Hive 访问表时出错

我正在尝试使用 Drill 从配置单元中的表 abc 中读取数据。为此,我使用下面提到的配置创建了配置单元存储插件

有了这个我可以看到配置单元中的数据库,但是当我尝试访问特定数据库中的任何表时

它引发以下错误

org.apache.drill.common.exceptions.UserRemoteException:验证错误:从第 1 行第 15 列到第 1 行第 18 列:在“hive.db”SQL 查询中找不到对象“abc”空 [错误 ID:b6c56276-6255 -4b5b-a600-746dbc2f3d67 on centos2.example.com:31010] (org.apache.calcite.runtime.CalciteContextException) 从第 1 行第 15 列到第 1 行第 18 列:在 'hive.db 中找不到对象'abc' ' sun.reflect.NativeConstructorAccessorImpl.newInstance0():-2 sun.reflect.NativeConstructorAccessorImpl.newInstance():62 sun.reflect.DelegatingConstructorAccessorImpl.newInstance():45 java.lang.reflect.Constructor.newInstance():423 org. apache.calcite.runtime.Resources$ExInstWithCause.ex():463 org.apache.calcite.sql.SqlUtil.newContextException():800 org.apache.calcite.sql.SqlUtil.newContextException():788 org.apache.calcite.sql.validate.SqlValidatorImpl.newValidationError():4703 org.apache.calcite.sql.validate.IdentifierNamespace.resolveImpl():127 org.apache.calcite.sql.validate.IdentifierNamespace.validateImpl():177 org .apache.calcite.sql.validate.AbstractNamespace.validate():84 org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace():947 org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery():928 org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom():2972 org.apache.drill.exec.planner.sql.SqlConverter$DrillValidator.validateFrom():267 org.apache.calcite.sql.validate.SqlValidatorImpl。 validateFrom():2957 org.apache.drill.exec.planner.sql.SqlConverter$DrillValidator.validateFrom():267 org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelect():3216 org.apache.calcite.sql .validate.SelectNamespace。validateImpl():60 org.apache.calcite.sql.validate.AbstractNamespace.validate():84 org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace():947 org.apache.calcite.sql.validate.SqlValidatorImpl .validateQuery():928 org.apache.calcite.sql.SqlSelect.validate():226 org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression():903 org.apache.calcite.sql.validate.SqlValidatorImpl。 validate():613 org.apache.drill.exec.planner.sql.SqlConverter.validate():190 org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.validateNode():630 org.apache.drill .exec.planner.sql.handlers.DefaultSqlHandler.validateAndConvert():202 org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan():174 org.apache.drill.exec.planner.sql.DrillSqlWorker .getQueryPlan():146 org.apache.drill.exec.planner.sql.DrillSqlWorker。getPlan():84 org.apache.drill.exec.work.foreman.Foreman.runSQL():567 org.apache.drill.exec.work.foreman.Foreman.run():264 java.util.concurrent.ThreadPoolExecutor .runWorker():1149 java.util.concurrent.ThreadPoolExecutor$Worker.run():624 java.lang.Thread.run():748 由 (org.apache.calcite.sql.validate.SqlValidatorException) 对象'abc '未在 'hive.db' sun.reflect.NativeConstructorAccessorImpl.newInstance0():-2 sun.reflect.NativeConstructorAccessorImpl.newInstance():62 sun.reflect.DelegatingConstructorAccessorImpl.newInstance():45 java.lang.reflect.Constructor 中找到.newInstance():423 org.apache.calcite.runtime.Resources$ExInstWithCause.ex():463 org.apache.calcite.runtime.Resources$ExInst.ex():572 org.apache.calcite.sql.SqlUtil。 newContextException():800 org.apache.calcite.sql.SqlUtil。newContextException():788 org.apache.calcite.sql.validate.SqlValidatorImpl.newValidationError():4703 org.apache.calcite.sql.validate.IdentifierNamespace.resolveImpl():127 org.apache.calcite.sql.validate.IdentifierNamespace .validateImpl():177 org.apache.calcite.sql.validate.AbstractNamespace.validate():84 org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace():947 org.apache.calcite.sql.validate。 SqlValidatorImpl.validateQuery():928 org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom():2972 org.apache.drill.exec.planner.sql.SqlConverter$DrillValidator.validateFrom():267 org.apache.calcite .sql.validate.SqlValidatorImpl.validateFrom():2957 org.apache.drill.exec.planner.sql.SqlConverter$DrillValidator.validateFrom():267 org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelect():3216 org.apache。calcite.sql.validate.SelectNamespace.validateImpl():60 org.apache.calcite.sql.validate.AbstractNamespace.validate():84 org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace():947 org.apache .calcite.sql.validate.SqlValidatorImpl.validateQuery():928 org.apache.calcite.sql.SqlSelect.validate():226 org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression():903 org.apache。 calcite.sql.validate.SqlValidatorImpl.validate():613 org.apache.drill.exec.planner.sql.SqlConverter.validate():190 org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.validateNode( ):630 org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.validateAndConvert():202 org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan():174 org.apache.drill .exec.planner.sql.DrillSqlWorker.getQueryPlan():146 org.apache。Drill.exec.planner.sql.DrillSqlWorker.getPlan():84 org.apache.drill.exec.work.foreman.Foreman.runSQL():567 org.apache.drill.exec.work.foreman.Foreman.run( ):264 java.util.concurrent.ThreadPoolExecutor.runWorker():1149 java.util.concurrent.ThreadPoolExecutor$Worker.run():624 java.lang.Thread.run():748

0 投票
1 回答
711 浏览

azure-data-lake - 使用 Azure Data Lake 的 Presto 查询引擎

我需要部署一个 presto 服务器,它可以帮助我以 Avro 文件格式查询存储在 ADLS 中的数据。我已经阅读了本教程,似乎 Hive 被用作 presto 中的目录/连接器来从 ADLS 查询。我可以绕过 Hive 并使用任何连接器从 ADLS 中提取数据吗?