This is an automated email from the ASF dual-hosted git repository.
lujiajing pushed a commit to branch banyandb-integration-stream
in repository https://gitbox.apache.org/repos/asf/skywalking.git
The following commit(s) were added to refs/heads/banyandb-integration-stream by
this push:
new 058c3a859a refactor converter and measure reigstration
058c3a859a is described below
commit 058c3a859a078e2414e9a9b3c3e7b0d0f5d451b8
Author: Megrez Lu <[email protected]>
AuthorDate: Mon Apr 25 14:40:06 2022 +0800
refactor converter and measure reigstration
---
.../storage/plugin/banyandb/BanyanDBConverter.java | 114 ++++++++--
.../plugin/banyandb/BanyanDBIndexInstaller.java | 8 +-
.../plugin/banyandb/BanyanDBMetricsDAO.java | 15 ++
.../plugin/banyandb/BanyanDBStorageClient.java | 28 ++-
.../plugin/banyandb/BanyanDBStorageProvider.java | 3 +-
.../BanyanDBUITemplateManagementDAO.java | 2 +-
.../storage/plugin/banyandb/MetadataRegistry.java | 234 ++++++++++++++++-----
.../banyandb/measure/BanyanDBMetadataQueryDAO.java | 27 ++-
.../banyandb/stream/AbstractBanyanDBDAO.java | 46 +++-
.../banyandb/stream/BanyanDBAlarmQueryDAO.java | 9 +-
.../stream/BanyanDBBrowserLogQueryDAO.java | 7 +-
.../banyandb/stream/BanyanDBLogQueryDAO.java | 7 +-
.../stream/BanyanDBProfileTaskLogQueryDAO.java | 7 +-
.../BanyanDBProfileThreadSnapshotQueryDAO.java | 30 ++-
.../plugin/banyandb/stream/BanyanDBRecordDAO.java | 6 +-
.../banyandb/stream/BanyanDBTraceQueryDAO.java | 13 +-
.../storage/plugin/banyandb/util/ByteUtil.java | 33 +++
.../metadata/endpoint_relation_server_side.json | 41 ----
.../main/resources/metadata/endpoint_traffic.json | 31 ---
.../src/main/resources/metadata/events.json | 64 ------
.../metadata/index_rules/component_id.json | 12 --
.../metadata/index_rules/create_time.json | 12 --
.../metadata/index_rules/db.instance.json | 12 --
.../resources/metadata/index_rules/db.type.json | 12 --
.../metadata/index_rules/dest_endpoint.json | 12 --
.../metadata/index_rules/dest_service_id.json | 12 --
.../resources/metadata/index_rules/disabled.json | 12 --
.../metadata/index_rules/dump_period.json | 12 --
.../resources/metadata/index_rules/dump_time.json | 12 --
.../resources/metadata/index_rules/duration.json | 12 --
.../resources/metadata/index_rules/end_time.json | 12 --
.../resources/metadata/index_rules/endpoint.json | 12 --
.../metadata/index_rules/endpoint_id.json | 12 --
.../metadata/index_rules/endpoint_name.json | 12 --
.../resources/metadata/index_rules/entity_id.json | 12 --
.../metadata/index_rules/http.method.json | 12 --
.../main/resources/metadata/index_rules/id.json | 12 --
.../resources/metadata/index_rules/last_ping.json | 12 --
.../index_rules/last_update_time_bucket.json | 12 --
.../resources/metadata/index_rules/latency.json | 12 --
.../main/resources/metadata/index_rules/layer.json | 12 --
.../metadata/index_rules/max_sampling_count.json | 12 --
.../index_rules/min_duration_threshold.json | 12 --
.../resources/metadata/index_rules/mq.broker.json | 12 --
.../resources/metadata/index_rules/mq.queue.json | 12 --
.../resources/metadata/index_rules/mq.topic.json | 12 --
.../main/resources/metadata/index_rules/name.json | 12 --
.../metadata/index_rules/operation_time.json | 12 --
.../resources/metadata/index_rules/segment_id.json | 12 --
.../resources/metadata/index_rules/sequence.json | 12 --
.../resources/metadata/index_rules/service.json | 12 --
.../metadata/index_rules/service_group.json | 12 --
.../resources/metadata/index_rules/service_id.json | 12 --
.../metadata/index_rules/service_instance.json | 12 --
.../metadata/index_rules/source_endpoint.json | 12 --
.../metadata/index_rules/source_service_id.json | 12 --
.../resources/metadata/index_rules/start_time.json | 12 --
.../metadata/index_rules/status_code.json | 12 --
.../resources/metadata/index_rules/trace_id.json | 12 --
.../main/resources/metadata/index_rules/type.json | 12 --
.../main/resources/metadata/index_rules/uuid.json | 12 --
.../main/resources/metadata/instance_traffic.json | 40 ----
.../resources/metadata/network_address_alias.json | 45 ----
.../src/main/resources/metadata/profile_task.json | 59 ------
.../main/resources/metadata/profile_task_log.json | 40 ----
.../metadata/profile_task_segment_snapshot.json | 44 ----
.../src/main/resources/metadata/segment.json | 86 --------
.../service_instance_relation_client_side.json | 56 -----
.../service_instance_relation_server_side.json | 56 -----
.../metadata/service_relation_client_side.json | 41 ----
.../metadata/service_relation_server_side.json | 41 ----
.../main/resources/metadata/service_traffic.json | 44 ----
.../src/main/resources/metadata/ui_template.json | 44 ----
73 files changed, 452 insertions(+), 1361 deletions(-)
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBConverter.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBConverter.java
index 41237f1f3b..c512b5653c 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBConverter.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBConverter.java
@@ -21,15 +21,17 @@ package
org.apache.skywalking.oap.server.storage.plugin.banyandb;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.banyandb.model.v1.BanyandbModel;
+import org.apache.skywalking.banyandb.v1.client.MeasureWrite;
import org.apache.skywalking.banyandb.v1.client.RowEntity;
import org.apache.skywalking.banyandb.v1.client.StreamWrite;
import org.apache.skywalking.banyandb.v1.client.TagAndValue;
import
org.apache.skywalking.banyandb.v1.client.grpc.exception.BanyanDBException;
import org.apache.skywalking.banyandb.v1.client.metadata.Serializable;
-import org.apache.skywalking.oap.server.core.analysis.record.Record;
import org.apache.skywalking.oap.server.core.storage.type.Convert2Entity;
import org.apache.skywalking.oap.server.core.storage.type.Convert2Storage;
+import
org.apache.skywalking.oap.server.core.storage.type.StorageDataComplexObject;
import org.apache.skywalking.oap.server.library.util.StringUtil;
+import org.apache.skywalking.oap.server.storage.plugin.banyandb.util.ByteUtil;
import java.util.List;
import java.util.function.Function;
@@ -37,11 +39,17 @@ import java.util.function.Function;
public class BanyanDBConverter {
@RequiredArgsConstructor
public static class StreamToEntity implements Convert2Entity {
+ private final MetadataRegistry.Schema schema;
private final RowEntity rowEntity;
@Override
public Object get(String fieldName) {
- return rowEntity.getTagValue(fieldName);
+ MetadataRegistry.ColumnSpec spec = schema.getSpec(fieldName);
+ if (double.class.equals(spec.getModelColumn().getType())) {
+ return ByteUtil.bytes2Double(rowEntity.getTagValue(fieldName));
+ } else {
+ return rowEntity.getTagValue(fieldName);
+ }
}
@Override
@@ -57,10 +65,7 @@ public class BanyanDBConverter {
@Override
public void accept(String fieldName, Object fieldValue) {
- // skip "time_bucket"
- if (Record.TIME_BUCKET.equals(fieldName)) {
- return;
- }
+ // TODO: skip "time_bucket"
try {
this.streamWrite.tag(fieldName, buildTag(fieldValue));
} catch (BanyanDBException ex) {
@@ -68,15 +73,6 @@ public class BanyanDBConverter {
}
}
- private Serializable<BanyandbModel.TagValue> buildTag(Object value) {
- if (Integer.class.equals(value.getClass()) ||
Long.class.equals(value.getClass())) {
- return TagAndValue.longTagValue((long) value);
- } else if (String.class.equals(value.getClass())) {
- return TagAndValue.stringTagValue((String) value);
- }
- throw new IllegalStateException(value.getClass() + " is not
supported");
- }
-
@Override
public void accept(String fieldName, byte[] fieldValue) {
try {
@@ -104,7 +100,6 @@ public class BanyanDBConverter {
@Override
public Object get(String fieldName) {
- // TODO: get an unmodifiable view of tag
return null;
}
@@ -113,4 +108,91 @@ public class BanyanDBConverter {
return this.streamWrite;
}
}
+
+ @Slf4j
+ @RequiredArgsConstructor
+ public static class MeasureToStorage implements
Convert2Storage<MeasureWrite> {
+ private final MetadataRegistry.Schema schema;
+ private final MeasureWrite measureWrite;
+
+ @Override
+ public void accept(String fieldName, Object fieldValue) {
+ MetadataRegistry.ColumnSpec columnSpec =
this.schema.getSpec(fieldName);
+ try {
+ if (columnSpec.getColumnType() ==
MetadataRegistry.ColumnType.TAG) {
+ this.measureWrite.tag(fieldName, buildTag(fieldValue));
+ } else {
+ this.measureWrite.field(fieldName, buildField(fieldValue));
+ }
+ } catch (BanyanDBException ex) {
+ log.error("fail to add tag", ex);
+ }
+ }
+
+ @Override
+ public void accept(String fieldName, byte[] fieldValue) {
+ MetadataRegistry.ColumnSpec columnSpec =
this.schema.getSpec(fieldName);
+ try {
+ if (columnSpec.getColumnType() ==
MetadataRegistry.ColumnType.TAG) {
+ this.measureWrite.tag(fieldName,
TagAndValue.binaryTagValue(fieldValue));
+ } else {
+ this.measureWrite.field(fieldName,
TagAndValue.binaryFieldValue(fieldValue));
+ }
+ } catch (BanyanDBException ex) {
+ log.error("fail to add binary tag/field", ex);
+ }
+ }
+
+ @Override
+ public void accept(String fieldName, List<String> fieldValue) {
+ for (final String tagKeyAndValue : fieldValue) {
+ if (StringUtil.isEmpty(tagKeyAndValue)) {
+ continue;
+ }
+ int pos = tagKeyAndValue.indexOf("=");
+ if (pos == -1) {
+ continue;
+ }
+ String key = tagKeyAndValue.substring(0, pos);
+ String value = tagKeyAndValue.substring(pos + 1);
+ this.accept(key, value);
+ }
+ }
+
+ @Override
+ public Object get(String fieldName) {
+ return null;
+ }
+
+ @Override
+ public MeasureWrite obtain() {
+ return this.measureWrite;
+ }
+ }
+
+ private static Serializable<BanyandbModel.TagValue> buildTag(Object value)
{
+ if (Integer.class.equals(value.getClass()) ||
Long.class.equals(value.getClass())) {
+ return TagAndValue.longTagValue((long) value);
+ } else if (String.class.equals(value.getClass())) {
+ return TagAndValue.stringTagValue((String) value);
+ } else if (Double.class.equals(value.getClass())) {
+ return TagAndValue.binaryTagValue(ByteUtil.double2Bytes((double)
value));
+ } else if (value instanceof StorageDataComplexObject) {
+ return TagAndValue.stringTagValue(((StorageDataComplexObject<?>)
value).toStorageData());
+ }
+ throw new IllegalStateException(value.getClass() + " is not
supported");
+ }
+
+ private static Serializable<BanyandbModel.FieldValue> buildField(Object
value) {
+ if (Integer.class.equals(value.getClass()) ||
Long.class.equals(value.getClass())) {
+ return TagAndValue.longFieldValue((long) value);
+ } else if (String.class.equals(value.getClass())) {
+ return TagAndValue.stringFieldValue((String) value);
+ } else if (Double.class.equals(value.getClass())) {
+ return TagAndValue.binaryFieldValue(ByteUtil.double2Bytes((double)
value));
+ } else if (value instanceof StorageDataComplexObject) {
+ return TagAndValue.stringFieldValue(((StorageDataComplexObject<?>)
value).toStorageData());
+ }
+ throw new IllegalStateException(value.getClass() + " is not
supported");
+ }
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBIndexInstaller.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBIndexInstaller.java
index 32f3480769..75109aa781 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBIndexInstaller.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBIndexInstaller.java
@@ -22,6 +22,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.banyandb.v1.client.BanyanDBClient;
import
org.apache.skywalking.banyandb.v1.client.grpc.exception.BanyanDBException;
import org.apache.skywalking.banyandb.v1.client.metadata.Group;
+import org.apache.skywalking.banyandb.v1.client.metadata.Measure;
import org.apache.skywalking.banyandb.v1.client.metadata.Stream;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.config.ConfigService;
@@ -72,8 +73,11 @@ public class BanyanDBIndexInstaller extends ModelInstaller {
((BanyanDBStorageClient) client).define(stream);
}
} else if (model.isTimeSeries() && !model.isRecord()) { // measure
- // TODO: dynamically register Measure
- log.info("skip measure index {}", model.getName());
+ Measure measure = (Measure)
MetadataRegistry.INSTANCE.registerModel(model, this.configService);
+ if (measure != null) {
+ log.info("install measure schema {}", model.getName());
+ ((BanyanDBStorageClient) client).define(measure);
+ }
} else if (!model.isTimeSeries()) { // UITemplate
log.info("skip property index {}", model.getName());
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBMetricsDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBMetricsDAO.java
index 4e84979498..20a300c3b0 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBMetricsDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBMetricsDAO.java
@@ -1,9 +1,13 @@
package org.apache.skywalking.oap.server.storage.plugin.banyandb;
import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.skywalking.banyandb.v1.client.MeasureWrite;
+import org.apache.skywalking.oap.server.core.analysis.TimeBucket;
import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
import org.apache.skywalking.oap.server.core.storage.IMetricsDAO;
import org.apache.skywalking.oap.server.core.storage.model.Model;
+import org.apache.skywalking.oap.server.core.storage.type.Convert2Storage;
import org.apache.skywalking.oap.server.core.storage.type.StorageBuilder;
import org.apache.skywalking.oap.server.library.client.request.InsertRequest;
import org.apache.skywalking.oap.server.library.client.request.UpdateRequest;
@@ -13,6 +17,7 @@ import java.util.Collections;
import java.util.List;
@RequiredArgsConstructor
+@Slf4j
public class BanyanDBMetricsDAO implements IMetricsDAO {
private final StorageBuilder<Metrics> storageBuilder;
@@ -23,6 +28,16 @@ public class BanyanDBMetricsDAO implements IMetricsDAO {
@Override
public InsertRequest prepareBatchInsert(Model model, Metrics metrics)
throws IOException {
+ log.info("prepare to insert {}", model.getName());
+ MetadataRegistry.Schema schema =
MetadataRegistry.INSTANCE.findMetadata(model.getName());
+ if (schema == null) {
+ throw new IOException(model.getName() + " is not registered");
+ }
+ MeasureWrite measureWrite = new
MeasureWrite(schema.getMetadata().getGroup(), // group name
+ model.getName(), // index-name
+ TimeBucket.getTimestamp(metrics.getTimeBucket(),
model.getDownsampling())); // timestamp
+ final Convert2Storage<MeasureWrite> toStorage = new
BanyanDBConverter.MeasureToStorage(schema, measureWrite);
+ storageBuilder.entity2Storage(metrics, toStorage);
return new InsertRequest() {
};
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageClient.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageClient.java
index 2df53a2ed9..a92c270023 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageClient.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageClient.java
@@ -20,11 +20,14 @@ package
org.apache.skywalking.oap.server.storage.plugin.banyandb;
import io.grpc.Status;
import org.apache.skywalking.banyandb.v1.client.BanyanDBClient;
+import org.apache.skywalking.banyandb.v1.client.MeasureQuery;
+import org.apache.skywalking.banyandb.v1.client.MeasureQueryResponse;
import org.apache.skywalking.banyandb.v1.client.StreamBulkWriteProcessor;
import org.apache.skywalking.banyandb.v1.client.StreamQuery;
import org.apache.skywalking.banyandb.v1.client.StreamQueryResponse;
import org.apache.skywalking.banyandb.v1.client.StreamWrite;
import
org.apache.skywalking.banyandb.v1.client.grpc.exception.BanyanDBException;
+import org.apache.skywalking.banyandb.v1.client.metadata.Measure;
import org.apache.skywalking.banyandb.v1.client.metadata.Property;
import org.apache.skywalking.banyandb.v1.client.metadata.Stream;
import org.apache.skywalking.oap.server.library.client.Client;
@@ -90,9 +93,9 @@ public class BanyanDBStorageClient implements Client,
HealthCheckable {
}
}
- public StreamQueryResponse query(StreamQuery streamQuery) throws
IOException {
+ public StreamQueryResponse query(StreamQuery q) throws IOException {
try {
- StreamQueryResponse response = this.client.query(streamQuery);
+ StreamQueryResponse response = this.client.query(q);
this.healthChecker.health();
return response;
} catch (BanyanDBException ex) {
@@ -101,6 +104,17 @@ public class BanyanDBStorageClient implements Client,
HealthCheckable {
}
}
+ public MeasureQueryResponse query(MeasureQuery q) throws IOException {
+ try {
+ MeasureQueryResponse response = this.client.query(q);
+ this.healthChecker.health();
+ return response;
+ } catch (BanyanDBException ex) {
+ healthChecker.unHealth(ex);
+ throw new IOException("fail to query measure", ex);
+ }
+ }
+
public void define(Property property) throws IOException {
try {
this.client.save(property);
@@ -121,6 +135,16 @@ public class BanyanDBStorageClient implements Client,
HealthCheckable {
}
}
+ public void define(Measure measure) throws IOException {
+ try {
+ this.client.define(measure);
+ this.healthChecker.health();
+ } catch (BanyanDBException ex) {
+ healthChecker.unHealth(ex);
+ throw new IOException("fail to define stream", ex);
+ }
+ }
+
public void write(StreamWrite streamWrite) {
this.client.write(streamWrite);
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageProvider.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageProvider.java
index 26c0e8d501..26c6b2529a 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageProvider.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBStorageProvider.java
@@ -56,7 +56,6 @@ import
org.apache.skywalking.oap.server.storage.plugin.banyandb.measure.BanyanDB
import
org.apache.skywalking.oap.server.storage.plugin.banyandb.measure.BanyanDBProfileTaskQueryDAO;
import
org.apache.skywalking.oap.server.storage.plugin.banyandb.measure.BanyanDBServiceLabelDAO;
import
org.apache.skywalking.oap.server.storage.plugin.banyandb.measure.BanyanDBTopologyQueryDAO;
-import
org.apache.skywalking.oap.server.storage.plugin.banyandb.measure.BanyanDBUITemplateManagementDAO;
import
org.apache.skywalking.oap.server.storage.plugin.banyandb.stream.BanyanDBAlarmQueryDAO;
import
org.apache.skywalking.oap.server.storage.plugin.banyandb.stream.BanyanDBBatchDAO;
import
org.apache.skywalking.oap.server.storage.plugin.banyandb.stream.BanyanDBBrowserLogQueryDAO;
@@ -109,7 +108,7 @@ public class BanyanDBStorageProvider extends ModuleProvider
{
this.registerServiceImplementation(INetworkAddressAliasDAO.class, new
BanyanDBNetworkAddressAliasDAO());
this.registerServiceImplementation(ITraceQueryDAO.class, new
BanyanDBTraceQueryDAO(client));
this.registerServiceImplementation(IBrowserLogQueryDAO.class, new
BanyanDBBrowserLogQueryDAO(client));
- this.registerServiceImplementation(IMetadataQueryDAO.class, new
BanyanDBMetadataQueryDAO());
+ this.registerServiceImplementation(IMetadataQueryDAO.class, new
BanyanDBMetadataQueryDAO(client));
this.registerServiceImplementation(IAlarmQueryDAO.class, new
BanyanDBAlarmQueryDAO(client));
this.registerServiceImplementation(ILogQueryDAO.class, new
BanyanDBLogQueryDAO(client));
this.registerServiceImplementation(IProfileTaskQueryDAO.class, new
BanyanDBProfileTaskQueryDAO());
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBUITemplateManagementDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBUITemplateManagementDAO.java
similarity index 99%
rename from
oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBUITemplateManagementDAO.java
rename to
oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBUITemplateManagementDAO.java
index dba7844413..b97e71ccb7 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBUITemplateManagementDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBUITemplateManagementDAO.java
@@ -16,7 +16,7 @@
*
*/
-package org.apache.skywalking.oap.server.storage.plugin.banyandb.measure;
+package org.apache.skywalking.oap.server.storage.plugin.banyandb;
import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.banyandb.v1.client.TagAndValue;
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/MetadataRegistry.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/MetadataRegistry.java
index b8925c7529..6c6fbb7658 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/MetadataRegistry.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/MetadataRegistry.java
@@ -18,9 +18,14 @@
package org.apache.skywalking.oap.server.storage.plugin.banyandb;
+import com.google.gson.JsonObject;
import io.grpc.Status;
+import lombok.Builder;
import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.Getter;
import lombok.RequiredArgsConstructor;
+import lombok.Singular;
import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.banyandb.v1.client.BanyanDBClient;
import
org.apache.skywalking.banyandb.v1.client.grpc.exception.BanyanDBException;
@@ -28,14 +33,19 @@ import
org.apache.skywalking.banyandb.v1.client.metadata.Catalog;
import org.apache.skywalking.banyandb.v1.client.metadata.Duration;
import org.apache.skywalking.banyandb.v1.client.metadata.Group;
import org.apache.skywalking.banyandb.v1.client.metadata.IndexRule;
+import org.apache.skywalking.banyandb.v1.client.metadata.Measure;
import org.apache.skywalking.banyandb.v1.client.metadata.NamedSchema;
import org.apache.skywalking.banyandb.v1.client.metadata.Stream;
import org.apache.skywalking.banyandb.v1.client.metadata.TagFamilySpec;
import org.apache.skywalking.oap.server.core.alarm.AlarmRecord;
+import org.apache.skywalking.oap.server.core.analysis.DownSampling;
+import org.apache.skywalking.oap.server.core.analysis.Layer;
import org.apache.skywalking.oap.server.core.analysis.manual.log.LogRecord;
import
org.apache.skywalking.oap.server.core.analysis.manual.segment.SegmentRecord;
import org.apache.skywalking.oap.server.core.analysis.metrics.DataTable;
+import org.apache.skywalking.oap.server.core.analysis.metrics.IntList;
import org.apache.skywalking.oap.server.core.config.ConfigService;
+import
org.apache.skywalking.oap.server.core.storage.annotation.ValueColumnMetadata;
import org.apache.skywalking.oap.server.core.storage.model.Model;
import org.apache.skywalking.oap.server.core.storage.model.ModelColumn;
import org.apache.skywalking.oap.server.library.util.StringUtil;
@@ -45,9 +55,9 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
@@ -57,53 +67,105 @@ import java.util.stream.Collectors;
public enum MetadataRegistry {
INSTANCE;
- private final Map<String, PartialMetadata> registry = new
ConcurrentHashMap<>();
+ private final Map<String, Schema> registry = new ConcurrentHashMap<>();
public NamedSchema<?> registerModel(Model model, ConfigService
configService) {
- PartialMetadata partialMetadata = parseMetadata(model);
- final Stream.Builder builder =
Stream.create(partialMetadata.getGroup(), partialMetadata.getName());
+ final PartialMetadata partialMetadata = parseMetadata(model);
+ Schema.SchemaBuilder schemaBuilder =
Schema.builder().metadata(partialMetadata);
Map<String, ModelColumn> modelColumnMap = model.getColumns().stream()
.collect(Collectors.toMap(modelColumn ->
modelColumn.getColumnName().getStorageName(), Function.identity()));
// parse and set sharding keys
- builder.setEntityRelativeTags(parseEntityNames(modelColumnMap));
- // parse and set tag families, which contains tag specs
- List<TagFamilySpec> specs = parseTagFamilySpecs(model,
partialMetadata, configService);
- builder.addTagFamilies(specs);
- // parse and add index definition
- builder.addIndexes(parseIndexRules(specs,
partialMetadata.indexFamily(), modelColumnMap));
-
- registry.put(model.getName(), partialMetadata);
- return builder.build();
+ List<String> entities = parseEntityNames(modelColumnMap);
+ // 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, configService,
schemaBuilder);
+ List<TagFamilySpec> tagFamilySpecs =
partialMetadata.extractTagFamilySpec(tags);
+ List<IndexRule> indexRules = tags.stream()
+ .map(TagMetadata::getIndexRule)
+ .filter(Objects::nonNull)
+ .collect(Collectors.toList());
+
+
+ if (partialMetadata.getKind() == Kind.STREAM) {
+ final Stream.Builder builder =
Stream.create(partialMetadata.getGroup(), partialMetadata.getName());
+ builder.setEntityRelativeTags(entities);
+ builder.addTagFamilies(tagFamilySpecs);
+ builder.addIndexes(indexRules);
+
+ registry.put(model.getName(), schemaBuilder.build());
+ return builder.build();
+ } else {
+ final Measure.Builder builder =
Measure.create(partialMetadata.getGroup(), partialMetadata.getName(),
+ downSamplingDuration(model.getDownsampling()));
+ builder.setEntityRelativeTags(entities);
+ builder.addTagFamilies(tagFamilySpecs);
+ builder.addIndexes(indexRules);
+ // parse and set field
+ Optional<ValueColumnMetadata.ValueColumn> valueColumnOpt =
ValueColumnMetadata.INSTANCE
+ .readValueColumnDefinition(model.getName());
+ valueColumnOpt.ifPresent(valueColumn ->
builder.addField(parseFieldSpec(modelColumnMap.get(valueColumn.getValueCName()),
valueColumn)));
+
+ registry.put(model.getName(), schemaBuilder.build());
+ return builder.build();
+ }
}
- public PartialMetadata findSchema(final String name) {
+ public Schema findMetadata(final String name) {
return this.registry.get(name);
}
- List<IndexRule> parseIndexRules(List<TagFamilySpec> specs, String
indexTagFamily, Map<String, ModelColumn> modelColumnMap) {
- List<IndexRule> indexRules = new ArrayList<>();
- for (final TagFamilySpec spec : specs) {
- if (!indexTagFamily.equals(spec.tagFamilyName())) {
- continue;
- }
- for (final TagFamilySpec.TagSpec tagSpec : spec.tagSpecs()) {
- final String tagName = tagSpec.getTagName();
- // TODO: we need to add support index type in the OAP core
- // Currently, we only register INVERTED type
- final ModelColumn modelColumn = modelColumnMap.get(tagName);
- // if it is null, it must be a user-defined tag
- if (modelColumn == null) {
- indexRules.add(IndexRule.create(tagName,
IndexRule.IndexType.INVERTED, IndexRule.IndexLocation.SERIES));
- continue;
- }
- if (modelColumn.getBanyanDBExtension().isGlobalIndexing()) {
- indexRules.add(IndexRule.create(tagName,
IndexRule.IndexType.INVERTED, IndexRule.IndexLocation.GLOBAL));
- } else {
- indexRules.add(IndexRule.create(tagName,
IndexRule.IndexType.INVERTED, IndexRule.IndexLocation.SERIES));
- }
- }
+ private Measure.FieldSpec parseFieldSpec(ModelColumn modelColumn,
ValueColumnMetadata.ValueColumn valueColumn) {
+ if (String.class.equals(modelColumn.getType())) {
+ return Measure.FieldSpec.newIntField(valueColumn.getValueCName())
+ .compressWithZSTD()
+ .build();
+ } else if (long.class.equals(modelColumn.getType()) ||
int.class.equals(modelColumn.getType())) {
+ return Measure.FieldSpec.newIntField(valueColumn.getValueCName())
+ .compressWithZSTD()
+ .encodeWithGorilla()
+ .build();
+ } else if (DataTable.class.equals(modelColumn.getType())) {
+ return
Measure.FieldSpec.newBinaryField(valueColumn.getValueCName())
+ .compressWithZSTD()
+ .build();
+ } else if (double.class.equals(modelColumn.getType())) {
+ // TODO: natively support double/float in BanyanDB
+ log.warn("Double is stored as binary");
+ return
Measure.FieldSpec.newBinaryField(valueColumn.getValueCName())
+ .compressWithZSTD()
+ .build();
+ } else {
+ throw new
UnsupportedOperationException(modelColumn.getType().getSimpleName() + " is not
supported for field");
+ }
+ }
+
+ Duration downSamplingDuration(DownSampling downSampling) {
+ switch (downSampling) {
+ case Hour:
+ return Duration.ofHours(1);
+ case Minute:
+ return Duration.ofMinutes(1);
+ case Day:
+ return Duration.ofDays(1);
+ default:
+ throw new UnsupportedOperationException("unsupported
downSampling interval");
+ }
+ }
+
+ IndexRule parseIndexRule(String tagName, ModelColumn modelColumn) {
+ // TODO: we need to add support index type in the OAP core
+ // Currently, we only register INVERTED type
+ // if it is null, it must be a user-defined tag
+ if (modelColumn == null) {
+ return IndexRule.create(tagName, IndexRule.IndexType.INVERTED,
IndexRule.IndexLocation.SERIES);
+ }
+ if (modelColumn.getBanyanDBExtension().isGlobalIndexing()) {
+ return IndexRule.create(tagName, IndexRule.IndexType.INVERTED,
IndexRule.IndexLocation.GLOBAL);
+ } else {
+ return IndexRule.create(tagName, IndexRule.IndexType.INVERTED,
IndexRule.IndexLocation.SERIES);
}
- return indexRules;
}
/**
@@ -125,30 +187,40 @@ public enum MetadataRegistry {
.collect(Collectors.toList());
}
- List<TagFamilySpec> parseTagFamilySpecs(Model model, PartialMetadata
metadata, ConfigService configService) {
- Map<String, TagFamilySpec.Builder> builderMap = new HashMap<>();
+ List<TagMetadata> parseTagMetadata(Model model, ConfigService
configService, Schema.SchemaBuilder builder) {
+ List<TagMetadata> tagMetadataList = new ArrayList<>();
+ // skip metric
+ Optional<ValueColumnMetadata.ValueColumn> valueColumnOpt =
ValueColumnMetadata.INSTANCE
+ .readValueColumnDefinition(model.getName());
for (final ModelColumn col : model.getColumns()) {
+ if (valueColumnOpt.isPresent() &&
valueColumnOpt.get().getValueCName().equals(col.getColumnName().getStorageName()))
{
+ builder.spec(col.getColumnName().getStorageName(), new
ColumnSpec(ColumnType.FIELD, col));
+ continue;
+ }
final TagFamilySpec.TagSpec tagSpec = parseTagSpec(col);
if (tagSpec == null) {
continue;
}
+ builder.spec(col.getColumnName().getStorageName(), new
ColumnSpec(ColumnType.TAG, col));
if (col.shouldIndex()) {
- builderMap.computeIfAbsent(metadata.indexFamily(),
TagFamilySpec::create).addTagSpec(tagSpec);
+ // build indexRule
+ IndexRule indexRule = parseIndexRule(tagSpec.getTagName(),
col);
+ tagMetadataList.add(new TagMetadata(indexRule, tagSpec));
} else {
- builderMap.computeIfAbsent(metadata.nonIndexFamily(),
TagFamilySpec::create).addTagSpec(tagSpec);
+ tagMetadataList.add(new TagMetadata(null, tagSpec));
}
}
// add all user-defined indexed tags to the end of the "searchable"
family
if (SegmentRecord.INDEX_NAME.equals(model.getName())) {
- builderMap.computeIfAbsent(metadata.indexFamily(),
TagFamilySpec::create).addTagSpecs(parseExtraTagSpecs(configService.getSearchableTracesTags()));
+
tagMetadataList.addAll(parseExtraTagSpecs(configService.getSearchableTracesTags()));
} else if (LogRecord.INDEX_NAME.equals(model.getName())) {
- builderMap.computeIfAbsent(metadata.indexFamily(),
TagFamilySpec::create).addTagSpecs(parseExtraTagSpecs(configService.getSearchableLogsTags()));
+
tagMetadataList.addAll(parseExtraTagSpecs(configService.getSearchableLogsTags()));
} else if (AlarmRecord.INDEX_NAME.equals(model.getName())) {
- builderMap.computeIfAbsent(metadata.indexFamily(),
TagFamilySpec::create).addTagSpecs(parseExtraTagSpecs(configService.getSearchableAlarmTags()));
+
tagMetadataList.addAll(parseExtraTagSpecs(configService.getSearchableAlarmTags()));
}
- return
builderMap.values().stream().map(TagFamilySpec.Builder::build).collect(Collectors.toList());
+ return tagMetadataList;
}
/**
@@ -158,7 +230,7 @@ public enum MetadataRegistry {
* @param tags a series of tags joint by comma
* @return a list of {@link
org.apache.skywalking.banyandb.v1.client.metadata.TagFamilySpec.TagSpec}
generated from input
*/
- private List<TagFamilySpec.TagSpec> parseExtraTagSpecs(String tags) {
+ private List<TagMetadata> parseExtraTagSpecs(String tags) {
if (StringUtil.isEmpty(tags)) {
return Collections.emptyList();
}
@@ -167,7 +239,8 @@ public enum MetadataRegistry {
return Collections.emptyList();
}
return Arrays.stream(tagsArray)
- .map(TagFamilySpec.TagSpec::newStringTag)
+ .map(tagName -> new TagMetadata(parseIndexRule(tagName, null),
+ TagFamilySpec.TagSpec.newStringTag(tagName)))
.collect(Collectors.toList());
}
@@ -180,15 +253,23 @@ public enum MetadataRegistry {
@Nullable
private TagFamilySpec.TagSpec parseTagSpec(ModelColumn modelColumn) {
final Class<?> clazz = modelColumn.getType();
- if (String.class.equals(clazz)) {
- return
TagFamilySpec.TagSpec.newStringTag(modelColumn.getColumnName().getStorageName());
+ final String colName = modelColumn.getColumnName().getStorageName();
+ if (String.class.equals(clazz) || DataTable.class.equals(clazz) ||
JsonObject.class.equals(clazz)) {
+ return TagFamilySpec.TagSpec.newStringTag(colName);
} else if (int.class.equals(clazz) || long.class.equals(clazz)) {
- return
TagFamilySpec.TagSpec.newIntTag(modelColumn.getColumnName().getStorageName());
- } else if (byte[].class.equals(clazz) ||
DataTable.class.equals(clazz)) {
- return
TagFamilySpec.TagSpec.newBinaryTag(modelColumn.getColumnName().getStorageName());
- } else {
+ return TagFamilySpec.TagSpec.newIntTag(colName);
+ } else if (byte[].class.equals(clazz)) {
+ return TagFamilySpec.TagSpec.newBinaryTag(colName);
+ } else if (Layer.class.equals(clazz)) {
+ return TagFamilySpec.TagSpec.newIntTag(colName);
+ } else if (double.class.equals(clazz) || Double.class.equals(clazz)) {
+ // serialize double as binary
+ return TagFamilySpec.TagSpec.newBinaryTag(colName);
+ } else if (IntList.class.isAssignableFrom(clazz)) {
+ return TagFamilySpec.TagSpec.newIntArrayTag(colName);
+ } else { // handle exceptions
// TODO: we skip all tags with type of List<String>
- if ("tags".equals(modelColumn.getColumnName().getStorageName())) {
+ if ("tags".equals(colName)) {
return null;
}
throw new IllegalStateException("type " +
modelColumn.getType().toString() + " is not supported");
@@ -207,6 +288,7 @@ public enum MetadataRegistry {
return new PartialMetadata("measure-default", model.getName(),
Kind.MEASURE);
}
+
@RequiredArgsConstructor
@Data
public static class PartialMetadata {
@@ -233,6 +315,14 @@ public enum MetadataRegistry {
}
}
+ private List<TagFamilySpec> extractTagFamilySpec(List<TagMetadata>
tagMetadataList) {
+ return
tagMetadataList.stream().collect(Collectors.groupingBy(tagMetadata ->
tagMetadata.isIndex() ? PartialMetadata.this.indexFamily() :
PartialMetadata.this.nonIndexFamily()))
+ .entrySet().stream()
+ .map(entry -> TagFamilySpec.create(entry.getKey())
+
.addTagSpecs(entry.getValue().stream().map(TagMetadata::getTagSpec).collect(Collectors.toList())).build())
+ .collect(Collectors.toList());
+ }
+
public Group getOrCreateGroup(BanyanDBClient client) throws
BanyanDBException {
Group g = client.findGroup(this.group);
if (g != null) {
@@ -262,7 +352,6 @@ public enum MetadataRegistry {
public String nonIndexFamily() {
switch (kind) {
case MEASURE:
- return null;
case STREAM:
return "binary";
default:
@@ -274,4 +363,39 @@ public enum MetadataRegistry {
public enum Kind {
MEASURE, STREAM;
}
+
+ @RequiredArgsConstructor
+ @Getter
+ private static class TagMetadata {
+ private final IndexRule indexRule;
+ private final TagFamilySpec.TagSpec tagSpec;
+
+ boolean isIndex() {
+ return this.indexRule != null;
+ }
+ }
+
+ @Builder
+ @EqualsAndHashCode
+ public static class Schema {
+ @Getter
+ private final PartialMetadata metadata;
+ @Singular
+ private final Map<String, ColumnSpec> specs;
+
+ public ColumnSpec getSpec(String columnName) {
+ return this.specs.get(columnName);
+ }
+ }
+
+ @RequiredArgsConstructor
+ @Getter
+ public static class ColumnSpec {
+ private final ColumnType columnType;
+ private final ModelColumn modelColumn;
+ }
+
+ public enum ColumnType {
+ TAG, FIELD;
+ }
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
index bff4fc00be..23828464da 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
@@ -18,19 +18,44 @@
package org.apache.skywalking.oap.server.storage.plugin.banyandb.measure;
+import com.google.common.collect.ImmutableSet;
+import org.apache.skywalking.banyandb.v1.client.MeasureQuery;
+import org.apache.skywalking.banyandb.v1.client.MeasureQueryResponse;
+import
org.apache.skywalking.oap.server.core.analysis.manual.service.ServiceTraffic;
import org.apache.skywalking.oap.server.core.query.type.Endpoint;
import org.apache.skywalking.oap.server.core.query.type.Process;
import org.apache.skywalking.oap.server.core.query.type.Service;
import org.apache.skywalking.oap.server.core.query.type.ServiceInstance;
import org.apache.skywalking.oap.server.core.storage.query.IMetadataQueryDAO;
+import org.apache.skywalking.oap.server.library.util.StringUtil;
+import
org.apache.skywalking.oap.server.storage.plugin.banyandb.BanyanDBStorageClient;
+import
org.apache.skywalking.oap.server.storage.plugin.banyandb.stream.AbstractBanyanDBDAO;
import java.io.IOException;
import java.util.Collections;
import java.util.List;
-public class BanyanDBMetadataQueryDAO implements IMetadataQueryDAO {
+public class BanyanDBMetadataQueryDAO extends AbstractBanyanDBDAO implements
IMetadataQueryDAO {
+ public BanyanDBMetadataQueryDAO(BanyanDBStorageClient client) {
+ super(client);
+ }
+
@Override
public List<Service> listServices(String layer, String group) throws
IOException {
+ MeasureQueryResponse resp = query(ServiceTraffic.INDEX_NAME,
+ ImmutableSet.of(ServiceTraffic.NAME,
ServiceTraffic.SHORT_NAME),
+ Collections.emptySet(), new QueryBuilder<MeasureQuery>() {
+ @Override
+ protected void apply(MeasureQuery query) {
+ if (StringUtil.isNotEmpty(group)) {
+ query.appendCondition(eq(ServiceTraffic.GROUP,
group));
+ }
+ if (StringUtil.isNotEmpty(layer)) {
+ query.appendCondition(eq(ServiceTraffic.LAYER,
layer));
+ }
+ }
+ });
+
return Collections.emptyList();
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/AbstractBanyanDBDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/AbstractBanyanDBDAO.java
index 53e8cc4f80..c7d4f930ee 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/AbstractBanyanDBDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/AbstractBanyanDBDAO.java
@@ -18,6 +18,9 @@
package org.apache.skywalking.oap.server.storage.plugin.banyandb.stream;
+import org.apache.skywalking.banyandb.v1.client.AbstractQuery;
+import org.apache.skywalking.banyandb.v1.client.MeasureQuery;
+import org.apache.skywalking.banyandb.v1.client.MeasureQueryResponse;
import org.apache.skywalking.banyandb.v1.client.PairQueryCondition;
import org.apache.skywalking.banyandb.v1.client.StreamQuery;
import org.apache.skywalking.banyandb.v1.client.StreamQueryResponse;
@@ -39,17 +42,44 @@ public abstract class AbstractBanyanDBDAO extends
AbstractDAO<BanyanDBStorageCli
super(client);
}
- protected StreamQueryResponse query(MetadataRegistry.PartialMetadata
metadata, Set<String> searchableTags, QueryBuilder builder) throws IOException {
- return this.query(metadata, searchableTags, null, builder);
+ protected StreamQueryResponse query(String modelName, Set<String> tags,
QueryBuilder<StreamQuery> builder) throws IOException {
+ return this.query(modelName, tags, null, builder);
}
- protected StreamQueryResponse query(MetadataRegistry.PartialMetadata
metadata, Set<String> searchableTags, TimestampRange timestampRange,
- QueryBuilder builder) throws
IOException {
+ protected StreamQueryResponse query(String modelName, Set<String> tags,
TimestampRange timestampRange,
+ QueryBuilder<StreamQuery> builder)
throws IOException {
+ MetadataRegistry.Schema schema =
MetadataRegistry.INSTANCE.findMetadata(modelName);
+ if (schema == null) {
+ throw new IllegalStateException("schema is not registered");
+ }
final StreamQuery query;
if (timestampRange == null) {
- query = new StreamQuery(metadata.getGroup(), metadata.getName(),
LARGEST_TIME_RANGE, searchableTags);
+ query = new StreamQuery(schema.getMetadata().getGroup(),
schema.getMetadata().getName(), LARGEST_TIME_RANGE, tags);
+ } else {
+ query = new StreamQuery(schema.getMetadata().getGroup(),
schema.getMetadata().getName(), timestampRange, tags);
+ }
+
+ builder.apply(query);
+
+ return getClient().query(query);
+ }
+
+ protected MeasureQueryResponse query(String modelName, Set<String> tags,
Set<String> fields,
+ QueryBuilder<MeasureQuery> builder)
throws IOException {
+ return this.query(modelName, tags, fields, null, builder);
+ }
+
+ protected MeasureQueryResponse query(String modelName, Set<String> tags,
Set<String> fields,
+ TimestampRange timestampRange,
QueryBuilder<MeasureQuery> builder) throws IOException {
+ MetadataRegistry.Schema schema =
MetadataRegistry.INSTANCE.findMetadata(modelName);
+ if (schema == null) {
+ throw new IllegalStateException("schema is not registered");
+ }
+ final MeasureQuery query;
+ if (timestampRange == null) {
+ query = new MeasureQuery(schema.getMetadata().getGroup(),
schema.getMetadata().getName(), LARGEST_TIME_RANGE, tags, fields);
} else {
- query = new StreamQuery(metadata.getGroup(), metadata.getName(),
timestampRange, searchableTags);
+ query = new MeasureQuery(schema.getMetadata().getGroup(),
schema.getMetadata().getName(), timestampRange, tags, fields);
}
builder.apply(query);
@@ -57,8 +87,8 @@ public abstract class AbstractBanyanDBDAO extends
AbstractDAO<BanyanDBStorageCli
return getClient().query(query);
}
- protected abstract static class QueryBuilder {
- abstract void apply(final StreamQuery query);
+ protected abstract static class QueryBuilder<T extends AbstractQuery<?
extends com.google.protobuf.GeneratedMessageV3>> {
+ protected abstract void apply(final T query);
protected PairQueryCondition<Long> eq(String name, long value) {
return PairQueryCondition.LongQueryCondition.eq(name, value);
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBAlarmQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBAlarmQueryDAO.java
index b2a43abff7..55f2cf9ec7 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBAlarmQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBAlarmQueryDAO.java
@@ -44,9 +44,6 @@ import java.util.Objects;
* which can be used to build a {@link
org.apache.skywalking.oap.server.core.query.type.AlarmMessage}
*/
public class BanyanDBAlarmQueryDAO extends AbstractBanyanDBDAO implements
IAlarmQueryDAO {
- private final MetadataRegistry.PartialMetadata alarmRecordMetadata =
- MetadataRegistry.INSTANCE.findSchema(AlarmRecord.INDEX_NAME);
-
public BanyanDBAlarmQueryDAO(BanyanDBStorageClient client) {
super(client);
}
@@ -58,10 +55,10 @@ public class BanyanDBAlarmQueryDAO extends
AbstractBanyanDBDAO implements IAlarm
tsRange = new TimestampRange(TimeBucket.getTimestamp(startTB),
TimeBucket.getTimestamp(endTB));
}
- StreamQueryResponse resp = query(alarmRecordMetadata,
+ StreamQueryResponse resp = query(AlarmRecord.INDEX_NAME,
ImmutableSet.of(AlarmRecord.SCOPE, AlarmRecord.START_TIME,
AlarmRecord.ID0, AlarmRecord.ID1, AlarmRecord.ALARM_MESSAGE,
AlarmRecord.TAGS_RAW_DATA),
tsRange,
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
if (Objects.nonNull(scopeId)) {
@@ -87,7 +84,7 @@ public class BanyanDBAlarmQueryDAO extends
AbstractBanyanDBDAO implements IAlarm
for (final RowEntity rowEntity : resp.getElements()) {
AlarmRecord.Builder builder = new AlarmRecord.Builder();
AlarmRecord alarmRecord = builder.storage2Entity(
- new BanyanDBConverter.StreamToEntity(rowEntity)
+ new
BanyanDBConverter.StreamToEntity(MetadataRegistry.INSTANCE.findMetadata(AlarmRecord.INDEX_NAME),
rowEntity)
);
AlarmMessage message = new AlarmMessage();
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBBrowserLogQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBBrowserLogQueryDAO.java
index 2c412cf7dc..e692a8d3b3 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBBrowserLogQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBBrowserLogQueryDAO.java
@@ -42,9 +42,6 @@ import java.util.Objects;
* {@link
org.apache.skywalking.oap.server.core.browser.manual.errorlog.BrowserErrorLogRecord}
is a stream
*/
public class BanyanDBBrowserLogQueryDAO extends AbstractBanyanDBDAO implements
IBrowserLogQueryDAO {
- private final MetadataRegistry.PartialMetadata
browserErrorLogRecordMetadata =
-
MetadataRegistry.INSTANCE.findSchema(BrowserErrorLogRecord.INDEX_NAME);
-
public BanyanDBBrowserLogQueryDAO(BanyanDBStorageClient client) {
super(client);
}
@@ -56,10 +53,10 @@ public class BanyanDBBrowserLogQueryDAO extends
AbstractBanyanDBDAO implements I
tsRange = new
TimestampRange(TimeBucket.getTimestamp(startSecondTB),
TimeBucket.getTimestamp(endSecondTB));
}
- StreamQueryResponse resp = query(browserErrorLogRecordMetadata,
ImmutableSet.of(BrowserErrorLogRecord.SERVICE_ID,
+ StreamQueryResponse resp = query(BrowserErrorLogRecord.INDEX_NAME,
ImmutableSet.of(BrowserErrorLogRecord.SERVICE_ID,
BrowserErrorLogRecord.SERVICE_VERSION_ID,
BrowserErrorLogRecord.PAGE_PATH_ID,
- BrowserErrorLogRecord.ERROR_CATEGORY,
BrowserErrorLogRecord.DATA_BINARY), tsRange, new QueryBuilder() {
+ BrowserErrorLogRecord.ERROR_CATEGORY,
BrowserErrorLogRecord.DATA_BINARY), tsRange, new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
query.appendCondition(eq(BrowserErrorLogRecord.SERVICE_ID,
serviceId));
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBLogQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBLogQueryDAO.java
index c6097539c9..d4e3214a36 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBLogQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBLogQueryDAO.java
@@ -50,9 +50,6 @@ import java.util.Objects;
* {@link org.apache.skywalking.oap.server.core.analysis.manual.log.LogRecord}
is a stream
*/
public class BanyanDBLogQueryDAO extends AbstractBanyanDBDAO implements
ILogQueryDAO {
- private final MetadataRegistry.PartialMetadata logRecordMetadata =
- MetadataRegistry.INSTANCE.findSchema(LogRecord.INDEX_NAME);
-
public BanyanDBLogQueryDAO(BanyanDBStorageClient client) {
super(client);
}
@@ -62,7 +59,7 @@ public class BanyanDBLogQueryDAO extends AbstractBanyanDBDAO
implements ILogQuer
TraceScopeCondition relatedTrace, Order queryOrder,
int from, int limit,
long startTB, long endTB, List<Tag> tags,
List<String> keywordsOfContent,
List<String> excludingKeywordsOfContent) throws
IOException {
- final QueryBuilder query = new QueryBuilder() {
+ final QueryBuilder<StreamQuery> query = new
QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
if (StringUtil.isNotEmpty(serviceId)) {
@@ -101,7 +98,7 @@ public class BanyanDBLogQueryDAO extends AbstractBanyanDBDAO
implements ILogQuer
tsRange = new TimestampRange(TimeBucket.getTimestamp(startTB),
TimeBucket.getTimestamp(endTB));
}
- StreamQueryResponse resp = query(logRecordMetadata,
+ StreamQueryResponse resp = query(LogRecord.INDEX_NAME,
ImmutableSet.of(AbstractLogRecord.SERVICE_ID,
AbstractLogRecord.SERVICE_INSTANCE_ID,
AbstractLogRecord.ENDPOINT_ID,
AbstractLogRecord.TRACE_ID, AbstractLogRecord.TRACE_SEGMENT_ID,
AbstractLogRecord.SPAN_ID,
AbstractLogRecord.CONTENT_TYPE, AbstractLogRecord.CONTENT,
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileTaskLogQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileTaskLogQueryDAO.java
index 6749118a25..9d22ea36ba 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileTaskLogQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileTaskLogQueryDAO.java
@@ -37,9 +37,6 @@ import java.util.List;
* {@link ProfileTaskLogRecord} is a stream
*/
public class BanyanDBProfileTaskLogQueryDAO extends AbstractBanyanDBDAO
implements IProfileTaskLogQueryDAO {
- private final MetadataRegistry.PartialMetadata profileTaskLogRecord =
-
MetadataRegistry.INSTANCE.findSchema(ProfileTaskLogRecord.INDEX_NAME);
-
private final int queryMaxSize;
public BanyanDBProfileTaskLogQueryDAO(BanyanDBStorageClient client, int
queryMaxSize) {
@@ -49,10 +46,10 @@ public class BanyanDBProfileTaskLogQueryDAO extends
AbstractBanyanDBDAO implemen
@Override
public List<ProfileTaskLog> getTaskLogList() throws IOException {
- StreamQueryResponse resp = query(profileTaskLogRecord,
+ StreamQueryResponse resp = query(ProfileTaskLogRecord.INDEX_NAME,
ImmutableSet.of(ProfileTaskLogRecord.OPERATION_TIME,
ProfileTaskLogRecord.INSTANCE_ID,
ProfileTaskLogRecord.TASK_ID,
ProfileTaskLogRecord.OPERATION_TYPE),
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
query.setLimit(BanyanDBProfileTaskLogQueryDAO.this.queryMaxSize);
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileThreadSnapshotQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileThreadSnapshotQueryDAO.java
index a0cacd0c39..d60484b6f0 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileThreadSnapshotQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBProfileThreadSnapshotQueryDAO.java
@@ -48,22 +48,16 @@ public class BanyanDBProfileThreadSnapshotQueryDAO extends
AbstractBanyanDBDAO i
protected final ProfileThreadSnapshotRecord.Builder builder =
new ProfileThreadSnapshotRecord.Builder();
- private final MetadataRegistry.PartialMetadata
profileThreadSnapshotMetadata =
-
MetadataRegistry.INSTANCE.findSchema(ProfileThreadSnapshotRecord.INDEX_NAME);
-
- private final MetadataRegistry.PartialMetadata segmentRecordMetadata =
- MetadataRegistry.INSTANCE.findSchema(SegmentRecord.INDEX_NAME);
-
public BanyanDBProfileThreadSnapshotQueryDAO(BanyanDBStorageClient client)
{
super(client);
}
@Override
public List<BasicTrace> queryProfiledSegments(String taskId) throws
IOException {
- StreamQueryResponse resp = query(profileThreadSnapshotMetadata,
+ StreamQueryResponse resp =
query(ProfileThreadSnapshotRecord.INDEX_NAME,
ImmutableSet.of(ProfileThreadSnapshotRecord.TASK_ID,
ProfileThreadSnapshotRecord.SEGMENT_ID,
ProfileThreadSnapshotRecord.DUMP_TIME,
ProfileThreadSnapshotRecord.SEQUENCE),
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
query.appendCondition(eq(ProfileThreadSnapshotRecord.TASK_ID, taskId))
@@ -83,9 +77,9 @@ public class BanyanDBProfileThreadSnapshotQueryDAO extends
AbstractBanyanDBDAO i
// TODO: support `IN` or `OR` logic operation in BanyanDB
List<BasicTrace> basicTraces = new ArrayList<>();
for (String segmentID : segmentIds) {
- final StreamQueryResponse segmentRecordResp =
query(segmentRecordMetadata,
+ final StreamQueryResponse segmentRecordResp =
query(SegmentRecord.INDEX_NAME,
ImmutableSet.of(SegmentRecord.TRACE_ID,
SegmentRecord.IS_ERROR, SegmentRecord.ENDPOINT_ID, SegmentRecord.LATENCY,
SegmentRecord.START_TIME),
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery traceQuery) {
traceQuery.appendCondition(eq(SegmentRecord.SEGMENT_ID, segmentID));
@@ -132,11 +126,11 @@ public class BanyanDBProfileThreadSnapshotQueryDAO
extends AbstractBanyanDBDAO i
@Override
public List<ProfileThreadSnapshotRecord> queryRecords(String segmentId,
int minSequence, int maxSequence) throws IOException {
- StreamQueryResponse resp = query(profileThreadSnapshotMetadata,
+ StreamQueryResponse resp =
query(ProfileThreadSnapshotRecord.INDEX_NAME,
ImmutableSet.of(ProfileThreadSnapshotRecord.TASK_ID,
ProfileThreadSnapshotRecord.SEGMENT_ID,
ProfileThreadSnapshotRecord.DUMP_TIME,
ProfileThreadSnapshotRecord.SEQUENCE,
ProfileThreadSnapshotRecord.STACK_BINARY),
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
query.appendCondition(eq(ProfileThreadSnapshotRecord.SEGMENT_ID, segmentId))
@@ -148,7 +142,7 @@ public class BanyanDBProfileThreadSnapshotQueryDAO extends
AbstractBanyanDBDAO i
List<ProfileThreadSnapshotRecord> result = new ArrayList<>(maxSequence
- minSequence);
for (final RowEntity rowEntity : resp.getElements()) {
ProfileThreadSnapshotRecord record = this.builder.storage2Entity(
- new BanyanDBConverter.StreamToEntity(rowEntity));
+ new
BanyanDBConverter.StreamToEntity(MetadataRegistry.INSTANCE.findMetadata(ProfileThreadSnapshotRecord.INDEX_NAME),
rowEntity));
result.add(record);
}
@@ -157,11 +151,11 @@ public class BanyanDBProfileThreadSnapshotQueryDAO
extends AbstractBanyanDBDAO i
@Override
public SegmentRecord getProfiledSegment(String segmentId) throws
IOException {
- StreamQueryResponse resp = query(segmentRecordMetadata,
+ StreamQueryResponse resp = query(SegmentRecord.INDEX_NAME,
ImmutableSet.of(SegmentRecord.TRACE_ID,
SegmentRecord.IS_ERROR, SegmentRecord.SERVICE_ID,
SegmentRecord.SERVICE_INSTANCE_ID,
SegmentRecord.ENDPOINT_ID, SegmentRecord.LATENCY,
SegmentRecord.START_TIME, SegmentRecord.DATA_BINARY),
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
query.appendCondition(eq(SegmentRecord.INDEX_NAME,
segmentId));
@@ -191,11 +185,11 @@ public class BanyanDBProfileThreadSnapshotQueryDAO
extends AbstractBanyanDBDAO i
}
private int querySequenceWithAgg(AggType aggType, String segmentId, long
start, long end) throws IOException {
- StreamQueryResponse resp = query(profileThreadSnapshotMetadata,
+ StreamQueryResponse resp =
query(ProfileThreadSnapshotRecord.INDEX_NAME,
ImmutableSet.of(ProfileThreadSnapshotRecord.TASK_ID,
ProfileThreadSnapshotRecord.SEGMENT_ID,
ProfileThreadSnapshotRecord.DUMP_TIME,
ProfileThreadSnapshotRecord.SEQUENCE,
ProfileThreadSnapshotRecord.STACK_BINARY),
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
query.appendCondition(eq(ProfileThreadSnapshotRecord.SEGMENT_ID, segmentId))
@@ -207,7 +201,7 @@ public class BanyanDBProfileThreadSnapshotQueryDAO extends
AbstractBanyanDBDAO i
List<ProfileThreadSnapshotRecord> records = new ArrayList<>();
for (final RowEntity rowEntity : resp.getElements()) {
ProfileThreadSnapshotRecord record = this.builder.storage2Entity(
- new BanyanDBConverter.StreamToEntity(rowEntity));
+ new
BanyanDBConverter.StreamToEntity(MetadataRegistry.INSTANCE.findMetadata(ProfileThreadSnapshotRecord.INDEX_NAME),
rowEntity));
records.add(record);
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBRecordDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBRecordDAO.java
index 3fe0e03ef7..48443b9e51 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBRecordDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBRecordDAO.java
@@ -38,11 +38,11 @@ public class BanyanDBRecordDAO implements IRecordDAO {
@Override
public InsertRequest prepareBatchInsert(Model model, Record record) throws
IOException {
- MetadataRegistry.PartialMetadata metadata =
MetadataRegistry.INSTANCE.findSchema(model.getName());
- if (metadata == null) {
+ MetadataRegistry.Schema schema =
MetadataRegistry.INSTANCE.findMetadata(model.getName());
+ if (schema == null) {
throw new IOException(model.getName() + " is not registered");
}
- StreamWrite streamWrite = new StreamWrite(metadata.getGroup(), //
group name
+ StreamWrite streamWrite = new
StreamWrite(schema.getMetadata().getGroup(), // group name
model.getName(), // index-name
record.id(), // identity
TimeBucket.getTimestamp(record.getTimeBucket(),
model.getDownsampling())); // timestamp
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBTraceQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBTraceQueryDAO.java
index e149b5ab27..b7e7d215ae 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBTraceQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/stream/BanyanDBTraceQueryDAO.java
@@ -46,16 +46,13 @@ import java.util.Collections;
import java.util.List;
public class BanyanDBTraceQueryDAO extends AbstractBanyanDBDAO implements
ITraceQueryDAO {
- private final MetadataRegistry.PartialMetadata segmentRecordMetadata =
- MetadataRegistry.INSTANCE.findSchema(SegmentRecord.INDEX_NAME);
-
public BanyanDBTraceQueryDAO(BanyanDBStorageClient client) {
super(client);
}
@Override
public TraceBrief queryBasicTraces(long startSecondTB, long endSecondTB,
long minDuration, long maxDuration, String serviceId, String serviceInstanceId,
String endpointId, String traceId, int limit, int from, TraceState traceState,
QueryOrder queryOrder, List<Tag> tags) throws IOException {
- final QueryBuilder q = new QueryBuilder() {
+ final QueryBuilder<StreamQuery> q = new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
if (minDuration != 0) {
@@ -115,7 +112,7 @@ public class BanyanDBTraceQueryDAO extends
AbstractBanyanDBDAO implements ITrace
tsRange = new
TimestampRange(TimeBucket.getTimestamp(startSecondTB),
TimeBucket.getTimestamp(endSecondTB));
}
- StreamQueryResponse resp = query(segmentRecordMetadata,
+ StreamQueryResponse resp = query(SegmentRecord.INDEX_NAME,
ImmutableSet.of(SegmentRecord.TRACE_ID, // 0 - trace_id
SegmentRecord.IS_ERROR, // 1 - is_error
SegmentRecord.SERVICE_ID, // 2 - service_id
@@ -150,7 +147,7 @@ public class BanyanDBTraceQueryDAO extends
AbstractBanyanDBDAO implements ITrace
@Override
public List<SegmentRecord> queryByTraceId(String traceId) throws
IOException {
- StreamQueryResponse resp = query(segmentRecordMetadata,
+ StreamQueryResponse resp = query(SegmentRecord.INDEX_NAME,
ImmutableSet.of(SegmentRecord.TRACE_ID,
SegmentRecord.IS_ERROR,
SegmentRecord.SERVICE_ID,
@@ -159,7 +156,7 @@ public class BanyanDBTraceQueryDAO extends
AbstractBanyanDBDAO implements ITrace
SegmentRecord.LATENCY,
SegmentRecord.START_TIME,
SegmentRecord.DATA_BINARY),
- new QueryBuilder() {
+ new QueryBuilder<StreamQuery>() {
@Override
public void apply(StreamQuery query) {
query.appendCondition(eq(SegmentRecord.TRACE_ID,
traceId));
@@ -170,7 +167,7 @@ public class BanyanDBTraceQueryDAO extends
AbstractBanyanDBDAO implements ITrace
for (final RowEntity rowEntity : resp.getElements()) {
SegmentRecord segmentRecord = new
SegmentRecord.Builder().storage2Entity(
- new BanyanDBConverter.StreamToEntity(rowEntity));
+ new
BanyanDBConverter.StreamToEntity(MetadataRegistry.INSTANCE.findMetadata(SegmentRecord.INDEX_NAME),
rowEntity));
segmentRecords.add(segmentRecord);
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/util/ByteUtil.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/util/ByteUtil.java
new file mode 100644
index 0000000000..5ae1102e38
--- /dev/null
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/util/ByteUtil.java
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.skywalking.oap.server.storage.plugin.banyandb.util;
+
+import java.nio.ByteBuffer;
+
+public class ByteUtil {
+ private static final ThreadLocal<ByteBuffer> BYTE_BUFFER =
ThreadLocal.withInitial(() -> ByteBuffer.allocate(8));
+
+ public static Double bytes2Double(byte[] bytes) {
+ return BYTE_BUFFER.get().put(bytes).getDouble();
+ }
+
+ public static byte[] double2Bytes(double number) {
+ return BYTE_BUFFER.get().putDouble(number).array();
+ }
+}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/endpoint_relation_server_side.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/endpoint_relation_server_side.json
deleted file mode 100644
index 2a203c1679..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/endpoint_relation_server_side.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "metadata": {
- "name": "endpoint_relation_server_side",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "component_id",
- "type": "TAG_TYPE_INT"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "source_endpoint",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dest_endpoint",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "entity_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "source_endpoint",
- "dest_endpoint"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/endpoint_traffic.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/endpoint_traffic.json
deleted file mode 100644
index 459b77d808..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/endpoint_traffic.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "metadata": {
- "name": "endpoint_traffic",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": []
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "name",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "service_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/events.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/events.json
deleted file mode 100644
index 37a02eca24..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/events.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "metadata": {
- "name": "events",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "message",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "parameters",
- "type": "TAG_TYPE_STRING"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "uuid",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "service",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "service_instance",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "endpoint",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "name",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "type",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "start_time",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "end_time",
- "type": "TAG_TYPE_INT"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "uuid"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/component_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/component_id.json
deleted file mode 100644
index 9b52f22ba2..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/component_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "component_id",
- "group": "default"
- },
- "tags": [
- "component_id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/create_time.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/create_time.json
deleted file mode 100644
index addab64e17..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/create_time.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "create_time",
- "group": "default"
- },
- "tags": [
- "create_time"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/db.instance.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/db.instance.json
deleted file mode 100644
index 5d5c159c39..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/db.instance.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "db.instance",
- "group": "default"
- },
- "tags": [
- "db.instance"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/db.type.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/db.type.json
deleted file mode 100644
index 67914ee464..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/db.type.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "db.type",
- "group": "default"
- },
- "tags": [
- "db.type"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dest_endpoint.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dest_endpoint.json
deleted file mode 100644
index affb1fdf17..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dest_endpoint.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "dest_endpoint",
- "group": "default"
- },
- "tags": [
- "dest_endpoint"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dest_service_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dest_service_id.json
deleted file mode 100644
index 3bb400392e..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dest_service_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "dest_service_id",
- "group": "default"
- },
- "tags": [
- "dest_service_id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/disabled.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/disabled.json
deleted file mode 100644
index 19a1c1b204..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/disabled.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "disabled",
- "group": "default"
- },
- "tags": [
- "disabled"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dump_period.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dump_period.json
deleted file mode 100644
index 25ae87f411..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dump_period.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "dump_period",
- "group": "default"
- },
- "tags": [
- "dump_period"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dump_time.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dump_time.json
deleted file mode 100644
index 6073ee7740..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/dump_time.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "dump_time",
- "group": "default"
- },
- "tags": [
- "dump_time"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/duration.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/duration.json
deleted file mode 100644
index 6f18db1359..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/duration.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "duration",
- "group": "default"
- },
- "tags": [
- "duration"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/end_time.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/end_time.json
deleted file mode 100644
index 951a1c88b9..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/end_time.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "end_time",
- "group": "default"
- },
- "tags": [
- "end_time"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint.json
deleted file mode 100644
index f9fefdddf0..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "endpoint",
- "group": "default"
- },
- "tags": [
- "endpoint"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint_id.json
deleted file mode 100644
index 7da3b0d2f5..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "endpoint_id",
- "group": "default"
- },
- "tags": [
- "endpoint_id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint_name.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint_name.json
deleted file mode 100644
index 0678ae4691..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/endpoint_name.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "endpoint_name",
- "group": "default"
- },
- "tags": [
- "endpoint_name"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/entity_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/entity_id.json
deleted file mode 100644
index 31ece658a6..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/entity_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "entity_id",
- "group": "default"
- },
- "tags": [
- "entity_id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/http.method.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/http.method.json
deleted file mode 100644
index 3001154bfc..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/http.method.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "http.method",
- "group": "default"
- },
- "tags": [
- "http.method"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/id.json
deleted file mode 100644
index c90b39ac62..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "id",
- "group": "default"
- },
- "tags": [
- "id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/last_ping.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/last_ping.json
deleted file mode 100644
index 7d063b2dd4..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/last_ping.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "last_ping",
- "group": "default"
- },
- "tags": [
- "last_ping"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/last_update_time_bucket.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/last_update_time_bucket.json
deleted file mode 100644
index bbde5cf37b..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/last_update_time_bucket.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "last_update_time_bucket",
- "group": "default"
- },
- "tags": [
- "last_update_time_bucket"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/latency.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/latency.json
deleted file mode 100644
index 4eb445055f..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/latency.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "latency",
- "group": "default"
- },
- "tags": [
- "latency"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/layer.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/layer.json
deleted file mode 100644
index 05455e1d6b..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/layer.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "layer",
- "group": "default"
- },
- "tags": [
- "layer"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/max_sampling_count.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/max_sampling_count.json
deleted file mode 100644
index 1fb14a84c2..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/max_sampling_count.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "max_sampling_count",
- "group": "default"
- },
- "tags": [
- "max_sampling_count"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/min_duration_threshold.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/min_duration_threshold.json
deleted file mode 100644
index f359e2d5ba..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/min_duration_threshold.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "min_duration_threshold",
- "group": "default"
- },
- "tags": [
- "min_duration_threshold"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.broker.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.broker.json
deleted file mode 100644
index 0cfbd278dd..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.broker.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "mq.broker",
- "group": "default"
- },
- "tags": [
- "mq.broker"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.queue.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.queue.json
deleted file mode 100644
index 0c589fc6e4..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.queue.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "mq.queue",
- "group": "default"
- },
- "tags": [
- "mq.queue"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.topic.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.topic.json
deleted file mode 100644
index 5dc51fcf66..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/mq.topic.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "mq.topic",
- "group": "default"
- },
- "tags": [
- "mq.topic"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/name.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/name.json
deleted file mode 100644
index db25d029f2..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/name.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "name",
- "group": "default"
- },
- "tags": [
- "name"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/operation_time.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/operation_time.json
deleted file mode 100644
index 30222bc484..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/operation_time.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "operation_time",
- "group": "default"
- },
- "tags": [
- "operation_time"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/segment_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/segment_id.json
deleted file mode 100644
index a58129eab2..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/segment_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "segment_id",
- "group": "default"
- },
- "tags": [
- "segment_id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/sequence.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/sequence.json
deleted file mode 100644
index 2bbd960809..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/sequence.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "sequence",
- "group": "default"
- },
- "tags": [
- "sequence"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service.json
deleted file mode 100644
index 4764f16eca..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "service",
- "group": "default"
- },
- "tags": [
- "service"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_group.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_group.json
deleted file mode 100644
index 3cecbefa13..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_group.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "service_group",
- "group": "default"
- },
- "tags": [
- "service_group"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_id.json
deleted file mode 100644
index 76c3f67d22..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "service_id",
- "group": "default"
- },
- "tags": [
- "service_id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_instance.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_instance.json
deleted file mode 100644
index 73d84e7151..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/service_instance.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "service_instance",
- "group": "default"
- },
- "tags": [
- "service_instance"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/source_endpoint.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/source_endpoint.json
deleted file mode 100644
index 164962f91c..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/source_endpoint.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "source_endpoint",
- "group": "default"
- },
- "tags": [
- "source_endpoint"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/source_service_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/source_service_id.json
deleted file mode 100644
index f54b191164..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/source_service_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "source_service_id",
- "group": "default"
- },
- "tags": [
- "component_id"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/start_time.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/start_time.json
deleted file mode 100644
index 5a73ad12f4..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/start_time.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "start_time",
- "group": "default"
- },
- "tags": [
- "start_time"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/status_code.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/status_code.json
deleted file mode 100644
index ad034773f5..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/status_code.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "status_code",
- "group": "default"
- },
- "tags": [
- "status_code"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/trace_id.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/trace_id.json
deleted file mode 100644
index 2f84bfb489..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/trace_id.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "trace_id",
- "group": "default"
- },
- "tags": [
- "trace_id"
- ],
- "type": "TYPE_TREE",
- "location": "LOCATION_GLOBAL",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/type.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/type.json
deleted file mode 100644
index db25d029f2..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/type.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "name",
- "group": "default"
- },
- "tags": [
- "name"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/uuid.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/uuid.json
deleted file mode 100644
index 4cd401c3dc..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/index_rules/uuid.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "metadata": {
- "name": "uuid",
- "group": "default"
- },
- "tags": [
- "uuid"
- ],
- "type": "TYPE_INVERTED",
- "location": "LOCATION_SERIES",
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/instance_traffic.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/instance_traffic.json
deleted file mode 100644
index fc728af744..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/instance_traffic.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "metadata": {
- "name": "instance_traffic",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "data_binary",
- "type": "TAG_TYPE_DATA_BINARY"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "last_ping",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "service_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/network_address_alias.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/network_address_alias.json
deleted file mode 100644
index 0dc6f344c0..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/network_address_alias.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "metadata": {
- "name": "network_address_alias",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "time_bucket",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "address",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "represent_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "represent_service_instance_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "last_update_time_bucket",
- "type": "TAG_TYPE_INT"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "represent_service_id",
- "represent_service_instance_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task.json
deleted file mode 100644
index 85c5901c8c..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "metadata": {
- "name": "profile_task",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": []
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "endpoint_name",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "start_time",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "duration",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "min_duration_threshold",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "dump_period",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "create_time",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "max_sampling_count",
- "type": "TAG_TYPE_INT"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "service_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task_log.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task_log.json
deleted file mode 100644
index 6fa6ccb244..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task_log.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "metadata": {
- "name": "profile_task_log",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "task_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "operation_type",
- "type": "TAG_TYPE_INT"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "operation_time",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "instance_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "instance_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task_segment_snapshot.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task_segment_snapshot.json
deleted file mode 100644
index a5fcbcbf5c..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/profile_task_segment_snapshot.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "metadata": {
- "name": "profile_task_segment_snapshot",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "stack_binary",
- "type": "TAG_TYPE_DATA_BINARY"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "task_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "segment_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dump_time",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "sequence",
- "type": "TAG_TYPE_INT"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "task_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/segment.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/segment.json
deleted file mode 100644
index 7a8343d45c..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/segment.json
+++ /dev/null
@@ -1,86 +0,0 @@
-{
- "metadata": {
- "name": "segment",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "data_binary",
- "type": "TAG_TYPE_DATA_BINARY"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "trace_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "is_error",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "service_instance_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "endpoint_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "latency",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "start_time",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "http.method",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "status_code",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "db.type",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "db.instance",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "mq.queue",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "mq.topic",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "mq.broker",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "service_id",
- "service_instance_id",
- "is_error"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_instance_relation_client_side.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_instance_relation_client_side.json
deleted file mode 100644
index edd49ef287..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_instance_relation_client_side.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "metadata": {
- "name": "service_instance_relation_client_side",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "component_id",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "source_service_instance_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dest_service_instance_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "source_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dest_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "entity_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "source_service_id",
- "dest_service_id"
- ]
- },
- "opts": {
- "shard_num": 2,
- "ttl": {
- "val": 7,
- "unit": "DURATION_UNIT_DAY"
- }
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_instance_relation_server_side.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_instance_relation_server_side.json
deleted file mode 100644
index a8c6089421..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_instance_relation_server_side.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "metadata": {
- "name": "service_instance_relation_server_side",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "component_id",
- "type": "TAG_TYPE_INT"
- },
- {
- "name": "source_service_instance_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dest_service_instance_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "source_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dest_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "entity_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "source_service_id",
- "dest_service_id"
- ]
- },
- "opts": {
- "shard_num": 2,
- "ttl": {
- "val": 7,
- "unit": "DURATION_UNIT_DAY"
- }
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_relation_client_side.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_relation_client_side.json
deleted file mode 100644
index 1f74420c2c..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_relation_client_side.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "metadata": {
- "name": "service_relation_client_side",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "component_id",
- "type": "TAG_TYPE_INT"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "source_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dest_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "entity_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "source_service_id",
- "dest_service_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_relation_server_side.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_relation_server_side.json
deleted file mode 100644
index 13c2cc6177..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_relation_server_side.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "metadata": {
- "name": "service_relation_server_side",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "component_id",
- "type": "TAG_TYPE_INT"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "source_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "dest_service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "entity_id",
- "type": "TAG_TYPE_STRING"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "source_service_id",
- "dest_service_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_traffic.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_traffic.json
deleted file mode 100644
index b009a199cf..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/service_traffic.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "metadata": {
- "name": "service_traffic",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "short_name",
- "type": "TAG_TYPE_STRING"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "name",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "service_id",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "service_group",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "layer",
- "type": "TAG_TYPE_INT"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "service_id"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/ui_template.json
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/ui_template.json
deleted file mode 100644
index b01e8baae0..0000000000
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/resources/metadata/ui_template.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "metadata": {
- "name": "ui_template",
- "group": "default-stream"
- },
- "tag_families": [
- {
- "name": "data",
- "tags": [
- {
- "name": "type",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "configuration",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "activated",
- "type": "TAG_TYPE_INT"
- }
- ]
- },
- {
- "name": "searchable",
- "tags": [
- {
- "name": "name",
- "type": "TAG_TYPE_STRING"
- },
- {
- "name": "disabled",
- "type": "TAG_TYPE_INT"
- }
- ]
- }
- ],
- "entity": {
- "tag_names": [
- "name"
- ]
- },
- "updated_at": "2021-04-15T01:30:15.01Z"
-}
\ No newline at end of file