2010-08-10 12 views
10

Je génère des fichiers, appelons-les fichiers .dwrf, qui contiennent une quantité importante de données. Actuellement, nous exportons ceux-ci en .CSV et les fichiers résultants sont volumineux (2GB +). Je voudrais couper le processus d'exportation et rendre le contenu d'un fichier .dwrf interrogeable directement à partir d'Excel ou d'autres applications. Ce que je voudrais faire est d'écrire un utilitaire/service - appelons-le dwrfMiner - pour extraire les données du fichier et les transmettre en tant que source de données et lier dwrfMiner aux fichiers .dwrf d'une manière que Excel reconnaisse en tant que source de données externe.Comment transformer un fichier plat de données en une source de données interrogeable

Des idées?

+0

Souhaitez-vous interroger manuellement, par programme ou les deux? – mcandre

+0

Les deux. Je voudrais une interface utilisable par les utilisateurs d'Excel (d'abord) et par d'autres processus plus tard. – dwarFish

+0

Quel est le format d'un fichier DWRF? Comment les données sont-elles structurées dans le fichier? – Lazarus

Répondre

3

Lors de l'écriture d'un pilote ODBC pour ce qui est probablement exagéré, si le format des fichiers que vous travaillez est connu à l'avance et n'est pas trop difficile à traduire (il semble ne pas considérer que vous êtes déjà en train de créer des CSV), puis l'utilisation d'un DSN ODBC sonne comme votre meilleur pari.

Il existe une bonne sélection de pilotes ODBC déjà intégrés à Windows (.txt, .csv, .mdb, .xl *, .dbf, Paradox .db, etc etc) et vous pouvez obtenir d'autres pilotes sur le web pour beaucoup de formats communs. Si la taille du format existant vers lequel vous exportez est trop onéreuse (CSV), le point de départ logique est une transformation de vos données en quelque chose de plus sensible à l'espace, supporté par ODBC. A défaut, votre dernière option est l'option Overkill (Ecriture d'un pilote ODBC).

+1

(+1); Pour aller encore plus loin, pour une future conception de logiciel, vous (dwarfish) pourriez vouloir prendre en compte de telles considérations avant de définir un format de sortie. – chiccodoro

1

Excel peut interroger des sources de données externes, mais sachez qu'Excel (toutes les versions) a des limites strictes sur le nombre de lignes pouvant être affichées, par classeur. Je pense que dans Excel 2003, la limite est ~ 65k. C'est plus élevé dans les autres versions. Voir ma question: reporting tool/viewer for large datasets (et j'avais beaucoup moins de > 2GB).

+0

La limite de lignes Excel 2007 est de 1 048 576 lignes: dans les versions antérieures, la limite était de 65 536 lignes ... par feuille de calcul –

0

Je sortirai gcc et écrire vous-même un pilote ODBC complet pour elle. Ensuite, vous pouvez vous asseoir et utiliser SQL.

Vous savez, si vous vous ennuyez. ;)

0

utilisation pilote odbc avec multithreading

Questions connexes