Selection of data warehouses

See newb here!

When you create a pool of offices, he asked what data stores I want to store related clones and replicas on.  What I can (or should I) select data warehouses that I have selected in other office pools?  On previous office pools, I just picked all the LUNS that I have and that have been set up for the view.  Will it hurt if I do this for every office pool?  My thoughts here was to desktop computers as evenly as possible.  I didn't know if I had to to keep office pools isolated on their own LUN or not.

Supply us and distribute the load all data available within the cluster stores, even as you do.  I see nothing wrong with your approach.

Tags: VMware

Similar Questions

  • ESXi 4.1 change the selection of trace on data warehouses

    ESXi 4.1, I have a couple of data warehouses that were not configured correctly. The selection of the path is set to fixed, while the other data stores have alternate-control storage IO. I'm looking for the less risky/disruptive way to change the configuration of these data stores. There are 15 ESX hosts.

    When to change the configuration of the data store is all for example conditions pre move VMs in another data store, stop the virtual machines etc.. Y at - it any disturbance to the ESX host?

    Hello

    Changing paths is not disruptive and can be done online, as long as takes care of the storage and SAN network is in good health.

    Validate it seems that some are on Round Robin and I presume that it is on the same storage array.

    You can do this by running a PowerCli script to modify the path selection: Home

    I don't have the scrip to activate SOIC

    Concerning

    Please allow points to useful/correct answers

  • Create schemas for data warehouse for Reporting with Oracle XE

    It is possible to import home charger with the Oracle XE database and dw?

    I get this error ORA-00439: feature not enabled not: progress of replication in the log of the CIM.

    I saw that the database, we do not have have the feature "advanced replication."

    SQL> select * from v $ option where parameter = 'Advanced replication';
    
    
    PARAMETER
    -------------------------------------------------- --------------
    VALUE
    -------------------------------------------------- --------------
    advanced replication
    FALSE
    
    
    

    Journal of the CIM:

    Mon Feb 23 14:16 BRT 2015 1424711760686 atg.cim.database.dbsetup.CimDBJobManager module of high level of information for Reporting data warehouse Datasource list page: domain controllers. DW, ARF. DW.base, ARF. DW. InternalUsers, Store.Storefront

    Info my Feb 23 14:16:05 BRT 2015 1424711765012 atg.cim.database.dbsetup.CimDBJobManager 0 0 imports has not been executed.

    Info my Feb 23 14:16:05 BRT 2015 1424711765192 atg.cim.database.dbsetup.CimDBJobManager list of module level for Datasource Reporting charger: DafEar.Admin, DCS. DW, DCS. PublishingAgent, ARF.base, Store.EStore, Store.EStore.International

    Info my Feb 23 14:16:05 BRT 2015 1424711765733 atg.cim.database.dbsetup.CimDBJobManager 1 1 imports has not been executed.

    Info my Feb 23 14:16:05 BRT 2015 1424711765953 atg.cim.database.dbsetup.CimDBJobManager list of top level for Datasource Publishing module: DCS - UI. Versioned, BIZUI, PubPortlet, DafEar.admin, DCS - UI. SiteAdmin.Versioned, SiteAdmin.Versioned, DCS. Versioned, DCS - UI, Store.EStore.Versioned, Store.Storefront, DAF. Endeca.Index.Versioned, DCS. Endeca.Index.Versioned, ARF.base, DCS. Endeca.Index.SKUIndexing, Store.EStore.International.Versioned, Store.Mobile, Store.Mobile.Versioned, Store.Endeca.International, Store.KnowledgeBase.International, Portal.paf, Store.Storefront

    Info my Feb 23 14:16:11 BRT 2015 1424711771561 atg.cim.database.dbsetup.CimDBJobManager 65 65 imports has not been executed.

    Info my Feb 23 14:16:11 BRT 2015 1424711771722 atg.cim.database.dbsetup.CimDBJobManager list of top level for Datasource Production Core module: Store.EStore.International, DafEar.Admin, DPS, DSS, DCS. PublishingAgent, DCS. AbandonedOrderServices, DAF. Endeca.Index, DCS. Endeca.Index, Store.Endeca.Index, DAF. Endeca.Assembler, ARF.base, PublishingAgent, DCS. Endeca.Index.SKUIndexing,Store.Storefront,Store.EStore.International,Store.Recommendations,Store.Mobile,Store.Endeca.International,Store.Fluoroscope,Store.KnowledgeBase.International,Store.Mobile.Recommendations,Store.Mobile.International,Store.EStore,Store.Recommendations.International

    Info my Feb 23 14:16:12 1424711772473 2015 BRT atg.cim.database.dbsetup.CimDBJobManager 30 30 imports has not been executed.

    Info my Feb 23 14:16:19 BRT 2015 1424711779573 atg.cim.database.dbsetup.CimDBJobManager creating schema to the Reporting data warehouse data source

    Info my Feb 23 14:16:19 BRT 2015 1424711779653 atg.cim.database.dbsetup.CimDBJobManager list of top level for Datasource Reporting data warehouse module: domain controllers. DW, ARF. DW.base, ARF. DW. InternalUsers, Store.Storefront

    Info my Feb 23 14:16:19 BRT 2015 1424711779993 atg.cim.database.dbsetup.CimDBJobManager DatabaseTask Create for Module ARF. DW.base, sql/db_components/oracle/arf_ddl.sql

    Info my Feb 23 14:16:19 BRT 2015 1424711779993 atg.cim.database.dbsetup.CimDBJobManager DatabaseTask Create for Module ARF. DW.base, sql/db_components/oracle/arf_view_ddl.sql

    Info my Feb 23 14:16:19 BRT 2015 1424711779993 atg.cim.database.dbsetup.CimDBJobManager DatabaseTask Create for Module ARF. DW.base, sql/db_components/oracle/arf_init.sql

    Info my Feb 23 14:16:19 BRT 2015 1424711779993 atg.cim.database.dbsetup.CimDBJobManager Create DatabaseTask Module domain controller. DW, sql/db_components/oracle/arf_dcs_ddl.sql

    Info my Feb 23 14:16:19 BRT 2015 1424711779993 atg.cim.database.dbsetup.CimDBJobManager Create DatabaseTask Module domain controller. DW, sql/db_components/oracle/arf_dcs_view_ddl.sql * info my Feb 23 14:16:19 BRT 2015 1424711779993 atg.cim.database.dbsetup.CimDBJobManager Create DatabaseTask Module domain controller. DW, sql/db_components/oracle/arf_dcs_init.sql

    Info my Feb 23 14:16:21 atg.cim.database.dbsetup.CimDBJobManager BRT 2015 1424711781085 found 2 of the 6 unrun previously of tasks for Datasource Reporting data warehouse

    Info my Feb 23 14:16:21 BRT 2015 1424711781085 atg.cim.database.dbsetup.CimDBJobManager 1 ARF. DW.base: sql/db_components/oracle/arf_view_ddl.sql

    Info my Feb 23 14:16:21 atg.cim.database.dbsetup.CimDBJobManager 1424711781085 2015 BRT 2 domain controllers. DW: sql/db_components/oracle/arf_dcs_view_ddl.sql

    Info my Feb 23 14:16:21 BRT 2015 1424711781085/atg/dynamo/dbsetup/job/DatabaseJobManager starting work of setting up data 1424711781085.

    Error my Feb 23 14:16:21 BRT 2015 1424711781516 /atg/dynamo/dbsetup/database/DatabaseOperationManager---java.sql.SQLException: ORA-00439: feature not enabled not: Advanced replication

    is there a solution?

    Hello

    We have not tested and certified with Oracle XE internally

    You must use an Oracle Enterprise Edition for Advanced Replication

    What version of Oracle trade you install, I can't say extract of newspaper, you've posted

    ++++

    Thank you

    Gareth

    Please indicate any update as "Good response" or "Useful answer" If this update help and answers your question, so that others can identify the correct/good update between the many updates.

  • PowerCLI script for DatastoreCluster, data warehouses and the size info, DataCenter, Clusters

    Hello - I am looking to remove the DatastoreClusters and then list data warehouses as well with their size (total size, used space, free space, put in service, uncommitted space) and the total number of virtual machines on this data store. I would also like to understand what data center and they are on clusters. Is this possible? I might want to limit what is displayed in data warehouses that are 13 percent of free space or less.

    Thank you

    LORRI

    Of course, try this way

    Get-Datastore.

    Select @{N = 'Center'; E={$_. Datacenter.Name}},

    @{N = "DSC"; E = {Get-DatastoreCluster - Datastore $_______ |} {{Select - ExpandProperty name}}.

    Name,CapacityGB,@{N='FreespaceGB'; E = {[math]: tour ($_.)} (FreespaceGB, 2)}},

    @{N = "ProvisionedSpaceGB"; E = {}

    [math]: Round (($_.)) ExtensionData.Summary.Capacity - $_. Extensiondata.Summary.FreeSpace + $_. ExtensionData.Summary.Uncommitted)/1GB,2)}}.

    @{N = "UnCommittedGB"; E = {[math]: tour ($_.)} ExtensionData.Summary.Uncommitted/1GB,2)}}.

    @{N = "VM"; E={$_. ExtensionData.VM.Count}} |

    Export Csv report.csv - NoTypeInformation - UseCulture

  • I have a virtual machine that is resident on two data warehouses, and I need to move

    Okay, I'm trying to reconfigure the storage on a cluster of ESXi to software development, and I fell on a virtual machine that is resident on two data warehouses.  Somehow, the user has configured this thing to have most of the VM files on the data store 5 while all the vmdk but the residence on the data store 1 boot drive.  He probably did it because of the size of the old warehouses of data and the many VMs older than his colleagues left sitting.  Well, now I just reconfigure data warehouses so that there is more usable space, but I can't move this machine a virtual so that I can reconfigure the rest of storage.  (For reference, the old warehouses of data have been implemented in 4 sets of three disks in RAID 3 and a set of four disks in RAID 3 with two drives hot spare.)  For the record: not my idea.  I am reconfiguring them now to be a set of 15 drives in RAID 6, divided into two LUNS on both controllers, with a hot spare.)

    Well, now I need to figure out how to get this VM is spent at one of new data stores.  The data migration store feature does not work.  Any recommendations?

    Hi Dangingerich,

    You can move the VMDK individually with the advanced functionality of storage vMotion allows you to ask the data disk on your new storage space and then have the OS disk track.

    YouTube Video - https://www.youtube.com/watch?v=uhdmdcMmvas

    Screenshots

    When you svMotioning click on the Advanced button

    Here you can select the individual VMDK and move.

    All content comes from the video by Paul Braren, I annotated only his work.

    Have fun

    @iiToby

  • How to change data warehouses placeholder?

    Hello

    This might be a silly, but after my first selection of place holder data warehouses, I want to change them, but when I click to select the original datatstores, I chose are greyed out... so I can't deselect?

    I can add more effort to be placeholders, but I can't remove the currently selected links? Do I have to disable the replication of first or something?

    See you soon,.

    Bilal

    Check if help: Site Recovery Manager - change a placeholder data store | VMware vSphere Blog - VMware Blogs

  • hide local data warehouses in vCenter

    I'm trying to understand how hide us local data warehouses appear in Vsphere 5.5 I find it looks like permissions.  How do you go in permissions for all the local data store

    Thank you

    Hello

    In order to hide this data store using permissions, you must do the following:

    Open-> inventory-> warehouses VSphere-> select the select data-> permissions VMFS store-> click the user or group in the list and set them to 'No access' - are not propagated. We want it to take effect only on this data store.

    Let me know how it goes.

  • Need a script to list all virtual machines on specific data warehouses

    I am trying to find a way to list all virtual computers on specific data warehouses. I use vSphere 5.1 and so far I got this:

    Get-Datastore. where {$_ .name - like ' * XXX * ""} | Get - VM | Select name, @{N = "Datastore"; {E = {Get-Datastore - VM $_}} | Sort name | FT - one

    This kind of work, but it would be perfect if I got this:

    -Group data store

    -Unique virtual machines (VMS to report only to the data store where the VMX)

    Any help appreciated.

    I relied on the fact that the first in the list would be the data store that holds the VMX, which apparently is a misconception.

    Try like this

    Get-Datastore-Name ' * xxx *' |

    Get - VM | Select the name,

    @{N = "Datastore"; E={$_. {{ExtensionData.Config.Files.VmPathName.split ('[]') [1]}} |

    Tri-objet-property data store name |

    Format-Table - AutoSize

  • Script to find virtual machines on data warehouses that begin by...

    I'm looking for a script that will list all VM on specific data with the initial T1SDX1 letters warehouses. I tried to use a certain liners, I found, but they do not seem to work. Here's what I'm not, but it does not list the VM.

    Get-Cluster "Test Cluster" | Get-vm |?{($_.extensiondata.config.datastoreurl|%{$_.name}) -like "T1SDX1"}| Export-Csv "H:\Excel_Reports\vms_on_whatDS.csv"
    

    I tried to use the same command - and -contains the command. Both show no results. I tried a single line, I found here, but it signals a TON of data I don't need and does not even get the info, I need.

    Get-Cluster "your_cluster"|Get-vm |?{($_.extensiondata.config.datastoreurl|%{$_.name}) -match "^T"}
    

    In fact, I found an old script I used who shot all s VM on all data warehouses. It works, I'll just filter across the worksheet.

    Here's the script if anyone cares or she wants:

    $Today = (Get-Date -Format "yyyyMMdd-HH.mm")
    $vcenter = $defaultVIServers
    $report = Get-Datacenter | Get-Datastore | Foreach-Object {
        $ds = $_.Name
        $_ | Get-VM | Select-Object Name,@{n='DataStore';e={$ds}} |
        }
    $report | Export-Csv "H:\Excel_Reports\DS.stats.$vcenter.$today.csv" -NoTypeInformation -UseCulture
    
  • The E-mail Message body dynamics PowerShell/PowerCLI with data warehouses

    Hello what follows is related to this e-mail, but I'm stuck at the rounding of numbers

    The E-mail Message body dynamics PowerShell/PowerCLI

    I get an email with the following information:

    Datastore HealthCheck vCenter

    Available data store space
    UsedGB data store                                 Free GB                                 Perc Free
    Name1 273.30078125                         274.25                                    99%
    name2 273.30078125                         274.25                                    99%
    Name3 268.466796875                         274.25                                    99%
    name4 273.30078125                         274.25                                    99%

    Three things I'm stuck: the value UsedGB, woud have first with only two decimal points instead of having 273.30078125, nice to have 273.30. Secondly I do not receive the right percentage. Third: How can I sort the free Perf in the percentage values lowest for the greater? Thanks for your help

    Code:

    $msg. Object = "vCenter Datastore health CompanyvCenter.
    $array0 = @)
    $array1 = @)
    $array2 = @)
    Start-sleep 1
    to connect-VIServer $vcserver
    $array0 += get-Datastore. Select-Object - ExpandProperty name
    $array1 += get-Datastore. Select-Object - ExpandProperty FreeSpaceGB
    $array2 = get-Datastore. Select-Object - ExpandProperty CapacityGB
    $UsedSpace = [math]: tour (($array2 [$i]-$array1[$i]), 2)
    $PercFree = [math]: Round ((100 * $array1 [$i] / $array2[$i]), 0)
    $String0 = ' $PercFree$ %.
    $i = 0
    $j = 0
    # Header
    $msg. Body += "< FONT COLOR = black > Datastore HealthCheck CompanyvCenter < / POLICE > < BR > < BR >".
    # Datastore header
    $msg. Body += "< B > < FONT COLOR = black > Datastore space available < / POLICE > < / b > < BR >".
    $msg. Body += "< B > < COLOR of FONT = black > Datastore < / POLICE > < / b > < B > < FONT COLOR = black > UsedGB < / POLICE > < / b > '."
    < B > < FONT COLOR = black > free GB < / FONT > < / b > '
    "< B > < FONT COLOR = black > free Perc < / POLICE > < /B >.
    # Datasores
    0. ($array0.) Count-1) | %{
    $msg. Body += "< BR > < DO COLOR = Black > ' + $array0 [$_]
    $msg. Body += "< / FONT > < FONT COLOR = Black >" + [math]: tour (($array2 [$_]-$array1[$_]), 2)
    #$msg. Body += ' < / POLICE > < DO COLOR = Black > ' + $array1 [$_]
    $msg. Body += ' < / POLICE > < COLOR of POLICE black = > ' + $array2 [$_] + ' < / POLICE >.
    #$msg. Body += "< / FONT > < FONT COLOR = black >" + [math]: tour (($array2 [$_]-$array1[$_]), 2) + "< station >"
    $msg. {"Body +=" "< ARE COLOR = Black >" + [math]: round ((100 * $array1 [$i] / $array2 [$i]), 0) + "$Percent" + "< / FONT > < BR >"}
    $msg. Attachments.Add ($att1)
    $msg. IsBodyHTML = $true
    $smtp. Send ($MSG)
    $att1. Dispose()
    Disconnect-VIServer $vcserver - confirm: $false

    #Here configure your paraneters

    $SMTPServer = "Exchange".

    $MailSubject = 'vCenter Datastore health CompanyvCenter.

    $Email = "[email protected]".

    function {Set-AlternatingCSSClasses

    (param

    [string] $HTMLFragment,

    [string] $CSSEvenClass,

    [string] $CssOddClass

    )

    [xml] $xml = $HTMLFragment

    $table = $xml. SelectSingleNode ('table')

    $classname = $CSSOddClass

    {foreach ($tr in $table.tr)}

    If ($classname - eq $CSSEvenClass) {$classname = $CssOddClass}

    else {$classname = $CSSEvenClass}

    $class = $xml. CreateAttribute ('class')

    $class.value = $classname

    $tr.attributes.append ($class) | Out-null

    }

    $xml.innerxml | out-string

    }

    Function report-Datastore {}

    $output = @)

    Get-Datastore. % {

    $props = [ordered]@{'Name'=$_. Name;

    "UsedSpace' = [math]: Round (($_.)) CapacityGB - $_. (FreeSpaceGB), 2);

    "PercFree" = [math]: Round ((100 * ($_.))) FreeSpaceGB / $_. {(CapacityGB)), 0)}

    $output += new-Object - TypeName PSCUstomObject-property $props

    }

    $output

    }

    "$style = @".

    "@

    #Connect to Vcenter

    SE connect-VIServer $vcserver

    # Trnasform the object in the HTML

    $html_DS = report-Datastore.

    Sort-Object PercFree |

    ConvertTo-HTML-Fragment |

    Out-string.

    Game-AlternatingCSSClasses - CSSEvenClass 'even' - CssOddClass 'odd '.

    $html_DS ="

    Data warehouses

    $html_DS ".

    $params = @{'head' ='vCenter Datastore health CompanyvCenter$style ';

    ««PreContent =»

    HealthCheck CompanyvCenter data store

    ";

    "PostContent' = $html_DS}

    # Send email

    Send-MailMessage-to $Email - subject $MailSubject-BodyAsHtml (ConvertTo-HTML @params) body - SmtpServer $SMTPServer

    # Disconnect Vcenter

    Disconnect-VIServer $vcserver - confirm: $false

  • How to use powershell to create data warehouses Fibre Channel

    Hello

    Does anyone know how to use powershell to create data warehouses Fibre Channel?

    A text file lists the data warehouse with data store names and sizes (GB) as input:
    DatastoreName1 10
    DatastoreName2 200
    DatastoreName3 10

    Version5 VMFS file system
    Block size of 1 MB

    The script should ignore LUN ID 0 as long as it is not a data store, it's a startup logic unit number.

    The value in $esxname is correct?

    Do you want to see this name when you

    Get-VMHost | Select name

  • How to see 5 pools do not VM disks on data warehouses?

    Hello.  I am new to view.  I just started a new job where they have a 5 view with more than 1,000 Linked Clone VM VDI environment.

    There are warehouses of data 3fc which each have about 400 GB of free space by showing in the view tab in vCenter server administrator.  Asked me to create a new pool with 15 virtual machines.  Each VM will require about 35 GB of total disk space (disposable, internal, swap disk and vm).  Therefore, approximately 525 GB of disk space for the virtual machines.

    I know that the amount of disk space required for the virtual machines is too big to fit on one of the data stores.  See split sort virtual machines in three warehouses of data?  If so, how composer decides what data stores to put the virtual disks of each virtual computer on?

    Thanks for your help!

    It has to work this way, you have selected all three data warehouses when you configure the pool.   If this isn't the case, you will need to go back and change the settings of the pool to include data warehouses before starting commissioning.

  • Wiping of data warehouses

    We lack VCenter 4.1 with an iSCSI SAN (managed by IBM System Storage DS Storage Manager 10).  We have a few LUNS defined on the SAN and the LUNs (mapped?) data warehouses, but not all of the space on the SAN is still attributed to any logical unit number.

    A former employee, set up our current LUNs, so we learn the entire process of creating for ourselves.  We wanted to do a test before you make drastic changes, but our test... showed us that we didn't understand completely what we were doing again.

    Here's what we did and how it went wrong.

    • We have created a new, test of 250 GB LUN on the SAN (part of the unallocated space).
    • In VSphere Client, we went through the 'Add datastore' Assistant and went through all the stages of this new logic unit number.  Everything went great and we had a new store of VMFS data available to us.
    • As a test, we migrated a small virtual PC to the new VMFS.  It worked.
    • Then we migrated it to a pre-existing data stores. It worked also.
    • Then, in VSphere Client, we have removed our new test data store.
    • Then in the IBM System Storage Manager, we have removed our new test LUN.
    • Then, just to make sure that the space had been rehabilitated, we created a test new new LUN, also in 250 GB.  This has been attributed the same LUN number as the previous test of 250 GB LUN.
    • We returned in VSphere Client, and tried to 'add a data store' by using this new-new test LUN.  Everything works until we get to the current "Available to drive" part of the wizard.  It shows 250 GB as the 'ability' of the LUN, but '-' as 'available'... and the "next" button is grayed out.

    add-storage_scrnsht.png

    Then... How can we do better?  Is it possible to delete a data store (or a logic unit number) so that the space of the deleted/LUN data store becomes 'Available' for the future creation of LUN/datastore?  We really had to be able to create a few large LUN in our space on the SAN, then remove the old, smaller LUNS created by the former employee and make MON new, bigger out of free space by removing the 'old' (since extending LUN does not work... the ex-employee tried this several times and we have hundreds of concerts tied up in space extended but unavailable LUN).

    How can we achieve this?

    Thanks in advance for the attention and/or advice.

    So, if I understand your situation, you had a unit number logic to 250 GB with VMFS, then you removed from the store database and then removed the SAN LUN.

    Then, you create a new LUN on your storage, to the same size and LUN number array, but when you want to create a data store VMFS on it you can't and the size seems to be incorrect in the vSphere Client.

    I wonder if it might be that the ESXi host is confused by the fact that it's the same LUN number. You could switch to the display of the storage card in the Configuration tab and do a rescan 'all '. Make sure you see the new empty LUN when you select the vmhbaXX, and then try to recreate the data store.

  • find the total size of the VM on specific data warehouses

    Hello

    PowerCLI guru, I'm not...

    I'm just using the following to get the total size of the virtual machine.

    Get-vmhost < host name, host name >. get - vm | Select-Object Name, UsedSpaceGB

    The problem is some of these VMS are on 15 k drive and some are over 10 k drive, is there a way to add the data store name each virtual machine is located at the exit. Seeing the data store name that I can know easily what typre of disc it is average.

    Currently, she is just out

    vmname size

    -----------        ------

    ABC 123

    Here you are:

    vmname datastore vmsize

    -----------     -------------   --------

    ABC xyz - 567 123

    Thank you

    The following PowerCLI script you will show the name, data warehouses and space used for all virtual machines:

    Get-VM | Select-Object -Property Name,
    @{Name="Datastores";Expression={
      [string]::Join(',',($_.DatastoreIDList |
        ForEach-Object { Get-View -id $_ |
        ForEach-Object {$_.Name}}) )
    }},
    UsedSpaceGB
    

    Best regards, Robert

  • In need of a script to the inventory of the virtual computer on data warehouses

    I analyzed vCheck by www.virtu-al.net. Great script and I can learn a lot of information that I need. However, I am a newbie to script and is looking to add a piece that I need inventory of data warehouses.

    That's what I need:

    I need an inventory of VMS on each cluster and have it store data that they are on a report. It would happen every night and I would be delighted if it had exported to a html file which can be downloaded to an internal wiki. I love the output html of the vCheck tool and would like to add this piece to the tool, so that it is brought to the same html file.

    Does anyone know if there is a script that will help me to do?

    Thank you!

    No problem, happy, I can help you

    This will include the ESXi host.

    To sort the list, we have everything first to grasp objects in an array and then sort.

    $result = @()
    foreach ($Cluster in $Clusters){
       $result += (Get-VM -Location $Cluster | Get-HardDisk |
       Select @{N="Cluster";E={$cluster.Name}},
         @{N="Host";E={$_.Parent.Host.Name}},
         @{N="VM";E={$_.Parent.Name}},
       @{N="Datastore";E={$_.Filename.Split(']')[0].TrimStart('[')}})
    }
    $result | Sort-Object -Property VM
    

Maybe you are looking for