2017-03-19 276 views
3

我們已經在azure存儲(表和blob)中以json格式壓縮數據我想將數據ETL數據關聯到數據庫以便可以選擇對數據運行sql查詢 我有一個實用程序它將數據解壓縮爲json文件, 我通過SSIS包將其從ETL從excel轉換爲sql server(使用將json轉換爲excel後的數據透視表) 是否有更簡單的方法使用splunk獲得相同的目的? 請注意,我的JSON結構有點複雜 JSON例如:使用Splunk查詢json數據

{ 
"columns": [ 
{ 
    "name": "database_name", 
    "values": [ 
    "sales", 
    "salesr", 
    "sal" 

    ], 
    "encd": 0, 
    "type": 0 
}, 
{ 
    "name": "machine_name", 
    "values": [ 
    "ISRVMN823", 
    "ISRVMN825", 
    "ISRVMN822" 

    ], 
    "encd": 0, 
    "type": 0 
}, 
{ 
    "name": "program_name", 
    "values": [ 
    "SQLAgent - TSQL JobStep (Job 0x8701D9C6BFB3A146B9E6AB0602F5B4C3 : Step 1)", 
    "SQLAgent - TSQL JobStep (Job 0xE3521B34CED03441B971A36E8EF5210B : Step 1)", 
    "SQLAgent - TSQL JobStep (Job 0x4BBA5C65C5AF78469A7FE9B765BE430E : Step 1)" 

    ], 
    "encd": 0, 
    "type": 0 
} 
], 
"submission_time": 1483617753706, 
"ds_id": "ISRVMN889", 
"identity_broker": "00_yr", 
"connection_name": "ISRVMN822SQL2012NY", 
"table_name": "pass_unique_stat_5m", 
"version": "1.0.0", 
"duration": 300, 
"sample_time": 1483617300000 
} 

我想要得到的東西,如關係數據庫如下:

yy

或另一種方式來查詢數據

謝謝

回答

0

在這裏你去:)

可以忽略第一部分,這是在您的數據只有我硬編碼到搜索

| makeresults 
| eval json = "{ 
\"columns\": [ 
{ 
    \"name\": \"database_name\", 
    \"values\": [ 
    \"sales\", 
    \"salesr\", 
    \"sal\" 

    ], 
    \"encd\": 0, 
    \"type\": 0 
}, 
{ 
    \"name\": \"machine_name\", 
    \"values\": [ 
    \"ISRVMN823\", 
    \"ISRVMN825\", 
    \"ISRVMN822\" 

    ], 
    \"encd\": 0, 
    \"type\": 0 
}, 
{ 
    \"name\": \"program_name\", 
    \"values\": [ 
    \"SQLAgent - TSQL JobStep (Job 0x8701D9C6BFB3A146B9E6AB0602F5B4C3 : Step 1)\", 
    \"SQLAgent - TSQL JobStep (Job 0xE3521B34CED03441B971A36E8EF5210B : Step 1)\", 
    \"SQLAgent - TSQL JobStep (Job 0x4BBA5C65C5AF78469A7FE9B765BE430E : Step 1)\" 

    ], 
    \"encd\": 0, 
    \"type\": 0 
} 
], 
\"submission_time\": 1483617753706, 
\"ds_id\": \"ISRVMN889\", 
\"identity_broker\": \"00_yr\", 
\"connection_name\": \"ISRVMN822SQL2012NY\", 
\"table_name\": \"pass_unique_stat_5m\", 
\"version\": \"1.0.0\", 
\"duration\": 300, 
\"sample_time\": 1483617300000 
}" 
| spath input=json path=columns{} | rename columns{} as cols | table cols 
| mvexpand cols 
| spath input=cols | rename values{} as values | table name values 
| transpose header_field=name | fields - column