问题标签 [arangodb-php]
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.
arangodb-php - 使用 PHP 将大量循环/批量插入到 ArrangoDB
我希望使用 PHP 将 180-250k 文档批量写入 ArrangoDB 集合。
添加单个文档非常容易。将文档插入循环并进行 1000 次单独插入同样容易。但是,这肯定不是批量插入数千个文档的最优化和最合适的方法吗?
在 PHP 中执行此操作的最佳方法是什么?可以对设置进行哪些调整来提高这种要求的性能?将 100k 批文档写入集合的最快方法是什么?
任何见解,想法和帮助将不胜感激!
我正在使用 PHP 7、ArrangoDB 3.4
php - 如何为 arangodb-php 中的流式事务增加“maxTransactionSize”
文档说作为事务属性传递(对 的调用/begin
):
maxTransactionSize:以字节为单位的事务大小限制。仅由 RocksDB 存储引擎授予。
我设法做到了这一点,尽管php
-client 忽略了该属性,通过在我将事务实例交给处理程序之前手动设置它:
这是直接在调用之前var_dump
的事务属性 ( ) :$trx->attributes
begin
但交易失败:
错误:AQL:中止事务,因为达到了 134217728 字节的最大事务大小限制(执行时)
我错过了什么/做错了什么?
我在 3.5.4 和 3.6.1 上对此进行了测试,结果相同。
arangodb - arangodb PHP 搜索具有未定义数量过滤器的文档
我正在尝试用 PHP 编写一个 AQL 查询来过滤集合中的文档。过滤器参数的数量仅在运行时确定。编写该代码的最有效方法是什么。
例如,一个查询可能是
- FOR u IN users FILTER u.id == @id RETURN u
另一个可能是 2. FOR u IN users FILTER u.id == @id && u.loc = @location RETURN u
可能有很多组合,所以我必须在一个函数中处理所有情况。
此时我唯一的方法是连接多个字符串以创建最终的查询字符串。