Преобразуйте список пар значения ключа к хеш-таблице

Я рассмотрел несколько стопок висмута в то время как на пути для выхода Бизнес-объектов. Много моих комментариев является предпочтением. Оба комплекта инструментальных средств превосходны. Некоторые вещи состоят в том, как я предпочитаю шоколадное мороженое брауни выдумки по простому шоколаду.

Pentaho имеет некоторых действительно умных парней, работающих с ними, но Microsoft была на хорошо финансируемом и хорошо запланированном пути. Следует иметь в виду, что MS является все еще проигравшими на рынке базы данных. Oracle является королем здесь. Быть конкурентоспособным MS выдавало много положительных героев, когда Вы покупаете базу данных и были вынуждены перестроить их платформу пару раз. Я знаю, что это не о базе данных, но сражение DB имеет MS причины для отдачи много для увеличивания стоимость их стека.

1.) Платформа
SQL-сервер не работает на Unix или Linux, таким образом, они автоматически исключены из этого рынка. Windows о той же цене как некоторые версии или Unix теперь. Windows является довольно дешевым и работает умирающим образом хорошо теперь. Это дает мне почти столько же проблемы сколько Linux.

2.) услуги OLAP
по Анализу были перестроены в 2005 (текущий, 2008) по версии 2000 года. Это - порядок magnatude, более мощного за 2000. pentaho (Mondrian) не так быстр, как только Вы становитесь крупными. Это также имеет немного функций. Это довольно хорошо, но существует меньше в способе инструментов. Оба Excel поддержки как платформа, которая важна. Версия MS более устойчива.

3.) ETL
мс - DTS был заменен SSIS. Снова, порядок magnatude увеличиваются в скорости, питании и способности. Это управляет любым и всем перемещением данных или программным управлением. Если это не может сделать этого, можно записать сценарий в Powershell. Наравне с Informatica в выпуске 2008 года. Pentaho - Намного лучше, чем используется, чтобы быть. Не с такой скоростью, как я хотел бы, но я могу сделать примерно все, что я хочу сделать.

4.) панель инструментов
Pentaho улучшил это. Это - вид неудобных и недружелюбных для разработки, но существует действительно не реальный equiv для MS.

5.) отчеты
, о котором сообщает мс, действительно мощны, но не все это трудно для использования. Я люблю его теперь, но ненавидел его сначала, пока я не узнал его немного лучше. Я использовал кристаллические отчеты, и построитель отчетов MS намного более мощен. Легко сделать твердые вещи в MS, но немного тяжелее сделать легкие вещи. Pentaho немного неуклюж. Мне не нравился он вообще, но Вы могли бы. Я нашел, что он был чрезмерно сложен. Мне жаль, что это не было или больше как построитель отчетов Crystal или построитель отчетов MS, но это - яшма как. Я нахожу, должно быть твердым. Это может быть предпочтением.

6.) для данного случая
мс - это было настоящим победителем для меня. Я протестировал его со своими пользователями они, немедленно любящие пользовательский построитель отчетов MS. То, что имело значение, было то, как это не было просто просто в использовании, но также и продуктивно. Pentaho - является хорошей но довольно старой школой. Это использует более типичную основанную на мастере модель и имеет мощные инструменты, но я ненавижу его. Это - превосходный инструмент для того, каково это, но мы шли дальше от этого стиля, и никто не хочет возвратиться. Та же проблема я имел с logiXML. Интерфейс работал хорошо на то, чем это было, всего лишь не действительно большая часть изменения от того, что мы использовали 12 лет. http://wiki.pentaho.com/display/PRESALESPORTAL/Methods+of+Interactive+Reporting

существует некоторые опытные люди там, которые могут сделать Pentaho действительно выполненным хорошо, я просто нашел, что комплект MS был более продуктивным.

12
задан ДМИТРИЙ МАЛИКОВ 2 September 2015 в 11:05
поделиться

4 ответа

Попробуйте следующее

$table = new-object System.Collections.Hashtable
for ( $i = 0; $i -lt $list.Length; $i += 2 ) {
  $table.Add($list[$i],$list[$i+1]);
}
11
ответ дан 2 December 2019 в 05:15
поделиться
Function ConvertTo-Hashtable($list) {
    $h = @{}

    while($list) {
        $head, $next, $list = $list
        $h.$head = $next
    }

    $h
}

ConvertTo-Hashtable ("Key",1,"Key2",2)
11
ответ дан 2 December 2019 в 05:15
поделиться
$h = @{}  
0..($l.count - 1) | ? {$_ -band 1} | % {$h.Add($l[$_-1],$l[$_])}  

$h = @{}  
0..($l.count - 1) | ? {$_ -band 1} | % {$h.($l[$_-1]) = $l[$_]}  

$h = @{}  
$i = 0  
while ($i -lt $l.count) {$h.Add($l[$i++],$l[$i++])}
2
ответ дан 2 December 2019 в 05:15
поделиться

Как насчет:

$ht = @{}
$key = "";
("Key",5,"Key2",6) | foreach `
{  
    if($key)  
    {
        $ht.$key = $_; 
        $key=""; 
    } else 
    {$key=$_}   
}
2
ответ дан 2 December 2019 в 05:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: