Karp后端

karp-backend-5的Python项目详细描述


卡普后端

主人

Build Statuscodecov

此包-代码和文档-仍在构建中。

Karp是Språkbanken的词汇平台。 现在迁移到了python3.6+。在

码头卡普

为了便于测试,使用Docker来运行Karp-b

  • 按照给定的步骤here

  • 运行docker-compose up -d

  • 通过运行curl localhost:8081/app/test来测试它

如果您想使用没有Docker的卡普,请继续阅读。

先决条件

安装

Karp使用python的virtuals envs。要开始跑步:

  • 运行make install
  • 或者:
    1. 使用python3 -m venv venv创建虚拟环境。在
    2. 使用source venv/bin/activate激活虚拟环境。在
    3. pip install -r requirements.txt

配置

设置环境变量KARP5_INSTANCE_PATHKARP5_ELASTICSEARCH_URL

  1. 使用export VAR=value
  2. 或者使用VAR=value在克隆路径的根目录中创建一个文件.env
  3. KARP5_INSTANCE_PATH-配置所在的路径。如果已克隆此repo,则可以使用/path/to/karp-backend/。在
  4. KARP5_ELASTICSEARCH_URL-elasticsearch的url。通常localhost:9200

config.json.example复制到config.json并进行更改。 您还需要为您的词典进行配置。 阅读更多here。在

测试

TODO:做更多的测试! 通过键入:make test运行测试

启动karp-backend以测试它是否正常工作 make run或{}

已知的错误

执行时,statistics调用的计数可能不准确 大索引上的子聚集(多个存储桶),除非查询 限制搜索空间。使用 ^{}模式并不(总是)有帮助。在

可能的解决方法:

  • 请改用composite aggregation,但这不适用于筛选。在
  • 设置一个更大的碎片大小(27000适用于saldo),但这可能会破坏您的ES集群。在
  • 拥有较小的索引(每个索引一个词典),但这对于大词典或统计数据来说并没有帮助。在
  • 不允许深度超过2的子聚集。改变size也无济于事。在

弹性搜索

如果保存因Database Exception: Error during update. Message: TransportError(403, u'cluster_block_exception', u'blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];').而停止工作,则需要解锁相关的ES索引。在

你就是这样做的:

对与您相关的hostport的每个组合重复此操作。但是每个集群只需要执行一次。在

  • 检查是否有索引被锁定:curl <host>:<port>/_all/_settings/index.blocks*
    • 如果全部打开,则Elasticsearch用{}进行回答
    • 否则它的答案是{<index>: { "settings": { "index": { "blocks": {"read_only_allow_delete": "true"} } } }, ... }
  • {and{27}上的所有索引都已锁定:
    • curl -X PUT <host>:<port>/_all/_settings -H 'Content-Type: application' -d '{"index.blocks.read_only_allow_delete": null}'

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何读取、验证和移动数据。csv文件?   用于在线蛇游戏的java解析scaing   java JavaFX:在窗口上移动元素(阶段)调整大小   mysql如何使用java中的IOUtils包在jsp中显示多个图像?   Java dateFormat不可解析日期异常   spring mvc java。执行单元测试时lang.AssertionError   java在一个webapp中运行多个调度器有什么问题吗?   JAVAlang.ArrayIndexOutofBounds异常:1未来。get()多线程   java使用MDC或spring boot中的任何过滤器屏蔽日志消息中的密码,而不使用logback。xml文件   与应用服务器的java AJP和SSL通信   java Hibernate更新列表中的特定对象   Java小程序:使用keylistener移动多边形   java访问是一个独立于MainActivity的进程   来自服务器的java重复密钥或完整性约束冲突消息:“列“volume”不能为null”   java是否有任何方法可以确保在Flink on job cancel with savepoint上通知所有检查点侦听器检查点完成?