I don't know if this is what you are looking for, but I am playing with storage too
# docs
from llama_index import SimpleDirectoryReader
documents = SimpleDirectoryReader("/RAG_VectorDB/test/").load_data()
print("Document ID:", documents[0].doc_id)
print('index')
index = VectorStoreIndex.from_documents(documents, service_context=service_context, storage_context=storage_context)
#index = VectorStoreIndex.from_vector_store(vector_store, service_context=service_context, storage_context=storage_context)
# save vector
#for doc in documents:
# index.insert(doc)
#index.storage_context.persist()
You can load the documents with the first index function, also save them in the database with the lower function.
I am currently using milvus, for me this last function creates entities, but after restart they are gone, but I hope this might help you a bit