我正在编码一个从Druid数据库生成报告的应用程序。我的集成测试需要从该数据库读取数据。

我目前的方法涉及为每个测试创建综合数据。但是,我无法从数据库中删除创建的数据(通过删除条目或完全删除架构)。尝试this,但在禁用该段并触发kill任务后仍返回数据。

我认为或者我的方法完全错误,或者有一种方法可以从数据库中删除无法找到的信息。

最佳答案

您可以通过以下两种方法来做到这一点

方法1:


禁用细分(已使用= 0)
针对该细分受众群执行杀死任务
有加载和删除规则


请参阅:http://druid.io/docs/latest/ingestion/tasks.html(查找破坏的段)

方法2 :(建议在建立生产之前进行集成测试):


停止协调器节点并删除druid_segments中的所有整体
   元数据存储中的表
停止历史节点并删除druid.segmentCache.locations指向历史节点的目录内的所有内容
开始协调器和历史节点


请记住,这将从druid集群中删除所有内容。

关于scala - 如何根据Druid编写集成测试?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50622317/

10-11 15:43