Migliorare l'efficienza del flusso di dati: Zilliz introduce Upsert, Kafka Connector e l'integrazione Airbyte
Nell’attuale panorama guidato dai dati, un’ingestione dei dati efficiente e pipeline di dati robuste costituiscono la spina dorsale di qualsiasi potente sistema di database. In Zilliz, i nostri recenti miglioramenti in queste aree—in particolare l’introduzione di Upsert, Kafka Connector e dell’integrazione con Airbyte—sottolineano il nostro impegno a fornire agli sviluppatori un database vettoriale che eccelle in prestazioni, versatilità e facilità di integrazione. Abbiamo progettato queste nuove aggiunte per semplificare la gestione dei dati, offrendo un’integrazione fluida e un controllo migliorato sul flusso dei dati, consentendo così agli sviluppatori di concentrarsi sulla creazione di applicazioni innovative senza l’onere di gestire complessi processi di ingestione dei dati.
Semplificare gli aggiornamenti dei dati con Upsert
Nelle versioni precedenti di Milvus, l’aggiornamento dei dati in molti scenari utente prevedeva un processo in due passaggi: eliminazione, poi inserimento. Questo metodo, pur essendo funzionale, presentava svantaggi significativi, principalmente l’impossibilità di garantire l’atomicità dei dati e la praticità operativa. Riconoscendo queste sfide, abbiamo introdotto Upsert in Milvus 2.3, cambiando radicalmente il modo in cui vengono gestiti gli aggiornamenti dei dati. Siamo entusiasti che Upsert sia ora in Public Preview in Zilliz Cloud.
Upsert semplifica il processo di aggiornamento: se i dati non esistono nel sistema, li inserisce; se esistono, li aggiorna. Questo approccio è costruito attorno al concetto cruciale di atomicità, garantendo che le operazioni di Upsert siano percepite esternamente come un’unica azione, indipendentemente dal fatto che comportino un inserimento o un’eliminazione.
Internamente, questo metodo è non convenzionale ma altamente efficace: prima inseriamo e poi eliminiamo. Questa sequenza è fondamentale per mantenere la visibilità dei dati durante l’operazione, soprattutto in un sistema come Milvus, dove inserimenti ed eliminazioni vengono gestiti in segmenti diversi.
Inoltre, Upsert è progettato specificamente per gestire le modifiche alla chiave primaria con attenta considerazione. La colonna della chiave primaria non può essere modificata durante un aggiornamento, il che è in linea con il modo in cui Milvus gestisce i dati tra gli shard in base all’hash della chiave primaria. Questo vincolo evita le complessità e le potenziali incoerenze delle operazioni tra shard.
Usare Upsert è semplice e rispecchia l’operazione Insert in molti modi. Gli sviluppatori possono integrare facilmente Upsert nei loro flussi di lavoro esistenti con modifiche minime. Ad esempio, negli SDK come Pymilvus, il comando Upsert può essere invocato in modo simile a Insert, offrendo un’esperienza fluida a chi ha familiarità con la piattaforma.
Quando viene eseguito, Upsert fornisce un riscontro sul successo dell’operazione e sul numero di righe interessate, aumentando la facilità d’uso per gli sviluppatori. Questa semplicità d’uso, unita alla robustezza dell’operazione, rende Upsert uno strumento prezioso nell’arsenale di gestione dei dati. Per maggiori dettagli, puoi consultare la documentazione di Upsert.
Tuttavia, è importante riconoscere alcune considerazioni specifiche relative a Upsert.
Vincolo AutoID: Upsert richiede che AutoID sia impostato su false. Le operazioni di Upsert non possono essere eseguite se lo schema di una collection ha AutoID impostato su true. Questa limitazione esiste perché Upsert, un’operazione di aggiornamento, richiede l’invio di una chiave primaria per aggiornare il batch di dati corrispondente. Esiste un potenziale conflitto se una chiave primaria fornita dall’utente entra in conflitto con una chiave primaria assegnata da AutoID, portando alla sovrascrittura dei dati. Pertanto, le collection con AutoID abilitato non possono supportare Upser per ora. Tuttavia, iterazioni future potrebbero rimuovere questa restrizione.
Overhead delle prestazioni: Upsert può comportare costi in termini di prestazioni. Milvus utilizza un’architettura Write-Ahead Logging (WAL) e cancellazioni eccessive possono portare a un degrado delle prestazioni. Questo perché le operazioni di cancellazione in Milvus non eliminano immediatamente i dati. Invece, contrassegnano i dati con un record di cancellazione. Questo record viene elaborato e i dati vengono rimossi solo durante un successivo processo di compattazione. Pertanto, cancellazioni frequenti possono portare a un rigonfiamento dei dati e influire sulle prestazioni. Si consiglia di non utilizzare eccessivamente o impropriamente Upsert per prestazioni ottimali.
Man mano che procediamo, verranno rilasciate altre nuove funzionalità come Upsert nell’ambito del nostro impegno continuo a perfezionare e far progredire le nostre capacità di gestione dei dati, assicurando che gli sviluppatori siano dotati degli strumenti necessari per una gestione dei dati efficiente ed efficace.
Potenziare le soluzioni di dati in tempo reale con Kafka Connector
Abbiamo recentemente annunciato il Kafka Sink Connector con Milvus open-source e Zilliz Cloud. Questo sviluppo consente lo streaming fluido e in tempo reale di dati vettoriali da Confluent/ Kafka nei database vettoriali Milvus o Zilliz. Questa integrazione è fondamentale per sfruttare la potenza dei dati non strutturati e potenziare le capacità dell’AI generativa in tempo reale, soprattutto con modelli avanzati come GPT-4 di OpenAI.
La collaborazione tra Zilliz e Confluent rappresenta un progresso significativo nella gestione e nell’utilizzo del volume sempre crescente di dati non strutturati, che ora costituiscono oltre l’80% delle informazioni appena create. Abilitando lo streaming di dati vettoriali in tempo reale, forniamo una soluzione solida per archiviare, elaborare e rendere questi dati facilmente ricercabili in modo efficiente.
Esempi di casi d’uso con questo connector includono:
Potenziare l’AI generativa: Fornire dati vettoriali aggiornati per le applicazioni GenAI consente insight più accurati e tempestivi. Ciò è particolarmente vantaggioso in settori come finanza e media, dove lo streaming di embedding vettoriali da varie fonti di dati è cruciale.
Ottimizzare le raccomandazioni e-commerce: Con aggiornamenti in tempo reale dell’inventario e del comportamento dei clienti, le piattaforme e-commerce possono adattare dinamicamente le proprie raccomandazioni, migliorando l’esperienza utente.
Iniziare con questa integrazione è semplice:
Scarica il Kafka Sink Connector da GitHub o Confluent Hub.
Configura i tuoi account Confluent e Zilliz, assicurandoti che i nomi dei campi corrispondano su entrambe le piattaforme.
Carica e configura il Connector, seguendo le istruzioni dettagliate nel nostro repository GitHub.
Avvia il Connector e sperimenta lo streaming di dati in tempo reale da Kafka a Zilliz.
Per una guida approfondita su configurazione, casi d’uso e istruzioni passo passo, ti invitiamo a visitare il nostro repository GitHub ed esplorare la nostra pagina di integrazione Confluent.
Facilitare un’integrazione efficiente dei dati con Airbyte Integration
Di recente abbiamo collaborato con il team di Airbyte per integrare Airbyte in Milvus, trasformando l’ingestione e l’utilizzo dei dati nei Large Language Models (LLMs) e nei database vettoriali. Questa integrazione migliora l’archiviazione, l’indicizzazione e la ricerca di dati vettoriali ad alta dimensionalità, aspetti cruciali per applicazioni come le risposte di chat generative e le raccomandazioni di prodotti.
Punti chiave dell’integrazione:
Trasferimento dei dati efficiente: Airbyte trasferisce senza problemi i dati da varie fonti in Milvus/ Zilliz, consentendo il calcolo degli embedding vettoriali al volo e semplificando l’elaborazione dei dati.
Funzionalità di ricerca avanzata: Questa integrazione potenzia le capacità di ricerca semantica nei database vettoriali. Utilizzando gli embedding, il sistema può identificare e presentare automaticamente contenuti strettamente correlati in base alla similarità semantica, un aspetto prezioso per le applicazioni che richiedono un recupero efficiente da dati non strutturati.
Processo di configurazione semplice: Configurare un cluster Milvus e configurare Airbyte per la sincronizzazione dei dati è semplice, così come lo è creare applicazioni utilizzando Streamlit e l’API di embedding di OpenAI, se lo si desidera.
Questa integrazione semplifica il trasferimento e l’elaborazione dei dati e apre nuove possibilità per applicazioni in tempo reale basate sull’IA. Ad esempio, nei sistemi di assistenza clienti, l’integrazione di questa tecnologia può creare moduli di supporto intelligenti utilizzando la ricerca semantica. Ciò consente al sistema di fornire agli utenti informazioni istantanee e pertinenti, riducendo la necessità di intervento diretto da parte degli agenti di supporto e migliorando l’esperienza utente complessiva.
Consulta il nostro blog di rilascio per un esempio dettagliato di applicazione pratica, come l’utilizzo di Zendesk come fonte di dati. Questo esempio dimostra come applicare l’integrazione in scenari reali, migliorando la gestione dei ticket di supporto e l’accessibilità della knowledge base.
L’integrazione tra Airbyte e Milvus rappresenta un significativo passo avanti nell’IA e nella gestione dei dati, fornendo una soluzione efficiente per la gestione dei dati vettoriali. Crea nuove opportunità per sviluppatori e aziende che cercano di sfruttare appieno il potenziale dell’IA nelle proprie operazioni.
Conclusione
Lo sviluppo e l’integrazione continui di strumenti come Upsert, Kafka Connector e Airbyte con il database vettoriale di Zilliz sottolineano il nostro impegno nel far progredire le tecnologie di gestione dei dati non strutturati. Questi miglioramenti sono pensati per aumentare le prestazioni di ricerca e semplificare l’intera pipeline dei dati, rendendola più efficiente e adatta agli sviluppatori.
Guardando al futuro, abbiamo in programma di ampliare ulteriormente la nostra suite di funzionalità di ingestione dei dati e di pipeline. Resta sintonizzato per questi aggiornamenti, mentre continuiamo a innovare e a fornire strumenti che rispondono alle esigenze in evoluzione della gestione dei dati non strutturati e delle applicazioni basate sull’IA.
Apprezziamo profondamente i feedback e gli spunti della community degli sviluppatori e ci dedichiamo al miglioramento continuo. Le tue esperienze e i tuoi suggerimenti sono cruciali nel nostro percorso per far progredire queste tecnologie. Ci piacerebbe ricevere tue notizie. Sentiti libero di unirti alla nostra community GitHub o di inviare direttamente il tuo feedback aprendo un ticket qui.
Continua a leggere

Zilliz Cloud Now Available in AWS Europe (Ireland)
Zilliz Cloud launches in AWS eu-west-1 (Ireland) — bringing low-latency vector search, EU data residency, and full GDPR-ready infrastructure to European AI teams. Now live across 30 regions on five cloud providers.

Top 10 Context Engineering Techniques You Should Know for Production RAG
A practical guide to context engineering for production LLM systems, covering RAG, context processing, memory, agents, and multimodal context.

Zilliz Cloud Update: Tiered Storage, Business Critical Plan, Cross-Region Backup, and Pricing Changes
This release offers a rebuilt tiered storage with lower costs, a new Business Critical plan for enhanced security, and pricing updates, among other features.


