Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
SkyWalking
提交
6f7ac213
S
SkyWalking
项目概览
apache
/
SkyWalking
上一次同步 1 年多
通知
302
Star
21345
Fork
6091
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
SkyWalking
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
6f7ac213
编写于
1月 05, 2023
作者:
G
Gao Hongtao
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/banyandb' into banyandb
上级
f0ef21f4
19628d3b
变更
26
隐藏空白更改
内联
并排
Showing
26 changed file
with
63 addition
and
34 deletion
+63
-34
oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/OALRuntime.java
...rc/main/java/org/apache/skywalking/oal/rt/OALRuntime.java
+4
-0
oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/SourceColumn.java
...ava/org/apache/skywalking/oal/rt/parser/SourceColumn.java
+8
-6
oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/SourceColumnsFactory.java
...apache/skywalking/oal/rt/parser/SourceColumnsFactory.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgFunction.java
.../server/core/analysis/meter/function/avg/AvgFunction.java
+1
-0
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgLabeledFunction.java
.../core/analysis/meter/function/avg/AvgLabeledFunction.java
+1
-0
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/latest/LatestFunction.java
...r/core/analysis/meter/function/latest/LatestFunction.java
+1
-0
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sum/SumFunction.java
.../server/core/analysis/meter/function/sum/SumFunction.java
+1
-0
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinFunction.java
.../analysis/meter/function/sumpermin/SumPerMinFunction.java
+1
-0
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinLabeledFunction.java
...is/meter/function/sumpermin/SumPerMinLabeledFunction.java
+1
-0
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
...skywalking/oap/server/core/source/DefaultScopeDefine.java
+2
-2
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Endpoint.java
...rg/apache/skywalking/oap/server/core/source/Endpoint.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/MQEndpointAccess.java
...e/skywalking/oap/server/core/source/MQEndpointAccess.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDefaultColumn.java
...skywalking/oap/server/core/source/ScopeDefaultColumn.java
+12
-2
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstance.java
...he/skywalking/oap/server/core/source/ServiceInstance.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRCPU.java
...walking/oap/server/core/source/ServiceInstanceCLRCPU.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRGC.java
...ywalking/oap/server/core/source/ServiceInstanceCLRGC.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRThread.java
...king/oap/server/core/source/ServiceInstanceCLRThread.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMCPU.java
...walking/oap/server/core/source/ServiceInstanceJVMCPU.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMClass.java
...lking/oap/server/core/source/ServiceInstanceJVMClass.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMGC.java
...ywalking/oap/server/core/source/ServiceInstanceJVMGC.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemory.java
...king/oap/server/core/source/ServiceInstanceJVMMemory.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java
.../oap/server/core/source/ServiceInstanceJVMMemoryPool.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMThread.java
...king/oap/server/core/source/ServiceInstanceJVMThread.java
+1
-1
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/ModelColumn.java
...skywalking/oap/server/core/storage/model/ModelColumn.java
+3
-0
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/StorageModels.java
...ywalking/oap/server/core/storage/model/StorageModels.java
+1
-1
oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/MetadataRegistry.java
.../oap/server/storage/plugin/banyandb/MetadataRegistry.java
+14
-10
未找到文件。
oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/OALRuntime.java
浏览文件 @
6f7ac213
...
...
@@ -275,6 +275,10 @@ public class OALRuntime implements OALEngine {
banyanShardingKeyAnnotation
.
addMemberValue
(
"index"
,
new
IntegerMemberValue
(
constPool
,
0
));
annotationsAttribute
.
addAnnotation
(
banyanShardingKeyAnnotation
);
}
if
(
field
.
isBanyandbNoIndexing
())
{
Annotation
banyandbNoIndexingAnnotation
=
new
Annotation
(
BanyanDB
.
NoIndexing
.
class
.
getName
(),
constPool
);
annotationsAttribute
.
addAnnotation
(
banyandbNoIndexingAnnotation
);
}
newField
.
getFieldInfo
().
addAttribute
(
annotationsAttribute
);
}
catch
(
CannotCompileException
e
)
{
...
...
oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/SourceColumn.java
浏览文件 @
6f7ac213
...
...
@@ -34,14 +34,16 @@ public class SourceColumn {
private
int
length
;
private
String
fieldSetter
;
private
String
fieldGetter
;
private
boolean
banyandbNoIndexing
;
public
SourceColumn
(
String
fieldName
,
String
columnName
,
Class
<?>
type
,
boolean
isID
,
int
length
)
{
public
SourceColumn
(
String
fieldName
,
String
columnName
,
Class
<?>
type
,
boolean
isID
,
int
length
,
boolean
banyandbNoIndexing
)
{
this
.
fieldName
=
fieldName
;
this
.
columnName
=
columnName
;
this
.
type
=
type
;
this
.
typeName
=
type
.
getName
();
this
.
isID
=
isID
;
this
.
length
=
length
;
this
.
banyandbNoIndexing
=
banyandbNoIndexing
;
this
.
fieldGetter
=
ClassMethodUtil
.
toGetMethod
(
fieldName
);
this
.
fieldSetter
=
ClassMethodUtil
.
toSetMethod
(
fieldName
);
...
...
@@ -79,7 +81,7 @@ public class SourceColumn {
@Override
public
String
toString
()
{
return
"SourceColumn{"
+
"fieldName='"
+
fieldName
+
'\''
+
", columnName='"
+
columnName
+
'\''
+
", type="
+
type
+
", isID="
+
isID
+
'}'
;
return
"SourceColumn{"
+
"fieldName='"
+
fieldName
+
'\''
+
", columnName='"
+
columnName
+
'\''
+
", type="
+
type
+
", isID="
+
isID
+
", banyandbNoIndexing="
+
banyandbNoIndexing
+
"}"
;
}
@Override
...
...
@@ -89,13 +91,13 @@ public class SourceColumn {
if
(
o
==
null
||
getClass
()
!=
o
.
getClass
())
return
false
;
SourceColumn
column
=
(
SourceColumn
)
o
;
return
isID
==
column
.
isID
&&
Objects
.
equals
(
fieldName
,
column
.
fieldName
)
&&
Objects
.
equals
(
columnName
,
column
.
column
Name
)
&&
Objects
.
equals
(
type
,
column
.
type
)
&&
Objects
.
equals
(
typeName
,
column
.
typeName
)
&&
Objects
.
equals
(
fieldSetter
,
column
.
fieldSetter
)
&&
Objects
.
equals
(
fieldGetter
,
column
.
fieldGetter
);
return
isID
==
column
.
isID
&&
banyandbNoIndexing
==
column
.
isBanyandbNoIndexing
()
&&
Objects
.
equals
(
fieldName
,
column
.
field
Name
)
&&
Objects
.
equals
(
columnName
,
column
.
columnName
)
&&
Objects
.
equals
(
type
,
column
.
type
)
&&
Objects
.
equals
(
typeName
,
column
.
typeName
)
&&
Objects
.
equals
(
fieldSetter
,
column
.
fieldSetter
)
&&
Objects
.
equals
(
fieldGetter
,
column
.
fieldGetter
);
}
@Override
public
int
hashCode
()
{
return
Objects
.
hash
(
fieldName
,
columnName
,
type
,
typeName
,
isID
,
fieldSetter
,
fieldGetter
);
return
Objects
.
hash
(
fieldName
,
columnName
,
type
,
typeName
,
isID
,
fieldSetter
,
fieldGetter
,
banyandbNoIndexing
);
}
}
oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/SourceColumnsFactory.java
浏览文件 @
6f7ac213
...
...
@@ -31,7 +31,7 @@ public class SourceColumnsFactory {
for
(
ScopeDefaultColumn
defaultColumn
:
columns
)
{
sourceColumns
.
add
(
new
SourceColumn
(
defaultColumn
.
getFieldName
(),
defaultColumn
.
getColumnName
(),
defaultColumn
.
getType
(),
defaultColumn
.
isID
(),
defaultColumn
.
getLength
()));
.
getType
(),
defaultColumn
.
isID
(),
defaultColumn
.
getLength
()
,
defaultColumn
.
isBanyandbNoIndexing
()
));
}
return
sourceColumns
;
}
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgFunction.java
浏览文件 @
6f7ac213
...
...
@@ -61,6 +61,7 @@ public abstract class AvgFunction extends Meter implements AcceptableValue<Long>
@Setter
@Getter
@Column
(
columnName
=
InstanceTraffic
.
SERVICE_ID
)
@BanyanDB
.
NoIndexing
private
String
serviceId
;
@Getter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgLabeledFunction.java
浏览文件 @
6f7ac213
...
...
@@ -60,6 +60,7 @@ public abstract class AvgLabeledFunction extends Meter implements AcceptableValu
@Setter
@Getter
@Column
(
columnName
=
InstanceTraffic
.
SERVICE_ID
)
@BanyanDB
.
NoIndexing
private
String
serviceId
;
@Getter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/latest/LatestFunction.java
浏览文件 @
6f7ac213
...
...
@@ -58,6 +58,7 @@ public abstract class LatestFunction extends Meter implements AcceptableValue<Lo
@Setter
@Getter
@Column
(
columnName
=
InstanceTraffic
.
SERVICE_ID
)
@BanyanDB
.
NoIndexing
private
String
serviceId
;
@Getter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sum/SumFunction.java
浏览文件 @
6f7ac213
...
...
@@ -55,6 +55,7 @@ public abstract class SumFunction extends Meter implements AcceptableValue<Long>
@Setter
@Getter
@Column
(
columnName
=
InstanceTraffic
.
SERVICE_ID
)
@BanyanDB
.
NoIndexing
private
String
serviceId
;
@Getter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinFunction.java
浏览文件 @
6f7ac213
...
...
@@ -56,6 +56,7 @@ public abstract class SumPerMinFunction extends Meter implements AcceptableValue
@Setter
@Getter
@Column
(
columnName
=
InstanceTraffic
.
SERVICE_ID
)
@BanyanDB
.
NoIndexing
private
String
serviceId
;
@Getter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinLabeledFunction.java
浏览文件 @
6f7ac213
...
...
@@ -55,6 +55,7 @@ public abstract class SumPerMinLabeledFunction extends Meter implements Acceptab
@Setter
@Getter
@Column
(
columnName
=
InstanceTraffic
.
SERVICE_ID
)
@BanyanDB
.
NoIndexing
private
String
serviceId
;
@Getter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
浏览文件 @
6f7ac213
...
...
@@ -203,7 +203,7 @@ public class DefaultScopeDefine {
if
(
virtualColumn
!=
null
)
{
scopeDefaultColumns
.
add
(
new
ScopeDefaultColumn
(
virtualColumn
.
fieldName
(),
virtualColumn
.
columnName
(),
virtualColumn
.
type
(),
virtualColumn
.
isID
(),
virtualColumn
.
length
()));
.
type
(),
virtualColumn
.
isID
(),
virtualColumn
.
length
()
,
false
));
}
Field
[]
scopeClassField
=
originalClass
.
getDeclaredFields
();
if
(
scopeClassField
!=
null
)
{
...
...
@@ -215,7 +215,7 @@ public class DefaultScopeDefine {
scopeDefaultColumns
.
add
(
new
ScopeDefaultColumn
(
field
.
getName
(),
definedByField
.
columnName
(),
field
.
getType
(),
false
,
definedByField
.
length
()
definedByField
.
length
()
,
definedByField
.
requiredNoIndexingForBanyanDB
()
));
}
}
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Endpoint.java
浏览文件 @
6f7ac213
...
...
@@ -54,7 +54,7 @@ public class Endpoint extends Source {
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"name"
,
requireDynamicActive
=
true
)
private
String
name
;
@Getter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/MQEndpointAccess.java
浏览文件 @
6f7ac213
...
...
@@ -43,7 +43,7 @@ public class MQEndpointAccess extends Source {
private
String
entityId
;
@Getter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDefaultColumn.java
浏览文件 @
6f7ac213
...
...
@@ -34,14 +34,16 @@ public class ScopeDefaultColumn {
private
String
columnName
;
private
Class
<?>
type
;
private
boolean
isID
;
private
boolean
banyandbNoIndexing
;
private
int
length
;
public
ScopeDefaultColumn
(
String
fieldName
,
String
columnName
,
Class
<?>
type
,
boolean
isID
,
int
length
)
{
public
ScopeDefaultColumn
(
String
fieldName
,
String
columnName
,
Class
<?>
type
,
boolean
isID
,
int
length
,
boolean
banyandbNoIndexing
)
{
this
.
fieldName
=
fieldName
;
this
.
columnName
=
columnName
;
this
.
type
=
type
;
this
.
isID
=
isID
;
this
.
length
=
length
;
this
.
banyandbNoIndexing
=
banyandbNoIndexing
;
}
@Target
({
ElementType
.
FIELD
})
...
...
@@ -52,7 +54,7 @@ public class ScopeDefaultColumn {
/**
* Dynamic active means this column is only activated through core setting explicitly.
*
* @return
* @return
false: Inactive dynamic column. true: Active dynamic column.
*/
boolean
requireDynamicActive
()
default
false
;
...
...
@@ -60,6 +62,14 @@ public class ScopeDefaultColumn {
* Define column length, only effective when the type is String.
*/
int
length
()
default
256
;
/**
* Active indexing for a column(tag) in BanyanDB.
*
* @return false: Indexing the column, true: No indexing the column.
*/
boolean
requiredNoIndexingForBanyanDB
()
default
false
;
}
@Target
({
ElementType
.
TYPE
})
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstance.java
浏览文件 @
6f7ac213
...
...
@@ -47,7 +47,7 @@ public class ServiceInstance extends Source {
}
@Getter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRCPU.java
浏览文件 @
6f7ac213
...
...
@@ -53,7 +53,7 @@ public class ServiceInstanceCLRCPU extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRGC.java
浏览文件 @
6f7ac213
...
...
@@ -53,7 +53,7 @@ public class ServiceInstanceCLRGC extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRThread.java
浏览文件 @
6f7ac213
...
...
@@ -53,7 +53,7 @@ public class ServiceInstanceCLRThread extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMCPU.java
浏览文件 @
6f7ac213
...
...
@@ -50,7 +50,7 @@ public class ServiceInstanceJVMCPU extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMClass.java
浏览文件 @
6f7ac213
...
...
@@ -50,7 +50,7 @@ public class ServiceInstanceJVMClass extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMGC.java
浏览文件 @
6f7ac213
...
...
@@ -50,7 +50,7 @@ public class ServiceInstanceJVMGC extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemory.java
浏览文件 @
6f7ac213
...
...
@@ -50,7 +50,7 @@ public class ServiceInstanceJVMMemory extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java
浏览文件 @
6f7ac213
...
...
@@ -50,7 +50,7 @@ public class ServiceInstanceJVMMemoryPool extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMThread.java
浏览文件 @
6f7ac213
...
...
@@ -50,7 +50,7 @@ public class ServiceInstanceJVMThread extends Source {
private
String
serviceName
;
@Getter
@Setter
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
)
@ScopeDefaultColumn
.
DefinedByField
(
columnName
=
"service_id"
,
requiredNoIndexingForBanyanDB
=
true
)
private
String
serviceId
;
@Getter
@Setter
...
...
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/ModelColumn.java
浏览文件 @
6f7ac213
...
...
@@ -104,6 +104,9 @@ public class ModelColumn {
* @return true means this column should be indexed, as it would be a query condition.
*/
public
boolean
shouldIndex
()
{
if
(
banyanDBExtension
!=
null
)
{
return
banyanDBExtension
.
shouldIndex
();
}
return
!
storageOnly
;
}
}
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/StorageModels.java
浏览文件 @
6f7ac213
...
...
@@ -211,7 +211,7 @@ public class StorageModels implements IModelManager, ModelCreator, ModelManipula
BanyanDBExtension
banyanDBExtension
=
new
BanyanDBExtension
(
banyanDBSeriesID
==
null
?
-
1
:
banyanDBSeriesID
.
index
(),
banyanDBGlobalIndex
!=
null
,
banyanDBNoIndex
==
null
&&
column
.
storageOnly
(),
banyanDBNoIndex
==
null
&&
!
column
.
storageOnly
(),
banyanDBIndexRule
==
null
?
BanyanDB
.
IndexRule
.
IndexType
.
INVERTED
:
banyanDBIndexRule
.
indexType
(),
banyanDBMeasureField
!=
null
);
...
...
oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/MetadataRegistry.java
浏览文件 @
6f7ac213
...
...
@@ -89,11 +89,14 @@ public enum MetadataRegistry {
.
collect
(
Collectors
.
toMap
(
modelColumn
->
modelColumn
.
getColumnName
().
getStorageName
(),
Function
.
identity
()));
// parse and set sharding keys
List
<
String
>
shardingColumns
=
parseEntityNames
(
modelColumnMap
);
if
(
shardingColumns
.
isEmpty
())
{
throw
new
IllegalStateException
(
"sharding keys of model[stream."
+
model
.
getName
()
+
"] must not be empty"
);
}
// parse tag metadata
// this can be used to build both
// 1) a list of TagFamilySpec,
// 2) a list of IndexRule,
List
<
TagMetadata
>
tags
=
parseTagMetadata
(
model
,
schemaBuilder
);
List
<
TagMetadata
>
tags
=
parseTagMetadata
(
model
,
schemaBuilder
,
shardingColumns
);
List
<
TagFamilySpec
>
tagFamilySpecs
=
schemaMetadata
.
extractTagFamilySpec
(
tags
,
false
);
// iterate over tagFamilySpecs to save tag names
for
(
final
TagFamilySpec
tagFamilySpec
:
tagFamilySpecs
)
{
...
...
@@ -113,9 +116,6 @@ public enum MetadataRegistry {
.
collect
(
Collectors
.
toList
());
final
Stream
.
Builder
builder
=
Stream
.
create
(
schemaMetadata
.
getGroup
(),
schemaMetadata
.
name
());
if
(
shardingColumns
.
isEmpty
())
{
throw
new
IllegalStateException
(
"sharding keys of model[stream."
+
model
.
getName
()
+
"] must not be empty"
);
}
builder
.
setEntityRelativeTags
(
shardingColumns
);
builder
.
addTagFamilies
(
tagFamilySpecs
);
builder
.
addIndexes
(
indexRules
);
...
...
@@ -137,7 +137,7 @@ public enum MetadataRegistry {
// this can be used to build both
// 1) a list of TagFamilySpec,
// 2) a list of IndexRule,
MeasureMetadata
tagsAndFields
=
parseTagAndFieldMetadata
(
model
,
schemaBuilder
);
MeasureMetadata
tagsAndFields
=
parseTagAndFieldMetadata
(
model
,
schemaBuilder
,
shardingColumns
);
List
<
TagFamilySpec
>
tagFamilySpecs
=
schemaMetadata
.
extractTagFamilySpec
(
tagsAndFields
.
tags
,
model
.
getBanyanDBModelExtension
().
isShouldStoreIDTag
());
// iterate over tagFamilySpecs to save tag names
for
(
final
TagFamilySpec
tagFamilySpec
:
tagFamilySpecs
)
{
...
...
@@ -158,7 +158,9 @@ public enum MetadataRegistry {
downSamplingDuration
(
model
.
getDownsampling
()));
builder
.
setEntityRelativeTags
(
shardingColumns
);
builder
.
addTagFamilies
(
tagFamilySpecs
);
builder
.
addIndexes
(
indexRules
);
if
(!
indexRules
.
isEmpty
())
{
builder
.
addIndexes
(
indexRules
);
}
// parse and set field
for
(
Measure
.
FieldSpec
field
:
tagsAndFields
.
fields
)
{
builder
.
addField
(
field
);
...
...
@@ -297,7 +299,7 @@ public enum MetadataRegistry {
*
* @since 9.4.0 Skip {@link Record#TIME_BUCKET}
*/
List
<
TagMetadata
>
parseTagMetadata
(
Model
model
,
Schema
.
SchemaBuilder
builder
)
{
List
<
TagMetadata
>
parseTagMetadata
(
Model
model
,
Schema
.
SchemaBuilder
builder
,
List
<
String
>
shardingColumns
)
{
List
<
TagMetadata
>
tagMetadataList
=
new
ArrayList
<>();
for
(
final
ModelColumn
col
:
model
.
getColumns
())
{
final
String
columnStorageName
=
col
.
getColumnName
().
getStorageName
();
...
...
@@ -306,7 +308,8 @@ public enum MetadataRegistry {
}
final
TagFamilySpec
.
TagSpec
tagSpec
=
parseTagSpec
(
col
);
builder
.
spec
(
columnStorageName
,
new
ColumnSpec
(
ColumnType
.
TAG
,
col
.
getType
()));
if
(
col
.
shouldIndex
())
{
String
colName
=
col
.
getColumnName
().
getStorageName
();
if
(!
shardingColumns
.
contains
(
colName
)
&&
col
.
shouldIndex
())
{
// build indexRule
IndexRule
indexRule
=
parseIndexRule
(
tagSpec
.
getTagName
(),
col
);
tagMetadataList
.
add
(
new
TagMetadata
(
indexRule
,
tagSpec
));
...
...
@@ -333,7 +336,7 @@ public enum MetadataRegistry {
*
* @since 9.4.0 Skip {@link Metrics#TIME_BUCKET}
*/
MeasureMetadata
parseTagAndFieldMetadata
(
Model
model
,
Schema
.
SchemaBuilder
builder
)
{
MeasureMetadata
parseTagAndFieldMetadata
(
Model
model
,
Schema
.
SchemaBuilder
builder
,
List
<
String
>
shardingColumns
)
{
// skip metric
Optional
<
ValueColumnMetadata
.
ValueColumn
>
valueColumnOpt
=
ValueColumnMetadata
.
INSTANCE
.
readValueColumnDefinition
(
model
.
getName
());
...
...
@@ -350,7 +353,8 @@ public enum MetadataRegistry {
}
final
TagFamilySpec
.
TagSpec
tagSpec
=
parseTagSpec
(
col
);
builder
.
spec
(
columnStorageName
,
new
ColumnSpec
(
ColumnType
.
TAG
,
col
.
getType
()));
result
.
tag
(
new
TagMetadata
(
col
.
shouldIndex
()
?
parseIndexRule
(
tagSpec
.
getTagName
(),
col
)
:
null
,
tagSpec
));
String
colName
=
col
.
getColumnName
().
getStorageName
();
result
.
tag
(
new
TagMetadata
(!
shardingColumns
.
contains
(
colName
)
&&
col
.
shouldIndex
()
?
parseIndexRule
(
tagSpec
.
getTagName
(),
col
)
:
null
,
tagSpec
));
}
return
result
.
build
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录