[英]Apache Ignite query / index
我對使用Apache Ignite建立索引有一個特殊的問題。
我需要在不“知道”架構的情況下查詢緩存。 由於我目前沒有Java類定義,因此沒有可用的注釋。 但是Apache Ignite似乎需要注釋才能識別字段。
有沒有一種在運行時定義可查詢字段的方法?
我之所以這樣問,是因為我正在構建一個與技術無關的應用程序,並且在運行時插入了專門的類。 對我來說,另一個問題是擴展Apache Ignite的類並定義偽字段,只是為了使“字段”(假設它不是原始字段...)在Apache Ignite中可見。
有人有同樣的“問題”嗎?
原始類命令:
public class Command {
private String commandName;
public void setCommandName(String commandName) {
this.commandName = commandName;
}
public String getCommandName(){
return this.commandName;
}
}
Ignite SQL的擴展Command類使用:
public class IgniteCommand extends Command{
@QuerySqlField (name="name", index = true)
private String _commandName;
@Override
public void setCommandName(String commandName) {
super.setCommandName(commandName);
this._commandName = getCommandName();
}
}
上面的代碼對我來說很好。
您可以在運行時但在啟動緩存之前配置查詢實體。 參見docs [1]中的Spring XML配置示例。 您可以通過編程進行相同的操作。
您還可以使用DDL動態創建索引。 參見[2]。
[1] https://apacheignite.readme.io/docs/indexes#queryentity-based-configuration [2] https://apacheignite.readme.io/docs/distributed-ddl#section-create-index
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.