Recommended reading: ESYON migrates all customers to Azure Kubernetes. We explain the benefits derived from this move in this article.
array:83 [ "id" => 142 "featured" => false "addImage" => true "overwriteMeta" => false "fullsize" => false "addEnclosure" => false "target" => false "noComments" => false "published" => true "pid" => 9 "tstamp" => 1720069054 "headline" => "Blob Storage: Storing Your Data in the Azure Cloud" "alias" => "blob-storage-storing-your-data-in-the-azure-cloud" "author" => "by Steffi Greuel" "date" => "2023 Jul 18 12:08" "time" => 1689674880 "pageTitle" => "Blob Storage: Storing Your Data in the Azure Cloud" "robots" => "index,follow" "description" => "In the following, we explain how Blob Storage works and how you can leverage the benefits of the service for your online business." "subheadline" => "" "teaser" => "<p>Cloud computing is increasingly shaping the landscape of e-commerce. The number of providers and services is growing steadily, along with the advantages of a cloud solution. With Azure, Microsoft operates one of the largest server networks worldwide. Storage in the Azure Cloud is primarily done through what is known as Blob Storage. In the following, we explain how the service works and how you can leverage the benefits of Blob Storage for your online business.</p>" "singleSRC" => "files/content/blog/content/blob-storage-670x415.jpg" "alt" => "Dense dark blue clouds" "imageTitle" => "" "size" => "a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:1:"2";}" "imageUrl" => "" "caption" => "" "floating" => "above" "enclosure" => [] "source" => "default" "linkText" => "" "jumpTo" => 0 "articleId" => 0 "url" => "" "cssClass" => "" "start" => "" "stop" => "" "languageMain" => 0 "tags" => array:1 [ 0 => "Cloud-Hosting" ] "canonicalLink" => "" "lesedauer" => "" "searchIndexer" => "" "og_title" => "" "og_type" => "" "og_image" => null "og_properties" => null "twitter_site" => "" "twitter_creator" => "" "twitter_card" => "" "twitter_title" => "" "twitter_description" => null "twitter_image" => null "class" => "" "newsHeadline" => "Blob Storage: Storing Your Data in the Azure Cloud" "subHeadline" => "" "hasSubHeadline" => false "linkHeadline" => "<a href="/news/blob-storage-storing-your-data-in-the-azure-cloud" title="Read the article: Blob Storage: Storing Your Data in the Azure Cloud">Blob Storage: Storing Your Data in the Azure Cloud</a>" "archive" => Contao\NewsArchiveModel {#1845 #arrData: array:15 [ "id" => 9 "protected" => false "allowComments" => false "moderate" => false "bbcode" => false "requireLogin" => false "disableCaptcha" => false "tstamp" => 1701087847 "title" => "Aktuelles (EN)" "jumpTo" => 98 "groups" => null "notify" => "notify_admin" "sortOrder" => "ascending" "perPage" => 0 "master" => 0 ] #arrModified: [] #arrRelations: array:3 [ "jumpTo" => array:4 [ "table" => "tl_page" "field" => "id" "type" => "hasOne" "load" => "lazy" ] "groups" => array:4 [ "table" => "tl_member_group" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "master" => array:3 [ "table" => "tl_news_archive" "field" => "id" "type" => "hasOne" ] ] #arrRelated: [] #arrEnums: [] #blnPreventSaving: false } "count" => 0 "text" => Closure() {#1868 : "Contao\Template" : { : null : """ <div class="custom-text pxy-none bg-white ce_rsce_text block">\r\n <div class="text-wrapper" data-widget="rsce_text_config">\r\n <div class="container-xxl text-left">\r\n <div class="row">\r\n <div class="col-12">\r\n <h2 class="headline">What is Blob Storage?</h2>\r\n <div class="content text-left column-1">\r\n <p>Blob Storage is one of four Azure Storage services, alongside Azure Files, Disks, and Tables. It is used for storing unstructured data that does not adhere to a fixed data model. This mainly involves texts and so-called binary data. Hence, the somewhat peculiar name: Blob stands for Binary Large Objects. This encompasses image files, video files, or other media data. Besides pure storage, the service also facilitates the development of container-based applications in a cloud environment.</p> </div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n <div class="bg-light ce_rsce_stoerer block teaser-inline">\r\n \r\n <div class="container-xxl">\r\n \r\n \r\n <div class="content"><p><strong>Recommended reading: </strong>ESYON migrates all customers to <a href="/loesungen/azure-kubernetes"> Azure Kubernetes</a>. We explain the benefits derived from this move in this article.</p></div>\r\n \r\n \r\n </div>\r\n </div>\r\n <div class="custom-text pxy-none bg-white ce_rsce_text block">\r\n <div class="text-wrapper" data-widget="rsce_text_config">\r\n <div class="container-xxl text-left">\r\n <div class="row">\r\n <div class="col-12">\r\n <h2 class="headline">What are the usage prerequisites?</h2>\r\n <div class="content text-left column-1">\r\n <p>To use Blob Storage, you need an Azure Storage Account, which can be added to an existing Azure Subscription at any time. A Storage Account offers approximately 5500 terabytes of storage space. However, multiple Storage Accounts can be created within a subscription if a larger storage capacity is needed.</p>\n <p>How is Blob Storage structured?</p>\n <p>The Azure storage service is structured into three levels: the account, containers, and blobs.</p> </div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n \r\n \r\n <div class="image ce_rsce_image block">\r\n <div class="container-xxl">\r\n <div class="row">\r\n <div class="">\r\n <div class="image-wrapper ">\r\n <div class="image-img">\r\n \r\n <picture>\r\n <source srcset="/assets/images/7/blob-storage-aufbau-krfzwnsn3p0zah4.webp 1x, /assets/images/c/blob-storage-aufbau-7vqxrecxe9yfbwd.webp 2x" media="(max-width: 321px)" type="image/webp" width="280" height="152">\r\n <source srcset="/assets/images/v/blob-storage-aufbau-63ff376kma0830h.jpg 1x, /assets/images/r/blob-storage-aufbau-7ag5bth63bytdnr.jpg 2x" media="(max-width: 321px)" width="280" height="152">\r\n <source srcset="/assets/images/q/blob-storage-aufbau-c001m1xfbr6kbwf.webp 1x, /assets/images/q/blob-storage-aufbau-er617ps752se2gy.webp 1.453x" media="(min-width:322px) and (max-width:768px)" type="image/webp" width="688" height="373">\r\n <source srcset="/assets/images/c/blob-storage-aufbau-03cc7z2wwcm4atc.jpg 1x, /assets/images/m/blob-storage-aufbau-shsae1pb859achg.jpg 1.453x" media="(min-width:322px) and (max-width:768px)" width="688" height="373">\r\n <source srcset="/assets/images/p/blob-storage-aufbau-g2cxfxs48qdh17g.webp 1x, /assets/images/q/blob-storage-aufbau-er617ps752se2gy.webp 1.543x" media="(min-width:769px) and (max-width:991px)" type="image/webp" width="648" height="351">\r\n <source srcset="/assets/images/4/blob-storage-aufbau-15ffg8kvxh7exx5.jpg 1x, /assets/images/m/blob-storage-aufbau-shsae1pb859achg.jpg 1.543x" media="(min-width:769px) and (max-width:991px)" width="648" height="351">\r\n <source srcset="/assets/images/w/blob-storage-aufbau-f4ya1n7amjncg9j.webp 1x, /assets/images/q/blob-storage-aufbau-er617ps752se2gy.webp 1.302x" type="image/webp" width="768" height="416">\r\n \r\n <img fetchpriority="low" src="/assets/images/q/blob-storage-aufbau-hg9r30qa4de25zp.jpg" srcset="/assets/images/q/blob-storage-aufbau-hg9r30qa4de25zp.jpg 1x, /assets/images/m/blob-storage-aufbau-shsae1pb859achg.jpg 1.302x" width="768" height="416" alt="Diagram for the structure of the Blob Storage">\r\n \r\n </picture>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="custom-text pxy-none bg-white ce_rsce_text block">\r\n <div class="text-wrapper" data-widget="rsce_text_config">\r\n <div class="container-xxl text-left">\r\n <div class="row">\r\n <div class="col-12">\r\n <h3 class="headline">Account</h3>\r\n <div class="content text-left column-1">\r\n <p>At the account level, you can create and remove new containers. Each account must have a globally unique account name, which is included in the address of each uploaded object.</p>\n <p>Example: For the account name "youraccount," the base address would look like this: "https://youraccount.blob.core.windows.net"</p>\n <p>Containers</p>\n <p>Containers are used to organize blobs and can be easily compared to folder directories in local storage, even though these do not exist in Blob Storage. The storage service follows a flat hierarchy without a folder structure, but file paths can be assigned during upload to simulate this structure. Example: "https://youraccount.blob.core.windows.net/images/folder1/image001.png" In our example, the image file image001.png located in the "images" container was uploaded under the file path "folder1." When accessing the container, a corresponding folder structure is simulated. However, deleting the file also automatically removes the folder, indicating that it never truly existed. Within an account, any number of containers can be created, with the only limitation being the storage capacity of the Storage Account.</p>\n <p>Blobs</p>\n <p>The actual data uploaded through Blob Storage is referred to as blobs. In practice, three types of blobs are distinguished.</p>\n <p>Blob Types<br>Block Blobs</p>\n <p>Block blobs are the most common form of blobs. As the name suggests, they consist of blocks that can be managed independently. Storing multiple files in a block is possible, with an individual block being able to be up to 190.7 TiB in size (TiB = Tebibyte, approximately 1.099 terabytes). Once uploaded, block blobs can be deleted or overwritten, but existing blocks remain immutable.</p>\n <p>Append Blobs</p>\n <p>For certain file types, it can be useful for them to be appendable, such as for log files that need to be automatically updated without being completely recreated with every log entry. This purpose is served by append blobs, which also consist of blocks but allow for the addition of new information compared to block blobs.</p>\n <p>Page Blobs</p>\n <p>Page blobs can store blocks up to a maximum size of 8 TiB, allowing read and write access at any position (referred to as Random Access). Page blobs are used to store virtual hard drive (VHD) files and are utilized when hosting a virtual machine in a cloud environment.</p> </div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n <div class="p-0 addSpacer teaser-inline ce_rsce_quote block"\r\n data-test-id="quote"\r\n >\r\n \r\n <div class="container-xxl">\r\n <div class="row">\r\n <div class=" ">\r\n <div class="row">\r\n <div class="col-12">\r\n \r\n \r\n <div class="content">\r\n <p><strong>Recommended reading</strong>: Quick Start in B2C & B2B E-Commerce with OXID eShop from the <a href="https://www.esyon.net/hostinh-on-azure-kubernetes">Azure Cloud</a>.</p> </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="custom-text pxy-none bg-white ce_rsce_text block">\r\n <div class="text-wrapper" data-widget="rsce_text_config">\r\n <div class="container-xxl text-left">\r\n <div class="row">\r\n <div class="col-12">\r\n <div class="subheadline">Blob Storage Benefits</div>\r\n <h2 class="headline">Why Cloud Storage Makes Sense</h2>\r\n <div class="content text-left column-1">\r\n <p>Now that the technical foundations of Blob Storage are clarified, the question naturally arises for online retailers: What benefits does cloud storage actually bring? Simplified, it could be said that Blob Storage offers the same advantages as cloud hosting in general.</p>\n <p>Redundancy</p>\n <p>When creating your Azure Storage Account, you can choose from four models that determine how your data is stored in Azure Storage.</p>\n <p><strong>Locally Redundant Storage (LRS):</strong> Data is replicated three times within a single data center.</p>\n <p><img src="/files/content/blog/content/LRS.jpg" alt="Locally Redundant Storage" width="512" height="512"></p>\n <p> </p>\n <p><strong>Zone-Redundant Storage (ZRS):</strong> Data is replicated to three different data centers within a geographic region.</p>\n <p><br><img src="/files/content/blog/content/blob-storage-zrs-1.jpg" alt="Zone-redundant Storage" width="512" height="512"></p>\n <p> </p>\n <p><strong>Geo-Redundant Storage (GRS): </strong>Data is replicated to three data centers in two different geographic regions.</p>\n <p><br><img src="/files/content/blog/content/blob-storage-grs.jpg" alt="Geo-redundant Storage" width="512" height="204"></p>\n <p> </p>\n <p><strong>Read-Access Geo-Redundant Storage (RA-GRS): </strong>Similar to GRS, but you can choose the zone to access.</p>\n <p>By default, the first option, Locally Redundant Storage (LRS), is selected, which doesn't provide spatial separation but is more cost-effective. Redundant storage ensures that your data remains accessible even after the failure of a hard drive, an entire data center, or even an entire region.</p>\n <h3><strong>Speed</strong></h3>\n <p>Blob Storage allows you to store and process data in a scalable environment, ensuring reliable and prompt access even during peak loads. This can be easily demonstrated in the demo of our product configurator. The necessary image files are stored in Blob Storage, so the Apache Server doesn't need to request them from the server. Instead, a fixed, public URL for the respective image is directly accessed, resulting in almost no loading time.</p>\n <h3>Accessibility</h3>\n <p>The migration of your data to the cloud can be done location-independent and through various solutions. For data import and export, various REST APIs are available for the most common programming languages, including Python, C#, Java, and PHP, in addition to free tools like the Cloud Explorer for Microsoft Visual Studio.</p>\n <h3>Data Security</h3>\n <p>Blob Storage utilizes role-based access control (RBAC) and encrypts all data to protect against unauthorized access.</p>\n <h3>Cost-Efficiency</h3>\n <p>The automatic scaling of the cloud ensures that your system is always appropriately sized according to your needs. You only pay for what you actually consume.</p> </div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n <div class="custom-text pxy-none bg-white ce_rsce_text block">\r\n <div class="text-wrapper" data-widget="rsce_text_config">\r\n <div class="container-xxl text-left">\r\n <div class="row">\r\n <div class="col-12">\r\n <h2 class="headline">ESYON and Blob Storage</h2>\r\n <div class="content text-left column-1">\r\n <p>As a certified Cloud Solution Provider (CSP), ESYON hosts the projects of your customers in the Azure Cloud, leveraging services like Blob Storage. Cloud computing allows us to achieve rapid development cycles, enabling us to meet individual customer requirements with a short time-to-market.</p> </div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n <div class="bg-light ce_rsce_stoerer block teaser-inline">\r\n \r\n <div class="container-xxl">\r\n <div class="subheadline">Sounds interesting?</div>\r\n \r\n <h3 class="headline">Get in touch with us!</h3>\r\n \r\n <div class="content"><p>Are you interested in hosting your online business in Microsoft Azure and want to discuss the possibilities for such a project? Feel free to contact us! In a non-binding consultation, we'll address all your questions.</p></div>\r\n \r\n <a href="/en/about-us/contact" class="btn btn-primary">Contact us now</a>\r\n \r\n </div>\r\n </div>\r\n """ } } "hasTeaser" => true "hasReader" => true "more" => "<a href="/news/blob-storage-storing-your-data-in-the-azure-cloud" title="Read the article: Blob Storage: Storing Your Data in the Azure Cloud">Read more …<span class="invisible"> Blob Storage: Storing Your Data in the Azure Cloud</span></a>" "link" => "/news/blob-storage-storing-your-data-in-the-azure-cloud" "hasText" => Closure() {#1850 : "Contao\Template" : { : Closure(): bool {#1865 …} : null } } "authorModel" => Contao\UserModel {#1881 #arrData: array:55 [ "id" => 2 "showHelp" => true "thumbnails" => true "useRTE" => true "useCE" => true "pwChange" => false "admin" => true "disable" => false "useTwoFactor" => false "tstamp" => 1704443590 "username" => "Steffi" "name" => "Steffi Greuel" "email" => "steffi@con-creat.de" "language" => "de" "backendTheme" => "flexible" "uploader" => "DropZone" "password" => "$2y$13$EybE.B9ZNwurDoRi4/ddwOu2CHtbR8/ru6pz6/2FkMuehXyJuuEwG" "groups" => null "inherit" => "group" "modules" => "a:0:{}" "themes" => "a:0:{}" "elements" => "a:0:{}" "fields" => "a:0:{}" "pagemounts" => "a:0:{}" "alpty" => "a:0:{}" "filemounts" => "a:0:{}" "fop" => "a:0:{}" "imageSizes" => "a:0:{}" "forms" => "a:0:{}" "amg" => "a:0:{}" "start" => "" "stop" => "" "session" => "a:13:{s:23:"tl_article_tl_page_tree";a:6:{i:1;i:1;i:332;i:0;i:333;i:0;i:71;i:0;i:371;i:0;i:375;i:0;}s:12:"tl_page_tree";a:264:{i:1;i:1;i:2;i:0;i:3;i:0;i:7;i:0;i:8;i:1;i:9;i:0;i:14;i:0;i:16;i:0;i:5;i:0;i:20;i:1;i:21;i:0;i:27;i:0;i:28;i:1;i:30;i:1;i:31;i:0;i:22;i:0;i:23;i:0;i:24;i:0;i:25;i:0;i:26;i:0;i:10;i:0;i:32;i:0;i:67;i:0;i:35;i:0;i:36;i:0;i:37;i:0;i:38;i:1;i:53;i:0;i:54;i:0;i:60;i:0;i:63;i:0;i:64;i:0;i:65;i:0;i:39;i:1;i:46;i:0;i:49;i:0;i:40;i:0;i:41;i:0;i:42;i:0;i:43;i:0;i:44;i:0;i:45;i:0;i:4;i:0;i:6;i:0;i:34;i:0;i:18;i:0;i:19;i:0;i:68;i:0;i:71;i:0;i:72;i:0;i:73;i:0;i:74;i:0;i:89;i:0;i:90;i:1;i:96;i:0;i:99;i:0;i:100;i:0;i:101;i:0;i:102;i:1;i:104;i:0;i:75;i:0;i:82;i:0;i:85;i:0;i:86;i:0;i:87;i:0;i:88;i:0;i:83;i:0;i:84;i:0;i:76;i:0;i:77;i:0;i:78;i:0;i:79;i:0;i:80;i:0;i:81;i:0;i:91;i:0;i:92;i:1;i:93;i:0;i:94;i:0;i:95;i:0;i:97;i:0;i:98;i:0;i:66;i:0;i:13;i:0;i:12;i:1;i:11;i:0;i:103;i:0;i:69;i:0;i:105;i:0;i:106;i:0;i:107;i:0;i:109;i:0;i:110;i:0;i:115;i:1;i:116;i:0;i:127;i:0;i:117;i:0;i:118;i:0;i:119;i:0;i:120;i:0;i:121;i:0;i:122;i:0;i:123;i:0;i:124;i:0;i:125;i:0;i:139;i:0;i:142;i:0;i:143;i:0;i:128;i:1;i:138;i:0;i:137;i:0;i:136;i:0;i:135;i:0;i:134;i:0;i:133;i:0;i:132;i:0;i:130;i:0;i:131;i:0;i:129;i:0;i:17;i:0;i:126;i:0;i:157;i:0;i:248;i:0;i:299;i:0;i:303;i:0;i:301;i:1;i:307;i:0;i:308;i:0;i:309;i:0;i:317;i:0;i:312;i:1;i:326;i:0;i:325;i:0;i:324;i:0;i:323;i:0;i:322;i:0;i:311;i:1;i:321;i:0;i:320;i:0;i:319;i:0;i:318;i:0;i:310;i:0;i:327;i:0;i:328;i:0;i:140;i:0;i:332;i:0;i:333;i:0;i:314;i:0;i:313;i:0;i:334;i:0;i:338;i:1;i:339;i:0;i:340;i:0;i:341;i:0;i:342;i:0;i:343;i:0;i:344;i:0;i:345;i:0;i:346;i:0;i:347;i:0;i:348;i:0;i:349;i:0;i:350;i:0;i:351;i:0;i:352;i:0;i:353;i:0;i:354;i:0;i:33;i:0;i:336;i:1;i:355;i:0;i:356;i:0;i:357;i:0;i:358;i:0;i:359;i:0;i:335;i:0;i:114;i:0;i:360;i:0;i:361;i:0;i:362;i:1;i:363;i:0;i:364;i:0;i:337;i:1;i:365;i:0;i:366;i:0;i:367;i:0;i:368;i:0;i:369;i:0;i:112;i:0;i:370;i:0;i:300;i:0;i:302;i:0;i:371;i:1;i:372;i:0;i:375;i:0;i:374;i:0;i:377;i:0;i:373;i:0;i:381;i:1;i:380;i:0;i:379;i:0;i:411;i:0;i:412;i:0;i:413;i:0;i:414;i:0;i:415;i:0;i:416;i:0;i:417;i:0;i:418;i:0;i:419;i:0;i:420;i:0;i:421;i:0;i:422;i:0;i:423;i:0;i:424;i:0;i:425;i:0;i:426;i:0;i:427;i:0;i:428;i:0;i:429;i:0;i:430;i:0;i:431;i:0;i:432;i:0;i:433;i:0;i:434;i:0;i:435;i:0;i:436;i:0;i:437;i:0;i:438;i:0;i:439;i:0;i:382;i:0;i:383;i:0;i:384;i:0;i:385;i:0;i:386;i:0;i:387;i:0;i:388;i:0;i:389;i:0;i:390;i:0;i:391;i:0;i:392;i:0;i:393;i:0;i:394;i:0;i:395;i:0;i:396;i:0;i:397;i:0;i:398;i:0;i:399;i:0;i:400;i:0;i:401;i:0;i:402;i:0;i:403;i:0;i:404;i:0;i:405;i:0;i:406;i:0;i:407;i:0;i:408;i:0;i:409;i:0;i:447;i:0;i:441;i:0;i:444;i:0;i:448;i:0;i:453;i:0;i:454;i:0;i:456;i:0;i:455;i:0;}s:11:"new_records";a:0:{}s:12:"tl_page_node";s:1:"0";s:15:"fieldset_states";a:16:{s:15:"tl_news_archive";a:2:{s:16:"protected_legend";i:1;s:15:"comments_legend";i:1;}s:10:"tl_content";a:8:{s:16:"invisible_legend";i:1;s:13:"expert_legend";i:1;s:15:"template_legend";i:1;s:16:"protected_legend";i:0;s:11:"rsce_legend";i:1;s:35:"pal_rsce_field_tags_rsce_list_start";i:0;s:36:"pal_rsce_field_items_rsce_list_start";i:1;s:13:"poster_legend";i:1;}s:10:"tl_article";a:4:{s:13:"expert_legend";i:1;s:15:"template_legend";i:1;s:16:"protected_legend";i:1;s:13:"teaser_legend";i:1;}s:7:"tl_page";a:17:{s:12:"chmod_legend";i:1;s:12:"cache_legend";i:1;s:13:"layout_legend";i:1;s:16:"protected_legend";i:1;s:16:"canonical_legend";i:1;s:13:"tabnav_legend";i:0;s:13:"expert_legend";i:1;s:15:"language_legend";i:1;s:11:"meta_legend";i:1;s:16:"twoFactor_legend";i:1;s:14:"website_legend";i:1;s:13:"global_legend";i:1;s:12:"image_legend";i:0;s:16:"opengraph_legend";i:1;s:12:"title_legend";i:1;s:14:"routing_legend";i:1;s:17:"contao_seo_legend";i:0;}s:9:"tl_module";a:4:{s:15:"template_legend";i:1;s:16:"protected_legend";i:1;s:13:"expert_legend";i:1;s:12:"image_legend";i:1;}s:7:"tl_user";a:3:{s:14:"backend_legend";i:0;s:15:"password_legend";i:1;s:12:"theme_legend";i:0;}s:13:"tl_form_field";a:5:{s:13:"expert_legend";i:1;s:15:"template_legend";i:1;s:16:"invisible_legend";i:1;s:14:"fconfig_legend";i:1;s:11:"rgxp_legend";i:1;}s:11:"tl_settings";a:4:{s:14:"uploads_legend";i:1;s:12:"files_legend";i:1;s:15:"security_legend";i:1;s:14:"backend_legend";i:1;}s:7:"tl_news";a:4:{s:13:"expert_legend";i:1;s:16:"enclosure_legend";i:1;s:11:"tags_legend";i:1;s:13:"source_legend";i:1;}s:15:"tl_faq_category";a:1:{s:15:"comments_legend";i:1;}s:6:"tl_faq";a:2:{s:13:"expert_legend";i:1;s:16:"enclosure_legend";i:1;}s:13:"tl_image_size";a:2:{s:13:"expert_legend";i:1;s:15:"metadata_legend";i:0;}s:15:"tl_member_group";a:1:{s:15:"redirect_legend";i:1;}s:7:"tl_form";a:3:{s:12:"store_legend";i:1;s:15:"template_legend";i:1;s:13:"expert_legend";i:1;}s:18:"tl_image_size_item";a:1:{s:17:"visibility_legend";i:1;}s:12:"tl_cookiebar";a:1:{s:13:"expert_legend";i:1;}}s:8:"filetree";a:69:{s:8:"976bf09e";i:1;s:8:"28ce87ed";i:0;s:8:"87b6bb18";i:1;i:65613443;i:0;s:8:"abd28c11";i:0;s:8:"3a03408a";i:0;s:8:"0664460a";i:1;s:8:"de1dddc1";i:0;s:8:"6d376608";i:0;s:8:"e0afc680";i:1;s:8:"c6349057";i:0;s:8:"34a3d469";i:0;s:8:"c5989b1e";i:0;s:8:"1b20f57a";i:1;s:8:"fd52a518";i:0;s:8:"71c85865";i:0;s:8:"337dedf0";i:0;s:8:"496f30f5";i:1;s:8:"936b0edd";i:0;s:8:"2c469a15";i:0;s:8:"f14afdf3";i:0;s:8:"6005df7b";i:0;s:8:"180add45";i:0;s:8:"b582bb69";i:0;s:8:"c54a1897";i:0;s:8:"d06bcb2b";i:0;s:8:"d73e0625";i:0;s:8:"0d33e3ed";i:0;s:8:"cd1a05e0";i:0;s:8:"de745548";i:1;s:8:"e81bcde6";i:0;s:8:"b8f166ac";i:0;s:8:"ec65a4b1";i:0;s:8:"ca1e3332";i:0;s:8:"3d42888b";i:0;s:8:"39549bf8";i:0;s:8:"5e67538f";i:1;s:8:"e96e490f";i:0;s:8:"b0a5fecd";i:1;s:8:"eb081ed5";i:0;s:8:"20e69e59";i:0;s:8:"3bb56b08";i:0;s:8:"c2f05151";i:0;s:8:"2c252862";i:0;s:8:"c16a7fd7";i:0;s:8:"9eb5c47e";i:0;s:8:"34a4549b";i:0;s:8:"4970fa81";i:0;s:8:"c9b0e9cc";i:0;s:8:"a634aea2";i:0;s:8:"e2cac7d4";i:0;s:8:"0838c97d";i:0;s:8:"ba1b4d4c";i:0;s:8:"9780eedc";i:0;s:8:"f64bff50";i:0;s:8:"8f250a59";i:1;s:8:"579a95f0";i:0;s:8:"3054a4b2";i:0;s:8:"a069e128";i:0;s:8:"f8fdb260";i:1;s:8:"9371fc93";i:0;i:77837580;i:0;s:8:"64b99183";i:0;s:8:"203bb855";i:0;s:8:"b6f129e5";i:0;s:8:"2392d0d6";i:0;s:8:"da8e6c6b";i:1;s:8:"9184f674";i:1;s:8:"46e56e49";i:1;}s:13:"tl_files_node";s:0:"";s:6:"search";a:6:{s:14:"tl_url_rewrite";a:2:{s:5:"field";s:4:"name";s:5:"value";s:10:"referenzen";}s:15:"tl_news_archive";a:2:{s:5:"field";s:5:"title";s:5:"value";s:0:"";}s:9:"tl_module";a:2:{s:5:"field";s:4:"name";s:5:"value";s:0:"";}s:7:"tl_news";a:2:{s:5:"field";s:8:"headline";s:5:"value";s:0:"";}s:7:"tl_page";a:2:{s:5:"field";s:5:"title";s:5:"value";s:0:"";}s:8:"tl_files";a:2:{s:5:"value";s:0:"";s:5:"field";s:4:"name";}}s:6:"filter";a:10:{s:10:"tl_news_12";a:1:{s:5:"limit";s:4:"0,30";}s:9:"tl_news_1";a:1:{s:5:"limit";s:4:"0,30";}s:9:"tl_news_2";a:1:{s:5:"limit";s:4:"0,30";}s:6:"tl_log";a:1:{s:5:"limit";s:4:"0,30";}s:11:"tl_module_1";a:1:{s:5:"limit";s:3:"all";}s:14:"tl_url_rewrite";a:1:{s:5:"limit";s:4:"0,30";}s:15:"tl_news_archive";a:0:{}s:9:"tl_news_9";a:1:{s:5:"limit";s:4:"0,30";}s:10:"tl_news_14";a:1:{s:5:"limit";s:4:"0,30";}s:7:"tl_page";a:0:{}}s:7:"sorting";a:3:{s:14:"tl_url_rewrite";s:4:"name";s:9:"tl_module";s:4:"name";s:7:"tl_news";s:9:"date DESC";}s:15:"checkbox_groups";a:3:{s:20:"cbc_modules_benutzer";i:1;s:18:"cbc_modules_layout";i:1;s:30:"cbc_imageSizes_eigene-größen";i:1;}s:15:"backend_modules";a:3:{s:8:"accounts";i:1;s:7:"content";i:1;s:6:"design";i:1;}s:26:"template_studio_theme_slug";N;}" "dateAdded" => 1683037237 "secret" => null "lastLogin" => 1776319182 "currentLogin" => 1776401728 "backupCodes" => null "trustedTokenVersion" => 0 "faqs" => "a:0:{}" "news" => "a:0:{}" "calendars" => "a:0:{}" "calendarfeeds" => "a:0:{}" "newsletters" => "a:0:{}" "doNotCollapse" => false "pageLanguageLabels" => null "frontendModules" => "a:0:{}" "tags_disable_add_new" => "a:0:{}" "doNotHideMessages" => false "cud" => "a:0:{}" "backendWidth" => "" "rocksolidFrontendHelperOperations" => "a:0:{}" "rocksolidFrontendHelperContentElements" => "a:0:{}" "rocksolidFrontendHelper" => "1" "rocksolidFrontendHelperLightbox" => "1" ] #arrModified: [] #arrRelations: array:9 [ "groups" => array:4 [ "table" => "tl_user_group" "field" => "id" "type" => "belongsToMany" "load" => "lazy" ] "pagemounts" => array:4 [ "table" => "tl_page" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "forms" => array:4 [ "table" => "tl_form" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "amg" => array:4 [ "table" => "tl_member_group" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "faqs" => array:4 [ "table" => "tl_faq_category" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "news" => array:4 [ "table" => "tl_news_archive" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "calendars" => array:4 [ "table" => "tl_calendar" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "calendarfeeds" => array:4 [ "table" => "tl_calendar_feed" "field" => "id" "type" => "hasMany" "load" => "lazy" ] "newsletters" => array:4 [ "table" => "tl_newsletter_channel" "field" => "id" "type" => "hasMany" "load" => "lazy" ] ] #arrRelated: [] #arrEnums: [] #blnPreventSaving: false } "numberOfComments" => 0 "commentCount" => "(comments: 0)" "timestamp" => 1689674880 "datetime" => "2023-07-18T12:08:00+02:00" "addBefore" => true "picture" => array:4 [ "img" => array:6 [ "srcset" => "/assets/images/b/blob-storage-670x415-9cm01f5jm3y71t3.jpg 1x, /assets/images/2/blob-storage-670x415-a8rymrsccgvsscn.jpg 1.5x" "src" => "/assets/images/b/blob-storage-670x415-9cm01f5jm3y71t3.jpg" "width" => 408 "height" => 257 "loading" => "lazy" "hasSingleAspectRatio" => true ] "sources" => array:1 [ 0 => array:5 [ "srcset" => "/assets/images/w/blob-storage-670x415-nsb12evc6cd3tda.webp 1x, /assets/images/0/blob-storage-670x415-jpbkq2m01y4afny.webp 1.5x" "src" => "/assets/images/w/blob-storage-670x415-nsb12evc6cd3tda.webp" "width" => 408 "height" => 257 "type" => "image/webp" ] ] "alt" => "Dense dark blue clouds" "title" => "" ] "width" => 670 "height" => 415 "arrSize" => array:7 [ 0 => 408 1 => 257 2 => 2 3 => "width="408" height="257"" "bits" => 8 "channels" => 3 "mime" => "image/jpeg" ] "imgSize" => " width="408" height="257"" "src" => "/assets/images/b/blob-storage-670x415-9cm01f5jm3y71t3.jpg" "license" => "" "uuid" => "ec1ce67e-ef41-11ed-9dc1-03dc47cc2e7f" "floatClass" => " float_above" "figure" => Contao\CoreBundle\Image\Studio\Figure {#1886 -image: Contao\CoreBundle\Image\Studio\ImageResult {#1882 -picture: Contao\Image\Picture {#1917 -img: array:6 [ "srcset" => array:2 [ 0 => array:2 [ 0 => Contao\Image\Image {#1909 #path: "/www/htdocs/w01e7d56/esyon/blue/assets/images/b/blob-storage-670x415-9cm01f5jm3y71t3.jpg" #dimensions: Contao\Image\ImageDimensions {#1899 -size: Imagine\Image\Box {#1912 -width: 408 -height: 257 } -orientation: 1 -relative: false -undefined: false } #imagine: Imagine\Imagick\Imagine {#1795 -metadataReader: null -classFactory: null } -importantPart: null } 1 => "1x" ] 1 => array:2 [ 0 => Contao\Image\DeferredImage {#1904 #path: "/www/htdocs/w01e7d56/esyon/blue/assets/images/2/blob-storage-670x415-a8rymrsccgvsscn.jpg" #dimensions: Contao\Image\ImageDimensions {#1916 -size: Imagine\Image\Box {#1914 -width: 612 -height: 386 } -orientation: 1 -relative: false -undefined: false } #imagine: Imagine\Imagick\Imagine {#1795} -importantPart: null } 1 => "1.5x" ] ] "src" => Contao\Image\Image {#1909} "width" => 408 "height" => 257 "loading" => "lazy" "hasSingleAspectRatio" => true ] -sources: array:1 [ 0 => array:5 [ "srcset" => array:2 [ 0 => array:2 [ 0 => Contao\Image\DeferredImage {#1913 #path: "/www/htdocs/w01e7d56/esyon/blue/assets/images/w/blob-storage-670x415-nsb12evc6cd3tda.webp" #dimensions: Contao\Image\ImageDimensions {#1919 -size: Imagine\Image\Box {#1910 -width: 408 -height: 257 } -orientation: 1 -relative: false -undefined: false } #imagine: Imagine\Imagick\Imagine {#1795} -importantPart: null } 1 => "1x" ] 1 => array:2 [ 0 => Contao\Image\DeferredImage {#1918 #path: "/www/htdocs/w01e7d56/esyon/blue/assets/images/0/blob-storage-670x415-jpbkq2m01y4afny.webp" #dimensions: Contao\Image\ImageDimensions {#1922 -size: Imagine\Image\Box {#1920 -width: 612 -height: 386 } -orientation: 1 -relative: false -undefined: false } #imagine: Imagine\Imagick\Imagine {#1795} -importantPart: null } 1 => "1.5x" ] ] "src" => Contao\Image\DeferredImage {#1913} "width" => 408 "height" => 257 "type" => "image/webp" ] ] } -originalDimensions: Contao\Image\ImageDimensions {#1891 -size: Imagine\Image\Box {#1890 -width: 670 -height: 415 } -orientation: 1 -relative: false -undefined: false } -locator: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#1809 -externalId: null -container: null -loading: [] -providedTypes: ? array -factories: array:10 [ "contao.image.studio" => array:4 [ 0 => "services" 1 => "contao.image.studio" 2 => "getContao_Image_StudioService" 3 => true ] "contao.image.picture_factory" => array:4 [ 0 => "services" 1 => "contao.image.picture_factory" 2 => "getContao_Image_PictureFactoryService" 3 => true ] "contao.image.factory" => array:4 [ 0 => "services" 1 => "contao.image.factory" 2 => "getContao_Image_FactoryService" 3 => true ] "contao.image.resizer" => array:4 [ 0 => "services" 1 => "contao.image.resizer" 2 => "getContao_Image_ResizerService" 3 => true ] "contao.assets.files_context" => array:4 [ 0 => "services" 1 => "contao.assets.files_context" 2 => "getContao_Assets_FilesContextService" 3 => false ] "contao.routing.page_finder" => array:4 [ 0 => "services" 1 => "contao.routing.page_finder" 2 => "getContao_Routing_PageFinderService" 3 => false ] "contao.framework" => array:4 [ 0 => "services" 1 => "contao.framework" 2 => "getContao_FrameworkService" 3 => false ] "contao.filesystem.virtual.files" => array:4 [ 0 => "services" 1 => "contao.filesystem.virtual.files" 2 => "getContao_Filesystem_Virtual_FilesService" 3 => true ] "contao.insert_tag.parser" => array:4 [ 0 => "services" 1 => "contao.insert_tag.parser" 2 => "getContao_InsertTag_ParserService" 3 => true ] "event_dispatcher" => array:4 [ 0 => "services" 1 => "event_dispatcher" 2 => "getEventDispatcherService" 3 => false ] ] -factory: ContainerE4dMPbr\Contao_ManagerBundle_HttpKernel_ContaoKernelProdContainer::getService(string|false $registry, string $id, ?string $method, string|bool $load): mixed {#129 : "mixed" : ContainerE4dMPbr\Contao_ManagerBundle_HttpKernel_ContaoKernelProdContainer {#132 …} } -serviceMap: array:10 [ "contao.image.studio" => array:4 [ 0 => "services" 1 => "contao.image.studio" 2 => "getContao_Image_StudioService" 3 => true ] "contao.image.picture_factory" => array:4 [ 0 => "services" 1 => "contao.image.picture_factory" 2 => "getContao_Image_PictureFactoryService" 3 => true ] "contao.image.factory" => array:4 [ 0 => "services" 1 => "contao.image.factory" 2 => "getContao_Image_FactoryService" 3 => true ] "contao.image.resizer" => array:4 [ 0 => "services" 1 => "contao.image.resizer" 2 => "getContao_Image_ResizerService" 3 => true ] "contao.assets.files_context" => array:4 [ 0 => "services" 1 => "contao.assets.files_context" 2 => "getContao_Assets_FilesContextService" 3 => false ] "contao.routing.page_finder" => array:4 [ 0 => "services" 1 => "contao.routing.page_finder" 2 => "getContao_Routing_PageFinderService" 3 => false ] "contao.framework" => array:4 [ 0 => "services" 1 => "contao.framework" 2 => "getContao_FrameworkService" 3 => false ] "contao.filesystem.virtual.files" => array:4 [ 0 => "services" 1 => "contao.filesystem.virtual.files" 2 => "getContao_Filesystem_Virtual_FilesService" 3 => true ] "contao.insert_tag.parser" => array:4 [ 0 => "services" 1 => "contao.insert_tag.parser" 2 => "getContao_InsertTag_ParserService" 3 => true ] "event_dispatcher" => array:4 [ 0 => "services" 1 => "event_dispatcher" 2 => "getEventDispatcherService" 3 => false ] ] -serviceTypes: array:10 [ "contao.image.studio" => "?" "contao.image.picture_factory" => "?" "contao.image.factory" => "?" "contao.image.resizer" => "?" "contao.assets.files_context" => "?" "contao.routing.page_finder" => "?" "contao.framework" => "?" "contao.filesystem.virtual.files" => "?" "contao.insert_tag.parser" => "?" "event_dispatcher" => "?" ] } -projectDir: "/www/htdocs/w01e7d56/esyon/blue" -filePathOrImageInterface: "/www/htdocs/w01e7d56/esyon/blue/files/content/blog/content/blob-storage-670x415.jpg" -sizeConfiguration: "a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:1:"2";}" -resizeOptions: null } -metadata: Contao\CoreBundle\File\Metadata {#1894 -values: array:6 [ "title" => "" "alt" => "Dense dark blue clouds" "link" => "" "caption" => "" "license" => "" "uuid" => "ec1ce67e-ef41-11ed-9dc1-03dc47cc2e7f" ] -schemaOrgJsonLd: null } -linkAttributes: array:1 [ "href" => "" ] -lightbox: null -options: [] } "tagsRaw" => array:1 [ 0 => array:6 [ "id" => 6 "tag" => "Cloud-Hosting" "tstamp" => 1684736465 "translation" => null "invisible" => "" "title" => "Cloud-Hosting" ] ] "getSchemaOrgData" => Closure(): array {#1892 : "array" : "InspiredMinds\ContaoLanguageAutoswitch\Module\NewsReaderModule" : { : Contao\NewsModel {#1867 …} : Contao\FrontendTemplate {#1861 …} } } ]
Blob Storage: Storing Your Data in the Azure Cloud
What is Blob Storage?
Blob Storage is one of four Azure Storage services, alongside Azure Files, Disks, and Tables. It is used for storing unstructured data that does not adhere to a fixed data model. This mainly involves texts and so-called binary data. Hence, the somewhat peculiar name: Blob stands for Binary Large Objects. This encompasses image files, video files, or other media data. Besides pure storage, the service also facilitates the development of container-based applications in a cloud environment.
What are the usage prerequisites?
To use Blob Storage, you need an Azure Storage Account, which can be added to an existing Azure Subscription at any time. A Storage Account offers approximately 5500 terabytes of storage space. However, multiple Storage Accounts can be created within a subscription if a larger storage capacity is needed.
How is Blob Storage structured?
The Azure storage service is structured into three levels: the account, containers, and blobs.
Account
At the account level, you can create and remove new containers. Each account must have a globally unique account name, which is included in the address of each uploaded object.
Example: For the account name "youraccount," the base address would look like this: "https://youraccount.blob.core.windows.net"
Containers
Containers are used to organize blobs and can be easily compared to folder directories in local storage, even though these do not exist in Blob Storage. The storage service follows a flat hierarchy without a folder structure, but file paths can be assigned during upload to simulate this structure. Example: "https://youraccount.blob.core.windows.net/images/folder1/image001.png" In our example, the image file image001.png located in the "images" container was uploaded under the file path "folder1." When accessing the container, a corresponding folder structure is simulated. However, deleting the file also automatically removes the folder, indicating that it never truly existed. Within an account, any number of containers can be created, with the only limitation being the storage capacity of the Storage Account.
Blobs
The actual data uploaded through Blob Storage is referred to as blobs. In practice, three types of blobs are distinguished.
Blob Types
Block Blobs
Block blobs are the most common form of blobs. As the name suggests, they consist of blocks that can be managed independently. Storing multiple files in a block is possible, with an individual block being able to be up to 190.7 TiB in size (TiB = Tebibyte, approximately 1.099 terabytes). Once uploaded, block blobs can be deleted or overwritten, but existing blocks remain immutable.
Append Blobs
For certain file types, it can be useful for them to be appendable, such as for log files that need to be automatically updated without being completely recreated with every log entry. This purpose is served by append blobs, which also consist of blocks but allow for the addition of new information compared to block blobs.
Page Blobs
Page blobs can store blocks up to a maximum size of 8 TiB, allowing read and write access at any position (referred to as Random Access). Page blobs are used to store virtual hard drive (VHD) files and are utilized when hosting a virtual machine in a cloud environment.
Why Cloud Storage Makes Sense
Now that the technical foundations of Blob Storage are clarified, the question naturally arises for online retailers: What benefits does cloud storage actually bring? Simplified, it could be said that Blob Storage offers the same advantages as cloud hosting in general.
Redundancy
When creating your Azure Storage Account, you can choose from four models that determine how your data is stored in Azure Storage.
Locally Redundant Storage (LRS): Data is replicated three times within a single data center.

Zone-Redundant Storage (ZRS): Data is replicated to three different data centers within a geographic region.

Geo-Redundant Storage (GRS): Data is replicated to three data centers in two different geographic regions.

Read-Access Geo-Redundant Storage (RA-GRS): Similar to GRS, but you can choose the zone to access.
By default, the first option, Locally Redundant Storage (LRS), is selected, which doesn't provide spatial separation but is more cost-effective. Redundant storage ensures that your data remains accessible even after the failure of a hard drive, an entire data center, or even an entire region.
Speed
Blob Storage allows you to store and process data in a scalable environment, ensuring reliable and prompt access even during peak loads. This can be easily demonstrated in the demo of our product configurator. The necessary image files are stored in Blob Storage, so the Apache Server doesn't need to request them from the server. Instead, a fixed, public URL for the respective image is directly accessed, resulting in almost no loading time.
Accessibility
The migration of your data to the cloud can be done location-independent and through various solutions. For data import and export, various REST APIs are available for the most common programming languages, including Python, C#, Java, and PHP, in addition to free tools like the Cloud Explorer for Microsoft Visual Studio.
Data Security
Blob Storage utilizes role-based access control (RBAC) and encrypts all data to protect against unauthorized access.
Cost-Efficiency
The automatic scaling of the cloud ensures that your system is always appropriately sized according to your needs. You only pay for what you actually consume.
ESYON and Blob Storage
As a certified Cloud Solution Provider (CSP), ESYON hosts the projects of your customers in the Azure Cloud, leveraging services like Blob Storage. Cloud computing allows us to achieve rapid development cycles, enabling us to meet individual customer requirements with a short time-to-market.