
{"id":1674,"date":"2015-07-19T22:51:21","date_gmt":"2015-07-20T02:51:21","guid":{"rendered":"http:\/\/www.ikriv.com\/blog\/?p=1674"},"modified":"2015-07-19T22:51:21","modified_gmt":"2015-07-20T02:51:21","slug":"azure-table-storage-is-slow","status":"publish","type":"post","link":"https:\/\/ikriv.com\/blog\/?p=1674","title":{"rendered":"Azure table storage is slow"},"content":{"rendered":"<p>Simply put, Azure table storage is too slow. The best I could get out of it was about 700 records\/second for INSERT and 4600 records second for READ, which was unacceptable for the data sizes I had to deal with &#8211; several tables of around 100,000 records each.<\/p>\n<p>Admittedly, I did not use batch operations, but it does not seem to matter: 700 records\/second appears to be the true speed of the storage and it can&#8217;t be improved: see <a href=\"http:\/\/stackoverflow.com\/questions\/17955557\/painfully-slow-azure-table-insert-and-delete-batch-operations\">this StackOverflow article<\/a>.<\/p>\n<p>SQL Server, on the other hand, gave me and 1800-5000 records\/second on INSERT (depending on the record size), and 30,000 records on READ, so I ditched the Table storage and went with the SQL server instead.<\/p>\n<p>The data is summarized in the table below. Each value is records per second, higher values are better.<\/p>\n<table border=\"1\" cellpadding=\"5\">\n<tr>\n<th>&nbsp;<\/th>\n<th>Table Storage<\/th>\n<th>SQL Server<\/th>\n<\/tr>\n<tr>\n<td>Read from Azure VM<\/td>\n<td>4601<\/td>\n<td>30332<\/td>\n<\/tr>\n<tr>\n<td>Write from Azure VM<\/td>\n<td>690<\/td>\n<td>1867<\/td>\n<\/tr>\n<tr>\n<td>Read from outside Azure<\/td>\n<td>3858<\/td>\n<td>34456<\/td>\n<\/tr>\n<tr>\n<td>Write from Azure VM<\/td>\n<td>213<\/td>\n<td>1020<\/td>\n<\/tr>\n<\/table>\n<p>Of course, the speed is highly variable depending on server load, network conditions and the like, but the upper limit of 700 records\/second for table storage INSERT appears to be quite stable.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Simply put, Azure table storage is too slow. The best I could get out of it was about 700 records\/second for INSERT and 4600 records second for READ, which was <a href=\"https:\/\/ikriv.com\/blog\/?p=1674\" class=\"more-link\">[&hellip;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"Layout":"","footnotes":""},"categories":[23],"tags":[],"class_list":["entry","author-ikriv","post-1674","post","type-post","status-publish","format-standard","category-azure"],"_links":{"self":[{"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1674","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1674"}],"version-history":[{"count":0,"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1674\/revisions"}],"wp:attachment":[{"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1674"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1674"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ikriv.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1674"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}