private void checkHasSameEntity(FeatureSet featureSet) { String entityName = featureSet.getEntityName(); if (Strings.isNullOrEmpty(entityName)) { throw new IllegalArgumentException("entity name in feature set is null or empty"); } if (featureSet.getFeatureIdsCount() < 1) { throw new IllegalArgumentException("feature set is empty"); } for (String featureId : featureSet.getFeatureIdsList()) { String entity = featureId.split("\\.")[0]; if (!entityName.equals(entity)) { throw new IllegalArgumentException("feature set contains different entity name: " + entity); } } } }
@java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!getEntityNameBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, entityName_); } { int dataSize = 0; for (int i = 0; i < featureIds_.size(); i++) { dataSize += computeStringSizeNoTag(featureIds_.getRaw(i)); } size += dataSize; size += 1 * getFeatureIdsList().size(); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; }
@java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!getEntityNameBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, entityName_); } { int dataSize = 0; for (int i = 0; i < featureIds_.size(); i++) { dataSize += computeStringSizeNoTag(featureIds_.getRaw(i)); } size += dataSize; size += 1 * getFeatureIdsList().size(); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; }
/** * Create query from a template. * * @param featureSet feature set * @param startDate start date * @param endDate end date * @param limit limit * @return SQL query for creating training table. */ public String createQuery( FeatureSet featureSet, Timestamp startDate, Timestamp endDate, long limit) { List<String> featureIds = featureSet.getFeatureIdsList(); List<FeatureInfo> featureInfos = featureInfoRepository.findAllById(featureIds); if (featureInfos.size() < featureIds.size()) { Set<String> foundFeatureIds = featureInfos.stream().map(FeatureInfo::getId).collect(Collectors.toSet()); featureIds.removeAll(foundFeatureIds); throw new NoSuchElementException("features not found: " + featureIds); } List<Feature> features = toFeatureTemplates(featureInfos); List<FeatureGroup> featureGroups = groupFeatureTemplate(features); String startDateStr = formatDateString(startDate); String endDateStr = formatDateString(endDate); String limitStr = (limit != 0) ? String.valueOf(limit) : null; return renderTemplate(featureGroups, startDateStr, endDateStr, limitStr); }
@java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!getEntityNameBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, entityName_); } { int dataSize = 0; for (int i = 0; i < featureIds_.size(); i++) { dataSize += computeStringSizeNoTag(featureIds_.getRaw(i)); } size += dataSize; size += 1 * getFeatureIdsList().size(); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; }
@java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof feast.core.DatasetServiceProto.FeatureSet)) { return super.equals(obj); } feast.core.DatasetServiceProto.FeatureSet other = (feast.core.DatasetServiceProto.FeatureSet) obj; boolean result = true; result = result && getEntityName() .equals(other.getEntityName()); result = result && getFeatureIdsList() .equals(other.getFeatureIdsList()); result = result && unknownFields.equals(other.unknownFields); return result; }
@java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof feast.core.DatasetServiceProto.FeatureSet)) { return super.equals(obj); } feast.core.DatasetServiceProto.FeatureSet other = (feast.core.DatasetServiceProto.FeatureSet) obj; boolean result = true; result = result && getEntityName() .equals(other.getEntityName()); result = result && getFeatureIdsList() .equals(other.getFeatureIdsList()); result = result && unknownFields.equals(other.unknownFields); return result; }
@java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + ENTITYNAME_FIELD_NUMBER; hash = (53 * hash) + getEntityName().hashCode(); if (getFeatureIdsCount() > 0) { hash = (37 * hash) + FEATUREIDS_FIELD_NUMBER; hash = (53 * hash) + getFeatureIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; }
@java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + ENTITYNAME_FIELD_NUMBER; hash = (53 * hash) + getEntityName().hashCode(); if (getFeatureIdsCount() > 0) { hash = (37 * hash) + FEATUREIDS_FIELD_NUMBER; hash = (53 * hash) + getFeatureIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; }
@java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof feast.core.DatasetServiceProto.FeatureSet)) { return super.equals(obj); } feast.core.DatasetServiceProto.FeatureSet other = (feast.core.DatasetServiceProto.FeatureSet) obj; boolean result = true; result = result && getEntityName() .equals(other.getEntityName()); result = result && getFeatureIdsList() .equals(other.getFeatureIdsList()); result = result && unknownFields.equals(other.unknownFields); return result; }
@java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + ENTITYNAME_FIELD_NUMBER; hash = (53 * hash) + getEntityName().hashCode(); if (getFeatureIdsCount() > 0) { hash = (37 * hash) + FEATUREIDS_FIELD_NUMBER; hash = (53 * hash) + getFeatureIdsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; }