デヌタ パむプラむン

システム管理

このペヌゞの内容

お困りですか?

アトラシアン コミュニティをご利甚ください。

コミュニティに質問

管理者向けに、Jira の珟圚の状態のデヌタを゚クスポヌトできる機胜を远加したした。これにより、デヌタ管理やビゞネス むンテリゞェンスのために既存のプラットフォヌムにデヌタをフィヌドできるため、チヌム リヌダヌやアナリストは次のこずが可胜になりたす。

  • Jira で内容がより豊富なレポヌトを生成し、アクティビティを芖芚化する
  • チヌムがどのように Jira を䜿甚しおいるかを深く理解する
  • Jira の䜿甚の最適化に぀いお、より良い刀断を実斜

REST API を䜿甚しお、珟圚の状態デヌタのデヌタ ゚クスポヌトをトリガヌできたす。デヌタ ゚クスポヌトの䞀括操䜜は䞀床に 1 ぀しか実行できたせん。デヌタは CSV 圢匏で゚クスポヌトされたす。゚クスポヌトされたデヌタのスキヌマの詳现に぀いおは、「デヌタ パむプラむン ゚クスポヌト スキヌマ」を参照しおください。

On this page:

Considerations

API 経由でデヌタを゚クスポヌトできるこずは、Jira のデヌタ パむプラむンの完党自動化のための最初のマむルストヌンです。このマむルストヌンでは、既存のデヌタ管理プラットフォヌム (Tableau や PowerBI など) ずワヌクフロヌをすでに持っおいるチヌムに、デヌタ抜出機胜を提䟛するこずに重点を眮いおいたす。

このマむルストヌンの特城は次のずおりです。 

  • デヌタの゚クスポヌトは Jira のパフォヌマンスに圱響するため、負荷の軜い時間䞭に実行するこずをおすすめしたす。
  • Jira Core、Jira Software、Jira Service Management からのデヌタが゚クスポヌトされたす。これには、すべおの䞻芁な課題ずそのフィヌルド、Jira Software 内の組み蟌みフィヌルド (スプリントやストヌリヌ ポむントなど)、Jira Service Management (カスタマヌ リク゚スト タむプや SLA など) が含たれたす。
  • 自分で䜜成したカスタム フィヌルドぱクスポヌトされたせん。

セキュリティ

゚クスポヌトにはすべおのデヌタが含たれおおり、フィルタヌや倉換に必芁な情報をできるだけ倚く埗るこずができたす。この豊富なデヌタにより、チヌムによる Jira の䜿甚状況から深い理解が柔軟に埗られたす。

同時にこの゚クスポヌトでは、セキュリティず機密性に基づいおデヌタをフィルタヌしたせん。぀たり、゚クスポヌトするたびに、セキュリティで保護された機密デヌタを自分で凊理する必芁がありたす。これに䌎い、課題のスキヌマには、これを実行するために䜿甚できる security_level フィヌルドが含たれおいたす。Jira の共有ホヌム フォルダに十分なアクセス制限が蚭定されおいるこずを確認しおください。

パフォヌマンスの圱響

デヌタの゚クスポヌトは、アプリケヌション ノヌド、デヌタベヌス、および Lucene むンデックスに圱響を䞎える、リ゜ヌスを倧量に消費するプロセスです。内郚テストでは、゚クスポヌトをアクティブに実行しおいるノヌドのすべおの補品機胜に぀いお、5% のパフォヌマンス䜎䞋が発生したした。次のこずを匷くおすすめしたす。

  • デヌタの゚クスポヌトは、アクティビティが少ない時間垯たたはアクティビティのないノヌドで実行したす。
  • fromDate パラメヌタヌを䜿甚しお゚クスポヌトするデヌタの量を制限したす。日付が叀過ぎるず、より倚くのデヌタが゚クスポヌトされるため、デヌタの゚クスポヌト時間が長くなりたす。

たた、テストの結果、課題数あたりの゚クスポヌトのおおよその期間は以䞋のようになりたした。

課題数 おおよその゚クスポヌト時間
Jira Software がむンストヌルされたしたJira Software+Jira Service Management がむンストヌルされたした
100 侇15 分30 分から 2 時間
700 侇2 時間3  6 時間
3000 侇9 時間12  24 時間

テスト パフォヌマンス察本番環境の比范

ここで玹介するパフォヌマンス デヌタは、圓瀟独自の内郚回垰テストに基づいおいたす。お客様の環境におけるデヌタ ゚クスポヌトの実際の時間ず圱響は、むンフラストラクチャ、むンストヌルされおいるアプリケヌション (Jira Software や Jira Service Management など)、構成、負荷によっお異なりたす。 

Jira パフォヌマンス テストを䜿甚しお、AWS 䞊の Jira Data Center 環境でデヌタ ゚クスポヌトのパフォヌマンスをテストしたした。この環境には 1 ぀の c5.9xlarge Jira ノヌドず 1 ぀の PostgreSQL デヌタベヌスがありたした。ナヌザヌの負荷をテストするために、2 ぀の仮想ナヌザヌ ノヌド党䜓で 24 人の仮想ナヌザヌを䜿甚したした。

芁件

この機胜は、Jira Data Center ラむセンスでのみ利甚できたす。

API を介しお Jira の珟圚の状態デヌタを゚クスポヌトするには、API を介しお Jira システム管理者ずしおログむンする必芁もありたす。サポヌトされる API 認蚌方法の詳现に぀いおは、「セキュリティの抂芁」を参照しおください。

デヌタ ゚クスポヌトの実行

Jira の珟圚の状態デヌタを゚クスポヌトするには、/jira/rest/datapipeline/latest/ ベヌス URL から /export REST API ゚ンドポむントを䜿甚したす。

https://<host>:<port>/jira/rest/datapipeline/latest/export?fromDate=<yyyy-MM-ddTHH:mmTZD>

fromDate パラメヌタヌは、゚クスポヌトするデヌタの量を制限したす。぀たり、fromDate 倀の埌に䜜成たたは曎新された課題に関するデヌタのみが゚クスポヌトされたす。fromDate パラメヌタヌなしで゚クスポヌトをトリガヌするず、盎近の 365 日内のすべおのデヌタが゚クスポヌトされたす。

/export REST API ゚ンドポむントには、次の 3 ぀のメ゜ッドがありたす。

POST: デヌタの゚クスポヌトを開始したす

POST メ゜ッドを䜿甚する堎合は、fromDate 倀を指定したす。このパラメヌタヌは、ISO 8601 圢匏 (yyyy-MM-ddTHH:mmTZD) で蚭定された日付倀のみを受け付けたす。以䞋に䟋を瀺したす。

  • 2021-12-30T23:01Z

  • 2021-12-30T22:01+01:00
    (リク゚ストでは 2020-12-30T22%3A03%2B01%3A00 などの URL ゚ンコヌディングを䜿甚する必芁がありたす)

POST リク゚ストには次の応答がありたす。

コヌ​​ド説明
202

デヌタ ゚クスポヌトが開始されたした。以䞋に䟋を瀺したす。

{
  "startTime": "2020-11-01T06-35-41-577+11",
  "nodeId": "mycluster2",
  "jobId": 124,
  "status": "STARTED"
}
409

別のデヌタ ゚クスポヌトがすでに実行されおいたす。

{
  "startTime": "2020-11-01T06-35-41-577+11",
  "nodeId": "mycluster2",
  "jobId": 124,
  "status": "STARTED"
}
422

むンデックスの敎合性がないため、デヌタの゚クスポヌトに倱敗したした:

{
  "startTime": "2021-01-06T00:38:37.961Z",
  "completedTime": "2021-01-06T00:38:38.49Z",
  "nodeId": "mycluster2",
  "jobId": 124,
  "details": "Processed 0 entity(ies) and wrote 0 row(s) in total; Inconsistent index used for export job.",
  "status": "FAILED"
}

この問題が発生した堎合は、Jira デプロむのむンデックスを再䜜成しおから、デヌタの゚クスポヌトを再詊行するこずをお勧めしたす。怜玢むンデックスの詳现を芋る

たたは、forceExport=trueク゚リ パラメヌタヌを䜿甚しおデヌタの゚クスポヌトを匷制できたす。ただし、敎合性のないむンデックスで゚クスポヌトを匷制するず、デヌタが䞍完党になる可胜性がありたす。


GET: デヌタ ゚クスポヌトの状態を確認したす

GET リク゚ストは 200 コヌドを返したすが、゚クスポヌトがどのステヌゞにあるかによっお応答が異なりたす。

ステヌタス応答の䟋
最初の゚クスポヌトを開始する前
{}
゚クスポヌト䞭 
{
  "startTime": "2020-11-01T06-35-41-577+11",
  "nodeId": "mycluster2",
  "jobId": 125,
  "status": "STARTED"
}
゚クスポヌトが成功した埌
{
  "startTime": "2020-11-01T06-35-41-577+11",
  "completedTime": "2020-11-01T06-36-19-961+11",
  "nodeId": "mycluster2",
  "jobId": 125,
  "details": "Processed 23 entity(ies) and wrote 54 row(s) in total",
  "status": "COMPLETED"
}
キャンセル リク゚ストのあず、ただし実際に゚クスポヌトがキャンセルされる前
{
  "startTime": "2020-11-02T04-20-34-007+11",
  "completedTime": "2020-11-02T04-22-10-961+11",
  "nodeId": "mycluster2",
  "jobId": 125,
  "status": "CANCELLATION_REQUESTED"
}
゚クスポヌトがキャンセルされた埌
{
  "startTime": "2020-11-02T04-20-34-007+11",
  "cancelledTime": "2020-11-02T04-24-21-717+11",
  "completedTime": "2020-11-02T04-24-21-717+11",
  "nodeId": "mycluster2",
  "jobId": 125,
  "details": "Processed 23 entity(ies) and wrote 12 row(s) in total",
  "status": "CANCELLED"
}
DELETE: デヌタ ゚クスポヌトをキャンセルしたす

DELETE リク゚ストには次の応答がありたす。

コヌ​​ド説明
200

キャンセルを受け付けたした。

{
  "status": "OK",
  "message": "Cancellation request successfully received. Currently running export job will be stopped shortly."
}
409

進行䞭の゚クスポヌトがないため、リク゚ストは砎棄されたした。

{
  "status": "WARNING",
  "message": "Cancellation request aborted. There is no export job running to cancel."
}

デフォルト以倖の゚ンドポむント

ベヌス URL はデフォルトで /jira/rest/datapipeline/latest/ であり、Jira に別のコンテキスト パスを蚭定するず倉曎されたす。コンテキスト パスに぀いおは詳现をご芧ください

自動デヌタ ゚クスポヌト キャンセル

デヌタ ゚クスポヌトを実行するノヌドが正垞にシャットダりンされるず、Jira は自動的に゚クスポヌトを CANCELLED ずしおマヌクしたす。

クラッシュたたはハヌドりェア レベルの障害が発生し、JVM に通知されなかった堎合、゚クスポヌト プロセスがロックされるこずがありたす。この堎合、DELETE リク゚ストを通じお゚クスポヌトを CANCELLED ずしおマヌクする必芁がありたす。これにより、プロセスがロックから解攟され、別のデヌタ ゚クスポヌトを実行できたす。

デヌタ ゚クスポヌトを蚭定する

次のシステム プロパティを䜿甚しお、゚クスポヌト デヌタの圢匏を蚭定できたす。

既定倀説明
plugin.data.pipeline.embedded.line.break.preserve
False

埋め蟌たれた改行を出力ファむルに保持するかどうかを指定したす。Hadoop などのツヌルでは、改行が課題になる堎合がありたす。

このプロパティはデフォルトで False に蚭定されおいたす。぀たり、改行ぱスケヌプされたす。

plugin.data.pipeline.embedded.line.break.escape.char
\\n埋め蟌たれた改行の文字を゚スケヌプしたす。デフォルトでは、Jira は \n を埋め蟌たれた改行ごずに印刷したす。


出力ファむル 

デヌタ ゚クスポヌトを実行するたびに、Jira は数倀ゞョブ ID をタスクに割り圓おたす (最初のデヌタ ゚クスポヌトに察しお 1 から開始)。このゞョブ ID は、゚クスポヌトされたデヌタを含むファむルのファむル名およびロケヌションで䜿甚されたす。 

゚クスポヌトされたデヌタは、/<jira-shared-home>/data-pipeline/export/<job_id>/: にある 3 ぀の CSV ファむルに保存されたす。

  • issues_job<job_id>_<timestamp>.csv (for issues)

    サンプル コンテンツを衚瀺する
    id,instance_url,key,url,project_key,project_name,project_type,project_category,issue_type,summary,description,environment,creator_id,creator_name,reporter_id,reporter_name,assignee_id,assignee_name,status,status_category,priority_sequence,priority_name,resolution,watcher_count,vote_count,created_date,resolution_date,updated_date,due_date,estimate,original_estimate,time_spent,parent_id,security_level,labels,components,affected_versions,fix_versions
    10022,http://localhost:8090/jira,TP-23,http://localhost:8090/jira/browse/TP-23,TP,Test Project,Software,,Story,"As a user, I'd like a historical story to show in reports",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,Done,Done,3,Medium,Done,0,0,2020-10-10T08:44:19Z,2020-10-22T17:19:19Z,2020-10-22T17:19:19Z,,,,,,,,,,"[""Version 1.0""]"
    10021,http://localhost:8090/jira,TP-22,http://localhost:8090/jira/browse/TP-22,TP,Test Project,Software,,Story,"As a user, I'd like a historical story to show in reports",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,Done,Done,3,Medium,Done,0,0,2020-10-10T08:44:19Z,2020-10-20T15:41:19Z,2020-10-20T15:41:19Z,,,,,,,,,,"[""Version 1.0""]"
    10020,http://localhost:8090/jira,TP-21,http://localhost:8090/jira/browse/TP-21,TP,Test Project,Software,,Story,"As a user, I'd like a historical story to show in reports",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,Done,Done,3,Medium,Done,0,0,2020-10-10T08:44:19Z,2020-10-18T00:21:19Z,2020-10-18T00:21:19Z,,,,,,,,,,"[""Version 1.0""]"
    10019,http://localhost:8090/jira,TP-20,http://localhost:8090/jira/browse/TP-20,TP,Test Project,Software,,Story,"As a user, I'd like a historical story to show in reports",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,Done,Done,3,Medium,Done,0,0,2020-10-10T08:44:19Z,2020-10-15T17:43:19Z,2020-10-15T17:43:19Z,,,,,,,,,,"[""Version 1.0""]"
    10018,http://localhost:8090/jira,TP-19,http://localhost:8090/jira/browse/TP-19,TP,Test Project,Software,,Story,"As a user, I'd like a historical story to show in reports",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,Done,Done,3,Medium,Done,0,0,2020-10-10T08:44:19Z,2020-10-14T05:08:19Z,2020-10-14T05:08:19Z,,,,,,,,,,"[""Version 2.0""]"
    10017,http://localhost:8090/jira,TP-18,http://localhost:8090/jira/browse/TP-18,TP,Test Project,Software,,Story,"As a user, I'd like a historical story to show in reports",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,Done,Done,3,Medium,Done,0,0,2020-10-10T08:44:19Z,2020-10-11T05:14:19Z,2020-10-11T05:14:19Z,,,,,,,,,,"[""Version 2.0""]"
    10016,http://localhost:8090/jira,TP-17,http://localhost:8090/jira/browse/TP-17,TP,Test Project,Software,,Bug,"Instructions for deleting this sample board and project are in the description for this issue >> Click the ""TP-17"" link and read the description tab of the detail view for more","*To delete this Sample Project _(must be performed by a user with Administration rights)_* \n- Open the administration interface to the projects page by using the keyboard shortcut 'g' then 'g' and typing 'Projects' in to the search dialog\n- Select the ""Delete"" link for the ""Test Project"" project\n\n*To delete the Sample Project workflow and workflow scheme _(must be performed by a user with Administration rights)_* \n- Open the administration interface to the workflow schemes page by using the keyboard shortcut 'g' then 'g' and typing 'Workflow Schemes' in to the search dialog\n- Select the ""Delete"" link for the ""TP: Software Simplified Workflow Scheme"" workflow scheme\n- Go to the workflows page by using the keyboard shortcut 'g' then 'g' and typing 'Workflows' in to the search dialog(_OnDemand users should select the second match for Workflows_)\n- Expand the ""Inactive"" section\n- Select the ""Delete"" link for the ""Software Simplified Workflow  for Project TP"" workflow\n\n*To delete this Board _(must be performed by the owner of this Board or an Administrator)_*\n- Click the ""Tools"" cog at the top right of this board\n- Select ""Delete""",,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,Done,Done,3,Medium,Done,0,0,2020-10-24T09:54:19Z,2020-10-28T02:30:19Z,2020-10-28T02:30:19Z,,,,,,,,,,
    10015,http://localhost:8090/jira,TP-16,http://localhost:8090/jira/browse/TP-16,TP,Test Project,Software,,Story,"As a team, we can finish the sprint by clicking the cog icon next to the sprint name above the ""To Do"" column then selecting ""Complete Sprint"" >> Try closing this sprint now",,,10000,Marek Szczepański,10000,Marek Szczepański,,,Done,Done,3,Medium,Done,0,0,2020-10-03T13:50:19Z,2020-10-25T16:26:19Z,2020-10-25T16:26:19Z,,,,,,,,,,
    10014,http://localhost:8090/jira,TP-15,http://localhost:8090/jira/browse/TP-15,TP,Test Project,Software,,Story,"As a scrum master, I can see the progress of a sprint via the Burndown Chart >> Click ""Reports"" to view the Burndown Chart",,,10000,Marek Szczepański,10000,Marek Szczepański,,,Done,Done,3,Medium,Done,0,0,2020-10-24T09:54:19Z,2020-10-29T00:30:19Z,2020-10-29T00:30:19Z,,,,,,,,,,
    10013,http://localhost:8090/jira,TP-14,http://localhost:8090/jira/browse/TP-14,TP,Test Project,Software,,Story,"As a user, I can find important items on the board by using the customisable ""Quick Filters"" above >> Try clicking the ""Only My Issues"" Quick Filter above",*Creating Quick Filters*\n\nYou can add your own Quick Filters in the board configuration (select *Board > Configure*),,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,To Do,To Do,3,Medium,,0,0,2020-10-30T14:54:19Z,,2020-10-30T14:54:19Z,,,,,,,,,,
    10012,http://localhost:8090/jira,TP-13,http://localhost:8090/jira/browse/TP-13,TP,Test Project,Software,,Bug,"As a developer, I can update details on an item using the Detail View >> Click the ""TP-13"" link at the top of this card to open the detail view","*Editing using the Detail View*\n\nMany of the fields in the detail view can be inline edited by simply clicking on them. \n\nFor other fields you can open Quick Edit, select ""Edit"" from the cog drop-down.",,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,To Do,To Do,3,Medium,,0,0,2020-10-24T09:54:19Z,,2020-10-24T09:54:19Z,,,,,,,,,,"[""Version 2.0""]"
    10011,http://localhost:8090/jira,TP-12,http://localhost:8090/jira/browse/TP-12,TP,Test Project,Software,,Sub-task,"When the last task is done, the story can be automatically closed >> Drag this task to ""Done"" too",,,10000,Marek Szczepański,10000,Marek Szczepański,,,In Progress,In Progress,3,Medium,,0,0,2020-10-28T19:21:19Z,,2020-10-28T19:21:19Z,,,,,10009,,,,,"[""Version 2.0""]"
    10010,http://localhost:8090/jira,TP-11,http://localhost:8090/jira/browse/TP-11,TP,Test Project,Software,,Sub-task,"Update task status by dragging and dropping from column to column >> Try dragging this task to ""Done""",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,In Progress,In Progress,3,Medium,,0,0,2020-10-27T21:56:19Z,,2020-10-27T21:56:19Z,,,,,10009,,,,,"[""Version 2.0""]"
    10009,http://localhost:8090/jira,TP-10,http://localhost:8090/jira/browse/TP-10,TP,Test Project,Software,,Story,"As a developer, I can update story and task status with drag and drop (click the triangle at far left of this story to show sub-tasks)",,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,In Progress,In Progress,3,Medium,,0,0,2020-10-24T09:54:19Z,,2020-10-24T09:54:19Z,,,,,,,,,,"[""Version 2.0""]"
    10008,http://localhost:8090/jira,TP-9,http://localhost:8090/jira/browse/TP-9,TP,Test Project,Software,,Story,"As a developer, I'd like to update story status during the sprint >> Click the Active sprints link at the top right of the screen to go to the Active sprints where the current Sprint's items can be updated",,,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:23Z,,2020-10-31T19:04:23Z,,,,,,,,,,
    10007,http://localhost:8090/jira,TP-8,http://localhost:8090/jira/browse/TP-8,TP,Test Project,Software,,Bug,"As a product owner, I'd like to include bugs, tasks and other issue types in my backlog >> Bugs like this one will also appear in your backlog but they are not normally estimated","*Estimation of Bugs*\n\nScrum teams do not normally apply story point estimates to bugs because bugs are considered to be part of the ongoing work that the team must deal with (i.e the overhead). If you view the story points completed in a sprint as a measure of progress, then bugs also have no value because they do not deliver anything additional to the customer. \n\nHowever, you can apply estimates to bugs if you wish by configuring the ""Story Points"" field to apply to other Issue Types (by default it only applies to Stories and Epics). Some more information on this is in the [documentation|https://confluence.atlassian.com/display/GH/Story+Point].",,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:23Z,,2020-10-31T19:04:23Z,,,,,,,,,,"[""Version 2.0""]"
    10006,http://localhost:8090/jira,TP-7,http://localhost:8090/jira/browse/TP-7,TP,Test Project,Software,,Sub-task,This is a sample task. Tasks are used to break down the steps to implement a user story,,,10000,Marek Szczepański,10000,Marek Szczepański,10000,Marek Szczepański,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:23Z,,2020-10-31T19:04:23Z,,,,,10005,,,,,
    10005,http://localhost:8090/jira,TP-6,http://localhost:8090/jira/browse/TP-6,TP,Test Project,Software,,Story,"As a scrum master, I'd like to break stories down into tasks we can track during the sprint >> Try creating a task by clicking the Sub-Tasks tab in the Detail View on the right",*Task Breakdown*\n\nMany teams choose to break down user stories into a set of tasks needed to implement the story. They then update the status of these tasks during a sprint to track progress. The completion of the last task signals the end of the story. \n\nYou can add sub-tasks to a story on the sub-task tab (folder icon) above.,,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:22Z,,2020-10-31T19:04:22Z,,,,,,,,,,
    10004,http://localhost:8090/jira,TP-5,http://localhost:8090/jira/browse/TP-5,TP,Test Project,Software,,Story,"As a team, I'd like to commit to a set of stories to be completed in a sprint (or iteration) >> Click ""Create Sprint"" then drag the footer down to select issues for a sprint (you can't start a sprint at the moment because one is already active)","*Starting a Sprint*\n\nDuring the Planning Meeting the team will examine the stories at the top of the backlog and determine which they can commit to completing during the coming sprint. Based on this information the Product Owner might break down stories into smaller stories, adjust story priorities or otherwise work with the team to define the ideal sprint outcome. When the sprint is started the stories are moved into the sprint backlog.",,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:21Z,,2020-10-31T19:04:21Z,,,,,,,,,,
    10003,http://localhost:8090/jira,TP-4,http://localhost:8090/jira/browse/TP-4,TP,Test Project,Software,,Story,"As a team, I'd like to estimate the effort of a story in Story Points so we can understand the work remaining >> Try setting the Story Points for this story in the ""Estimate"" field","This story is estimated at 5 Story Points (as shown in the ""Estimate"" field at the top right of the Detail View). \n\nTry updating the Story Point estimate to 4 by clicking on the ""Estimate"" then typing.\n\n*Estimating using Story Points*\n\nBecause the traditional process of estimating tasks in weeks or days is often wildly inaccurate, many Scrum teams estimate in Story Points instead. Story Points exist merely as a way to estimate a task's difficulty compared to some other task (for example, a 10-point story would probably take double the effort of a 5-point story). As teams mature with Scrum they tend to achieve a consistent number of Story Points from Sprint to Sprint -- this is termed the team's _velocity_. This allows the Product Owner to use the velocity to predict how many Sprints it will take to deliver parts of the backlog. \n\nMany teams use Planning Poker to achieve consensus on Story Point estimates.\n\n*Using Other Estimation Units*\n\nYou can configure JIRA Software to use time-based estimates if you wish. In the configuration for the board, on the ""Estimation"" tab, select ""Original Time Estimate"" as your Estimation Statistic. If you also wish to track the time used during the Sprint, select ""Remaining Estimate and Time Spent"" to enable Time Tracking in JIRA Software.",,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:21Z,,2020-10-31T19:04:21Z,,,,,,,,,,"[""Version 3.0""]"
    10002,http://localhost:8090/jira,TP-3,http://localhost:8090/jira/browse/TP-3,TP,Test Project,Software,,Story,"As a product owner, I'd like to rank stories in the backlog so I can communicate the proposed implementation order >> Try dragging this story up above the previous story",*About the Product Backlog*\n\nThe backlog is the source of truth for the order of work to be completed. It is expected that the Product Owner will work with the team to make sure that the backlog represents the current approach to delivering the product. JIRA Software makes it easy to prioritise (rank) Stories by dragging them up and down the backlog.,,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:21Z,,2020-10-31T19:04:21Z,,,,,,,,,,"[""Version 3.0""]"
    10001,http://localhost:8090/jira,TP-2,http://localhost:8090/jira/browse/TP-2,TP,Test Project,Software,,Story,"As a product owner, I'd like to express work in terms of actual user problems, aka User Stories, and place them in the backlog >> Try creating a new story with the ""+ Create Issue"" button (top right of screen)","When you click ""+ Create Issue"" you will be asked for the correct project (select ""Test Project"") and Issue Type (select ""Story"").\n\n*About User Stories*\n\nThe Scrum methodology drops traditional software requirement statements in favour of real world problems expressed as User Stories. Stories describe the task a particular user is trying to achieve and its value. They are typically of the form ""As a (role) I want (something) so that (benefit)"". This approach focuses the team on the core user need rather than on implementation details. \n\nStories are ""placeholders for a conversation"" -- they do not need to be especially detailed since it is expected that the team will work together to resolve ambiguity as the story is developed. \n\nStories to be implemented in the future are stored in the Product Backlog. The backlog is ranked by the Product Owner so that the next items to be completed are at the top.",,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:21Z,,2020-10-31T19:04:21Z,,,,,,,,,,"[""Version 2.0""]"
    10000,http://localhost:8090/jira,TP-1,http://localhost:8090/jira/browse/TP-1,TP,Test Project,Software,,Story,"As an Agile team, I'd like to learn about Scrum >> Click the ""TP-1"" link at the left of this row to see detail in the Description tab on the right","*About Scrum*\n\nScrum is an iterative approach to Agile software development. The methodology has been around since the 1980s but was popularised by Jeff Sutherland and Ken Schwaber. \n\nScrum breaks the development of a product down in to discrete iterations (termed Sprints) that each deliver functionality that could potentially be shipped to users.\n\nThe Scrum Alliance offers an excellent [introduction to Scrum|http://www.scrumalliance.org/resources/47] that provides an overview of key Scrum concepts, stakeholders, processes and artefacts.",,10000,Marek Szczepański,10000,Marek Szczepański,,,To Do,To Do,3,Medium,,0,0,2020-10-31T19:04:19Z,,2020-10-31T19:04:19Z,,,,,,,,,,"[""Version 2.0""]"
  • issue_fields_job<job_id>_<timestamp>.csv (Jira Software フィヌルドず Jira Service Management フィヌルドの堎合)

    サンプル コンテンツを衚瀺する
    issue_id,field_id,field_name,field_value
    10022,story_points,Story Points,2.0
    10022,sprint,Sprint,"[{""id"":2,""name"":""Sample Sprint 1"",""goal"":null,""boardId"":1,""state"":""CLOSED"",""startDate"":""2020-10-10T08:44:26Z"",""endDate"":""2020-10-24T08:44:26Z"",""completeDate"":""2020-10-24T07:24:26Z""}]"
    10021,story_points,Story Points,2.0
    10021,sprint,Sprint,"[{""id"":2,""name"":""Sample Sprint 1"",""goal"":null,""boardId"":1,""state"":""CLOSED"",""startDate"":""2020-10-10T08:44:26Z"",""endDate"":""2020-10-24T08:44:26Z"",""completeDate"":""2020-10-24T07:24:26Z""}]"
    10020,story_points,Story Points,1.0
    10020,sprint,Sprint,"[{""id"":2,""name"":""Sample Sprint 1"",""goal"":null,""boardId"":1,""state"":""CLOSED"",""startDate"":""2020-10-10T08:44:26Z"",""endDate"":""2020-10-24T08:44:26Z"",""completeDate"":""2020-10-24T07:24:26Z""}]"
    10019,story_points,Story Points,3.0
    10019,sprint,Sprint,"[{""id"":2,""name"":""Sample Sprint 1"",""goal"":null,""boardId"":1,""state"":""CLOSED"",""startDate"":""2020-10-10T08:44:26Z"",""endDate"":""2020-10-24T08:44:26Z"",""completeDate"":""2020-10-24T07:24:26Z""}]"
    10018,story_points,Story Points,5.0
    10018,sprint,Sprint,"[{""id"":2,""name"":""Sample Sprint 1"",""goal"":null,""boardId"":1,""state"":""CLOSED"",""startDate"":""2020-10-10T08:44:26Z"",""endDate"":""2020-10-24T08:44:26Z"",""completeDate"":""2020-10-24T07:24:26Z""}]"
    10017,story_points,Story Points,3.0
    10017,sprint,Sprint,"[{""id"":2,""name"":""Sample Sprint 1"",""goal"":null,""boardId"":1,""state"":""CLOSED"",""startDate"":""2020-10-10T08:44:26Z"",""endDate"":""2020-10-24T08:44:26Z"",""completeDate"":""2020-10-24T07:24:26Z""}]"
    10016,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null}]"
    10015,story_points,Story Points,2.0
    10015,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null},{""id"":2,""name"":""Sample Sprint 1"",""goal"":null,""boardId"":1,""state"":""CLOSED"",""startDate"":""2020-10-10T08:44:26Z"",""endDate"":""2020-10-24T08:44:26Z"",""completeDate"":""2020-10-24T07:24:26Z""}]"
    10014,story_points,Story Points,4.0
    10014,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null}]"
    10013,story_points,Story Points,3.0
    10013,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null}]"
    10012,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null}]"
    10011,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null}]"
    10010,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null}]"
    10009,story_points,Story Points,5.0
    10009,sprint,Sprint,"[{""id"":1,""name"":""Sample Sprint 2"",""goal"":null,""boardId"":1,""state"":""ACTIVE"",""startDate"":""2020-10-24T09:54:23Z"",""endDate"":""2020-11-07T10:14:23Z"",""completeDate"":null}]"
    10008,story_points,Story Points,3.0
    10005,story_points,Story Points,1.0
    10004,story_points,Story Points,1.0
    10003,story_points,Story Points,5.0
    10002,story_points,Story Points,5.0
    10001,story_points,Story Points,2.0
    10000,story_points,Story Points,2.0
  • sla_cycles_job<job_id>_<timestamp>.csv (Jira Service Management がむンストヌルされおいる堎合の SLA サむクル情報の堎合)

    サンプル コンテンツを衚瀺する
    issue_id, sla_id, sla_name, cycle_type, start_time, stop_time, paused, goal_duration, elapsed_time, remaining_time
    
    10000, 1, Time to first response, Ongoing, 2020-01-10T12:50:30Z, 2020-01-10T12:50:30Z, true, 14400000, 14400000, 14400000
    10000, 1, Time to first response, Completed, 2020-01-10T12:50:30Z, 2020-01-10T12:50:30Z,, 14400000, 14400000, 14400000
    10000, 1, Time to first response, Completed, 2020-01-10T12:50:30Z, 2020-01-10T12:50:30Z,, 14400000, 14400000, 14400000
    10000, 1, Time to first response, Completed, 2020-01-10T12:50:30Z, 2020-01-10T12:50:30Z,, 14400000, 14400000, 14400000
    10000, 2, Time to approve normal change, Completed, 2020-01-10T12:50:30Z, 2020-01-10T12:50:30Z,, 14400000, 14400000, 14400000
    10000, 2, Time to approve normal change, Completed, 2020-01-10T12:50:30Z, 2020-01-10T12:50:30Z,, 14400000, 14400000, 14400000

この゚クスポヌトでデヌタをロヌドおよび倉換するには、そのスキヌマを理解する必芁がありたす。スキヌマの詳现に぀いおは、「デヌタ パむプラむン ゚クスポヌト スキヌマ」を参照しおください。

Spark ず Hadoop のむンポヌト蚭定の䟋

既存の Spark むンスタンスたたは Hadoop むンスタンスがある堎合、次の参照を䜿甚し、さらに倉換するためにデヌタをむンポヌトする方法を蚭定したす。

Spark/Databricks
Notebook の蚭定䟋
%python
# File location. Change to s3 once we have our own zone
file_location = "/FileStore/**/export_2020_09_24T03_32_18Z.csv" 

# Automatically set data type for columns
infer_schema = "true"
# Skip first row as it's a header
first_row_is_header = "true"
# Ignore multiline within double quotes
multiline_support = "true"

# The applied options are for CSV files. For other file types, these will be ignored. Note escape & quote options for RFC-4801 compliant files
df = spark.read.format("csv") \
  .option("inferSchema", infer_schema) \
  .option("header", first_row_is_header) \
  .option("multiLine", multiline_support) \
  .option("quote", "\"") \
  .option("escape", "\"") \
  .option("encoding", "UTF-8").load(file_location)

display(df)
Hadoop
テヌブル スクリプトを䜜成する
CREATE EXTERNAL TABLE IF NOT EXISTS some_db.datapipeline_export (
  `id` string,
  `instance_url` string,
  `key` string,
  `url` string,
  `project_key` string,
  `project_name` string,
  `project_type` string,
  `project_category` string,
  `issue_type` string,
  `summary` string,
  `description` string,
  `environment` string,
  `creator_id` string,
  `creator_name` string,
  `reporter_id` string,
  `reporter_name` string,
  `assignee_id` string,
  `assignee_name` string,
  `status` string,
  `status_category` string,
  `priority_sequence` string,
  `priority_name` string,
  `resolution` string,
  `watcher_count` string,
  `vote_count` string,
  `created_date` string,
  `resolution_date` string,
  `updated_date` string,
  `due_date` string,
  `estimate` string,
  `original_estimate` string,
  `time_spent` string,
  `parent_id` string,
  `security_level` string,
  `labels` string,
  `components` string,
  `affected_versions` string,
  `fix_versions` string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
  "escapeChar" = "\\",
  'quoteChar' = '"',
  'separatorChar' = ','
) LOCATION 's3://bulldog-data-pipeline/test-exports/'
TBLPROPERTIES ('has_encrypted_data'='false');


Last modified on Mar 11, 2021

この内容はお圹に立ちたしたか?

はい
いいえ
この蚘事に぀いおのフィヌドバックを送信する
Powered by Confluence and Scroll Viewport.