我正在编码一个从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/