Esportazione Dati in HarborDB

Guides
Ultimo aggiornamento: 16 febbraio 2026

HarborDB fornisce capacità di esportazione potenti per salvare i risultati delle query in vari formati. Che tu debba condividere dati con colleghi, importare in altre applicazioni, o archiviare risultati per analisi successive, questa guida copre tutto ciò che devi sapere per esportare dati in modo efficiente e sicuro.

Panoramica dei Formati di Esportazione

HarborDB supporta più formati di esportazione, ciascuno adatto a diversi casi d'uso:

CSV (Valori Separati da Virgola)

  • Ideale per: Fogli di calcolo (Excel, Google Sheets), import/export dati, scambio dati di base
  • Caratteristiche: Delimitatori personalizzati, intestazioni, qualificatori di testo, opzioni di codifica
  • Limitazioni: Nessun supporto per dati gerarchici, preservazione limitata dei tipi di dati

JSON (JavaScript Object Notation)

  • Ideale per: Applicazioni web, API, database NoSQL, interscambio dati
  • Caratteristiche: Formattazione leggibile, formattazione compatta, preserva tipi di dati
  • Limitazioni: Dimensione file maggiore, non ideale per fogli di calcolo

Excel (Prossimamente)

  • Ideale per: Report aziendali, fogli di calcolo formattati, presentazione dati complessi
  • Caratteristiche: Fogli multipli, formule, formattazione, grafici
  • Stato: Pianificato per release futura

Processo Base di Esportazione

Passo 1: Prepara i Tuoi Dati

  1. Esegui una query o seleziona una tabella nella barra laterale
  2. Rivedi i risultati per assicurarti che contengano i dati che vuoi esportare
  3. Considera il filtraggio se hai bisogno solo di righe o colonne specifiche

Passo 2: Avvia l'Esportazione

Ci sono diversi modi per iniziare un'esportazione:

Da Risultati Query

  1. Clicca il pulsante Esporta (📤) nella barra degli strumenti dei risultati
  2. Oppure clicca con il tasto destro ovunque nella griglia dei risultati
  3. Seleziona "Esporta Risultati" dal menu contestuale

Da Navigazione Tabelle

  1. Clicca con il tasto destro su una tabella nella barra laterale
  2. Seleziona "Esporta Dati"
  3. Scegli ambito di esportazione:
    • Tabella intera: Tutti i dati (usa con cautela su tabelle grandi)
    • Prime N righe: Campione limitato (raccomandato per test)
    • Query personalizzata: Scrivi una specifica istruzione SELECT

Scorciatoie da Tastiera

  • ⌘ + E: Finestra di dialogo esportazione rapida
  • ⌘ + Shift + E: Esporta con ultime impostazioni usate

Passo 3: Configura le Impostazioni di Esportazione

La finestra di dialogo di esportazione fornisce opzioni di configurazione:

Impostazioni Generali

  • Nome File: Nome generato automaticamente o personalizzato
  • Posizione Salvataggio: Scegli cartella di destinazione
  • Includi Intestazioni: Nomi colonne come prima riga (CSV)
  • Codifica: UTF-8 (raccomandato), Latin-1, o default del sistema

Opzioni Specifiche CSV

  • Delimitatore: Virgola, punto e virgola, tabulazione, pipe, o carattere personalizzato
  • Qualificatore Testo: Virgolette singole, doppie, o nessuno
  • Terminazione Righe: macOS/Linux (LF), Windows (CRLF), o default del sistema
  • Rappresentazione Null: Stringa vuota, "NULL", o testo personalizzato

Opzioni Specifiche JSON

  • Formato: Leggibile (pretty) o Compatto (minimizzato)
  • Formato Array: Array di oggetti o oggetto con proprietà data
  • Includi Metadati: Informazioni esecuzione query, tipi colonne, timestamp

Passo 4: Esegui e Verifica

  1. Clicca "Esporta" per salvare il file
  2. Monitora il progresso per esportazioni grandi
  3. Verifica dimensione file e contenuto
  4. Apri file esportato per confermare la formattazione

Tecniche Avanzate di Esportazione

Esportare Sottoinsiemi Specifici di Dati

Selezione Colonne

Esporta solo colonne specifiche modificando la tua query:

-- Invece di SELECT *
SELECT customer_id, email, last_purchase_date
FROM customers
WHERE active = true;

Filtraggio Righe

Usa clausole WHERE per limitare i dati esportati:

-- Esporta solo dati recenti
SELECT * FROM orders
WHERE order_date >= CURRENT_DATE - INTERVAL '30 days';

Dati Aggregati

Esporta risultati riassunti:

-- Esporta totali vendite giornalieri
SELECT
    DATE(order_date) as day,
    COUNT(*) as order_count,
    SUM(total_amount) as daily_revenue
FROM orders
GROUP BY DATE(order_date)
ORDER BY day DESC;

Esportazione in Batch

Per dataset grandi che superano i limiti di memoria:

Esportazioni Suddivise

-- Esporta in lotti di 10.000 righe
SELECT * FROM large_table
ORDER BY id
LIMIT 10000 OFFSET 0;

-- Poi incrementa OFFSET per il lotto successivo
SELECT * FROM large_table
ORDER BY id
LIMIT 10000 OFFSET 10000;

Cursori Lato Server

Abilita cursori lato server in Preferenze → Prestazioni per streaming di grandi set di risultati senza problemi di memoria.

Esportazioni Pianificate (Avanzato)

Mentre HarborDB non ha pianificazione integrata, puoi:

  1. Salvare query di esportazione come file
  2. Usare macOS Automator per eseguire esportazioni
  3. Pianificare con cron o launchd (utenti avanzati)
  4. Esportare in cartelle monitorate per elaborazione automatizzata

Guida Specifica per Formato

Best Practice Esportazione CSV

Preparazione Dati

  1. Pulisci caratteri speciali che potrebbero rompere il parsing CSV:
-- Rimuovi o escapa virgole nei campi testo
SELECT
    id,
    REPLACE(description, ',', ';') as description,
    amount
FROM products;
  1. Gestisci interruzioni di riga nei campi testo:
-- Sostituisci newline con spazi
SELECT
    id,
    REPLACE(REPLACE(notes, CHR(10), ' '), CHR(13), ' ') as notes_clean
FROM customer_notes;

Impostazioni CSV Compatibili per Import

Per massima compatibilità con altre applicazioni:

| Applicazione | Impostazioni Raccomandate | | ------------------- | ------------------------------------------------------- | | Excel | Delimitatore virgola, Qualificatore doppie virgolette, Codifica UTF-8 | | Google Sheets | Delimitatore virgola, Codifica default | | Python/R Pandas | Delimitatore virgola, Nessun qualificatore testo | | PostgreSQL COPY | Delimitatore virgola, Intestazione CSV, Virgolette doppie |

Best Practice Esportazione JSON

Esportazione Dati Strutturati

-- Esporta dati gerarchici
SELECT
    order_id,
    order_date,
    JSON_BUILD_OBJECT(
        'customer_id', c.customer_id,
        'name', c.name,
        'email', c.email
    ) as customer,
    JSON_AGG(
        JSON_BUILD_OBJECT(
            'product_id', p.product_id,
            'name', p.name,
            'quantity', oi.quantity,
            'price', oi.price
        )
    ) as items
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
JOIN order_items oi ON o.order_id = oi.order_id
JOIN products p ON oi.product_id = p.product_id
GROUP BY o.order_id, o.order_date, c.customer_id, c.name, c.email;

Considerazioni Schema JSON

  • Struttura consistente: Assicurati che tutte le righe abbiano le stesse chiavi
  • Tipi di dati: JSON preserva stringhe, numeri, booleani, null
  • Profondità annidamento: Considera appiattimento per alcune applicazioni

Ottimizzazione delle Prestazioni

Esportazione di Grandi Dataset

Gestione Memoria

  1. Abilita modalità streaming in Preferenze → Prestazioni
  2. Aumenta dimensione chunk per esportazioni più veloci (se RAM sufficiente)
  3. Chiudi altre applicazioni per liberare risorse di sistema
  4. Monitora Activity Monitor per uso memoria

Considerazioni di Rete

Per esportazioni da database remoti:

  1. Esporta sul server se possibile (usa SSH o desktop remoto)
  2. Comprimi esportazioni (HarborDB auto-comprime JSON grandi)
  3. Pianifica in ore di minor traffico per database di produzione
  4. Usa clausole WHERE per limitare trasferimento dati

Suggerimenti Velocità Esportazione

  1. Seleziona solo colonne necessarie (non SELECT *)
  2. Evita calcoli costosi nelle query di esportazione
  3. Usa colonne indicizzate nelle clausole WHERE
  4. Esporta su SSD per I/O disco più veloce
  5. Disabilita scansione antivirus in tempo reale sulla cartella di esportazione (temporaneamente)

Sicurezza e Privacy

Gestione Dati Sensibili

Redazione Dati

-- Esporta senza informazioni sensibili
SELECT
    user_id,
    LEFT(email, 3) || '***@***' as email_masked,
    '***' as password_hash,
    created_at
FROM users;

Considerazioni di Conformità

  1. GDPR/CCPA: Rimuovi informazioni personali identificabili (PII)
  2. HIPAA: De-identifica informazioni sanitarie protette (PHI)
  3. PCI DSS: Non esportare mai numeri di carta di credito completi
  4. Politiche interne: Segui le regole di gestione dati della tua organizzazione

Pratiche Sicure di Esportazione

  1. Cripta esportazioni sensibili usando macOS FileVault o strumenti di terze parti
  2. Usa metodi di trasferimento sicuri per file esportati (SFTP, email criptata)
  3. Imposta permessi file appropriati (chmod 600 per file sensibili)
  4. Elimina automaticamente file temporanei di esportazione
  5. Verifica log di esportazione (disponibili in Preferenze → Log)

Risoluzione Problemi Comuni

Problemi CSV

"Colonne disallineate in Excel"

  • Causa: Virgole o interruzioni di riga incorporate nei dati
  • Soluzione: Usa qualificatori di testo o pulisci dati prima dell'esportazione

"Problemi di codifica caratteri"

  • Causa: Caratteri non UTF-8 nei dati
  • Soluzione: Esporta con codifica UTF-8 con BOM per Excel

"Errori di importazione file grandi"

  • Causa: Limiti righe/colonne Excel (1.048.576 righe, 16.384 colonne)
  • Soluzione: Dividi dati o usa strumenti CSV senza limiti

Problemi JSON

"Sintassi JSON non valida"

  • Causa: Caratteri speciali non correttamente escapati
  • Soluzione: Usa funzioni JSON PostgreSQL per sanificare dati

"Errori di memoria su esportazioni grandi"

  • Causa: Tentativo di caricare intero dataset in memoria
  • Soluzione: Abilita esportazione streaming o esporta in chunk

"Dati annidati troppo complessi"

  • Causa: JSON annidato troppo profondamente difficile da parsare
  • Soluzione: Appiattisci struttura o semplifica query

Problemi Generali

"Esportazione troppo lenta"

  • Possibili cause: Latenza di rete, velocità disco, prestazioni query
  • Passi di debug:
    1. Testa prima con dataset piccolo
    2. Controlla connettività di rete
    3. Verifica che il disco abbia spazio libero
    4. Ottimizza query database

"Dati mancanti nell'esportazione"

  • Controlla: Filtri clausola WHERE, selezione colonne, gestione NULL
  • Verifica: Conteggio righe corrisponde alle aspettative, tutte le colonne incluse

"Errori di permesso negato"

  • Soluzione:
    1. Scegli posizione di salvataggio diversa
    2. Controlla permessi cartella
    3. Esegui HarborDB con privilegi appropriati
    4. Disabilita software di sicurezza temporaneamente

Integrazione con Altri Strumenti

Automazione con Script

Esempio Script Shell

#!/bin/bash
# Esporta report giornaliero e invialo via email
EXPORT_FILE="/Users/$(whoami)/Exports/daily_sales_$(date +%Y%m%d).csv"

# Dovresti dover scrivere script per azioni HarborDB qui
# Considera di usare strumenti da riga di comando PostgreSQL per automazione
pg_dump -t sales -c --inserts your_database > "$EXPORT_FILE"

# Comprimi e invia email
gzip "$EXPORT_FILE"
echo "Esportazione vendite giornaliera allegata" | mail -s "Report Vendite Giornaliero" \
  -a "$EXPORT_FILE.gz" team@example.com

Importazione in Altre Applicazioni

Excel/Google Sheets

  1. CSV: Importazione diretta tramite Dati → Da Testo/CSV
  2. JSON: Usa Power Query (Excel) o Apps Script (Sheets)

Sistemi Database

-- Comando PostgreSQL COPY (da CSV esportato)
COPY customers FROM '/path/to/export.csv' DELIMITER ',' CSV HEADER;

-- MySQL LOAD DATA
LOAD DATA LOCAL INFILE '/path/to/export.csv'
INTO TABLE customers
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;

Linguaggi di Programmazione

# Esempio Python pandas
import pandas as pd

# Leggi esportazione CSV HarborDB
df = pd.read_csv('export.csv', encoding='utf-8')
print(f"Importate {len(df)} righe")

# O esportazione JSON
df_json = pd.read_json('export.json', orient='records')

Riepilogo Best Practice

Prima di Esportare

  1. Testa con dataset piccolo prima
  2. Verifica che i risultati della query corrispondano alle aspettative
  3. Controlla spazio disco disponibile
  4. Considera sensibilità dati e requisiti di conformità

Durante l'Esportazione

  1. Scegli formato appropriato per il tuo caso d'uso
  2. Usa nomi file descrittivi con date
  3. Includi intestazioni/metadati per chiarezza
  4. Monitora il progresso per esportazioni grandi

Dopo l'Esportazione

  1. Verifica integrità file (apri e controlla un campione)
  2. Proteggi file sensibili (crittografa se necessario)
  3. Pulisci file temporanei
  4. Documenta l'esportazione per riproducibilità

Prossimi Passi

Ora che puoi esportare dati efficacemente:

  1. Basi delle Query - Padroneggia la scrittura di query SQL
  2. Navigazione Database - Esplora la struttura del database
  3. Ottimizzazione Prestazioni - Ottimizza la velocità di esportazione
  4. Integrazione macOS - Usa le funzionalità native macOS

Ottenere Aiuto

Se incontri problemi di esportazione:

  1. Controlla la nostra Guida al Supporto per risoluzione problemi
  2. Visita le FAQ per domande comuni
  3. Contatta il Supporto per assistenza personalizzata

È stato utile?

Aiutaci a migliorare questa documentazione fornendo feedback.