public function getIndex($indexIdentifier, $storeId, $date)
    {
        $indexName = $indexIdentifier;

        try {
            $indexAlias = $this->indexManager->getIndexAlias($indexIdentifier, $storeId);
            $indexName  = $this->indexManager->getIndexName($indexIdentifier, $storeId, $date);

            if (!isset($this->indices[$indexName])) {
                $indexSettings = $this->indexSettings->getIndicesConfig();
                $indexConfig = array_merge(['identifier' => $indexAlias, 'name' => $indexName], $indexSettings[$indexIdentifier]);
                $this->indices[$indexName] = $this->indexFactory->create($indexConfig);
                $this->indexManager->createIndexIfNotExists($this->indices[$indexName], $storeId);
            }
        } catch (\Magento\Framework\Exception\NoSuchEntityException $e) {
            $this->indices[$indexName] = null;
        }

        return $this->indices[$indexName];
    }