2011-06-15 1 views
14

J'ai une application ASP.NET qui prend des téléchargements de fichiers de plusieurs méga-octets, les écrit sur le disque, et plus tard MSSQL 2008 les charge avec BCP. Je souhaite déplacer le tout vers Azure, mais comme il n'y a pas de "fichiers" pour BCP, quelqu'un peut-il commenter comment obtenir des données en masse à partir d'une application Azure dans SQL Azure? J'ai vu http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy.aspx mais je ne suis pas sûr que cela s'applique.Chargement en bloc de fichiers dans SQL Azure?

Merci.

+1

Si les téléchargements proviennent d'une page Web ASP.NET, vous rencontrerez les mêmes problèmes que ceux que j'ai si les données sont plus grandes que 30 Mo, voir ma question http://stackoverflow.com/questions/6402253/how-to- upload-huge-files-to-the-azure-blog-from-a-web-page pour plus d'informations. –

Répondre

7

BCP est un moyen de le faire.

Ce message explique en trois étapes faciles: Bulk insert with Azure SQL

+0

BCP un fichier 80gb à azur prend 12 heures. Si je l'insère en vrac localement, cela prend 2 heures. Existe-t-il des astuces comme bcping à partir d'un fichier local dans azure? – MIKE

+1

@MIKE avez-vous essayé d'exécuter le formulaire de commande et Azure VM dans le même centre de données? Vous pouvez placer le fichier 80gig dans un dossier de stockage de fichiers Azure, ce qui le rendrait disponible pour la machine virtuelle. –

+0

Semble comme une idée intelligente. Je vais essayer ça. Savez-vous si azur étrangle le bcp (ralentit les insertions) sur le niveau standard par rapport au niveau premium? Lors de l'insertion j'ai remarqué qu'il fait environ dix 1000 insertions puis un délai de 30 secondes, je ne suis pas sûr si elle est étranglée par ma machine locale ou d'azur. (pas mon ordinateur local, c'est un serveur) – MIKE

3

Vous êtes sur la bonne voie. L'API de copie en bloc fonctionnera. Je l'utilise. Et c'est le moyen le plus rapide d'importer des données car il utilise les instructions INSERT BULK. Ne pas se confondre avec l'instruction BULK INSERT qui n'est pas prise en charge dans SQL Azure. En substance, BCP et l'API SqlBulkCopy utilisent la même méthode.

1

Je pense qu'il est important de noter que BCP ne peut pas gérer les fichiers sources qui sont Unicode en utilisant un fichier de format pour faire votre importation.

Questions connexes