Pinecone offers a number of best practice tips for making the most of your use of the system. We’ve collected some of them here for your convenience.

How do I choose the right vector embeddings for my use case?

The choice of vector embeddings depends on your specific application. For text-based applications, embeddings like BERT or GPT can be effective. For images, CNN-based embeddings might be better. It’s crucial to experiment with different embeddings to find the one that offers the best performance for your needs.

What are some best practices for indexing in Pinecone?

  • Batching: Batch your data during the indexing process to optimize speed and efficiency.
  • Dimensionality: Consider the dimensionality of your vectors. Higher dimensions can offer more accuracy but require more resources.
  • Metadata: Store relevant metadata alongside vectors for more context during retrieval.
  • Namespaces: When indexing, try to use namespaces to keep your data among tenants separate, and do not use multiple indexes for this purpose. Namespaces are more efficient and more affordable in the long run.

How do I maintain high query performance in Pinecone?

  • Optimize Query Size: Keep your query vector size consistent with your index vector size.
  • Parallel Queries: Utilize parallel querying to enhance throughput.
  • Cache Strategies: Implement caching for frequently accessed data to reduce latency.

What are the security best practices in Pinecone?

  • Access Controls: Never share your Pinecone API key with any unauthorized users. API keys grant full access to a Pinecone project and can be used to read, write, edit, and delete data and vectors. If your API key is exposed, delete the key and generate a new one in the console at your earliest opportunity. You can do so in the API Keys section of any Project page.
  • Monitoring: Regularly monitor your Pinecone instances for any unusual activity. Monitoring is available via metrics in the Pinecone console as well via Prometheus endpoints. Please see more in our documentation on monitoring.

How do I ensure data consistency in Pinecone?

  • Regular Backups: Implement regular backups of your data using collections.
  • Consistent Indexing: Ensure consistent vector representations during the indexing process.
  • Concurrency Control: Use Pinecone’s built-in concurrency controls to manage simultaneous data updates.