private Map<String, NodeFamily> cache() {
        return nodeCache.updateAndGet((cached) -> {
            if (cached != null)
                return cached;

            Map<String, List<Node>> children = new HashMap<>();
            for (Node node : this)
                node.parentHostname().ifPresent(parent -> children.computeIfAbsent(parent, __ -> new ArrayList<>()).add(node));

            Map<String, NodeFamily> families = new HashMap<>();
            for (Node node : this)
                families.put(node.hostname(), new NodeFamily(node, children.getOrDefault(node.hostname(), List.of())));

            return families;
        });
    }
Get node family, by given hostname
node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeList.java