移行前のサーバー インスタンスのクリーンアップ

移行は、データをクリーン アップし、クラウド内のよりクリーンな状態に移行する絶好の機会です。移行を決定した時点で、移行するデータ量に対するデータの価値の比較評価に重点を置く必要があります。移行するデータが多くなるほど、移行にかかる時間が長くなり、移行がより複雑になる可能性が高くなります。

このため、テスト移行を実行する前にサーバー インスタンスをクリーン アップする時間を取ることをおすすめしています。これによって、移行がスムーズになり、パフォーマンスの問題が軽減され、クラウド製品での生産性が向上する場合もあります。 

サーバー インスタンスの徹底的な診断と作業方法には、クラウドへの移行方法に関する意思決定のためのスクリプトの実行および他の関係者との交渉が含まれます。データの複雑さに応じて、移行する対象と移行の意思決定の時間枠が変わります。

tip/resting Created with Sketch クリーン アップを行うのに最適なタイミングは移行の前です。移行中には行わないでください。

このページの内容

Jira インスタンスをクリーン アップする

Jira データをレビューする

  • 未使用のアプリまたはトライアル データを確認および削除します。

  • 移行するプロジェクトのリストを作成し、必要ないプロジェクトがある場合は、移行前に削除してください。一般的に、未使用のプロジェクトおよび課題は、パフォーマンスだけではなく管理時間にも影響するため、特にクリーン アップすることをおすすめします。

  • データの量、データのサイズまたは複雑さを軽減できるかどうかを確認します。[システム情報] ページを使用して、このデータにアクセスできます。データには、次の項目が含まれる可能性があります。

    • プロジェクトの

    • カスタム フィールドの数

    • ワークフローの数

    • 画面の数、課題タイプ、権限スキーム

    • ユーザーの数

    • 非アクティブなユーザーの数

  • 重複しているメール アドレスを修正します。必須詳細についてはこちらをご覧ください

  • グループ名の競合を確認します。必須詳細についてはこちらをご覧ください

  • Optimizer for Jira などの、現在の使用状況を把握してシステムをクリーン アップするのに役立つサードパーティ アプリもあります。

  • サーバー データの移行を成功させるため、Atlassian Marketplace から Database Integrity Checker (Jira Server のネイティブ) と Integrity Check for Jira アプリを使用して、データのステータスを確認します。

  • Atlassian のコミュニティ リーダーの 1 人が、Jira クリーン アップのヒントを投稿しています。こちらをご参照ください。

  • すべてのデータを削除して設定と空のプロジェクト コンテナのみを移行することを選択するお客様もいます。これは、クラウド製品の使用を新しく開始するが、サーバー版と同じ設定を使用したい場合に最適なオプションです。

Jira データのカスタマイズを最小限に抑える

  • カスタム ワークフローを標準化して、移行前にデータの複雑さを軽減します。

  • グループおよび権限スキームを確認し、使用されているもの、使用されていないもの、標準化または単純化できる機会があるかどうかを確認します。 

  • カスタム フィールド、スキーム、課題タイプ、ステータス、解決状況、ボード、フィルター、および画面を最適化します。 

    ここにいくつかの Jira クリーン アップ クエリがあります
    これらはサンプル クエリであり、独自の環境で追加の調整やテストが必要になる場合があります。詳細については、組織の DBA にお問い合わせください。これらのクエリの中には、何百万もの行がある大規模なインスタンスで実行するのに長い時間がかかる場合があります。これらは慎重に行ってください。できれば、まずテスト環境で実行してください。
    使用されていないカスタム フィールド
    select customfield.id
    from customfield left join customfieldvalue on customfield.id = customfieldvalue.customfield
    where customfieldvalue.stringvalue is null and customfieldvalue.numbervalue is null and 
    customfieldvalue.textvalue is null order by customfield.id
    ほとんど使用されていないカスタム フィールド
    select customfield.id, count (*)
    from customfield left join customfieldvalue on customfield.id = customfieldvalue.customfield
    group by customfield.id having count (*) < 5
    order by count (*) desc
    日付 (YYYY-MM-DD) より後に更新されていないカスタム フィールドを一覧表示します
    select field.id, field.cfname from customfield field where field.cfname not in (
    select item.field from changeitem item 
    JOIN changegroup cgroup ON item.groupid=cgroup.id 
    where item.fieldtype='custom' and cgroup.created > 'YYYY-MM-DD'
    ) and customfieldtypekey not like '%com.pyxis.greenhopper%' 
    and customfieldtypekey not like '%com.atlassian.servicedesk%'
    and customfieldtypekey not like '%com.atlassian.bonfire%'
    カスタム フィールドに関するユーザー アクティビティ

    完全なカスタム フィールド ID を使用します。例: customfield_10301

    select id, entitytype, entityid, username, to_timestamp(lastviewed/1000) 
    as lastviewed, data from userhistoryitem where entityid='customfield_10001' order by lastviewed desc;
    すべての選択リスト カスタム フィールドを一覧表示します
    select * from customfield 
    where customfieldtypekey = 'com.atlassian.jira.plugin.system.customfieldtypes:select';
    オプションと一緒にすべてのカスタム フィールドを一覧表示します
    select cf.id, cf.customfieldtypekey, cf.cfname, cfo.sequence, cfo.customvalue from customfield cf
    join customfieldoption cfo on cfo.customfield = cf.id
    where customfieldtypekey = 'com.atlassian.jira.plugin.system.customfieldtypes:select'
    order by cfo.id, cfo.sequence;
    "カスタム フィールド名" またはカスタム フィールド ID "10001" を含むフィルタ
    select * from searchrequest where reqcontent like '%Field Name%' or reqcontent like '%10001%';
    カスタム フィールドを参照するワークフロー
    select * from jiraworkflows wf where wf.descriptor like '%customfield_10281%';
    グローバル コンテキストを持つカスタム フィールド ⭐
    SELECT distinct(p.pkey),
    cfname,
    cf.id,
    p.pname                          
    FROM CUSTOMFIELDVALUE cfv
    left join JIRAISSUE ji
    on cfv.ISSUE = ji.id            
    right join CUSTOMFIELD cf
    on cf.id = cfv.customfield
    left join project p
    on p.id = ji.project
    WHERE cf.id in (''' + globalContextIdsCommaSeparated+ ''')
    GROUP BY cf.id,cf.cfname,p.pkey, p.pname
    ORDER BY cf.cfname,p.pname
    スクリーン/ワークフロー/通知スキームを持たない、コンテキストを持つ計算対象外のフィールド (値なし)
    SELECT
    cf.id id,           
    to_char(min(ji.created), 'YYYY/MM/DD'),
    to_char(max(ji.updated), 'YYYY/MM/DD'),
    count(distinct(ji.id))
    FROM CUSTOMFIELDVALUE cfv
    left join JIRAISSUE ji
    on cfv.ISSUE = ji.id            
    left join CUSTOMFIELD cf
    on cf.id = cfv.customfield            
    GROUP BY cf.id
    ORDER BY cf.id
    スクリーン/ワークフロー/通知スキームを持たず、コンテキストを持つ計算対象外のフィールドで、画面に関連づけられているもの
    SELECT
    cf.id id,           
    to_char(min(ji.created), 'YYYY/MM/DD'),
    to_char(max(ji.updated), 'YYYY/MM/DD'),
    count(distinct(ji.id))
    FROM CUSTOMFIELDVALUE cfv
    left join JIRAISSUE ji
    on cfv.ISSUE = ji.id            
    left join CUSTOMFIELD cf
    on cf.id = cfv.customfield            
    GROUP BY cf.id
    ORDER BY cf.id
    カスタム フィールドの誤使用の監査

    これは、カスタム フィールドの使用方法の抽出を支援するための潜在的なクエリです。これにより、代替目的で使用されている、または単に誤用されているフィールドを特定できます。


    select 
      customfield.id, 
      customfield.cfname, 
      customfield.description, 
      customfieldvalue.stringvalue,
      customfieldvalue.numbervalue,
      customfieldvalue.textvalue,
      customfieldvalue.datevalue
    from customfield 
    left join 
      customfieldvalue on customfield.id = customfieldvalue.customfield
    where 
      customfieldvalue.stringvalue is not null or
      customfieldvalue.numbervalue is not null or
      customfieldvalue.textvalue is not null or
      customfieldvalue.datevalue is not null
    group by customfield.id, customfield.cfname, customfield.description;

    警告:

    • カスタム フィールドを削除すると、関連するデータも削除される場合があります。

    • 後でこれらのエンティティを共有する追加のプロジェクトを移行する場合は、サーバー インスタンスから課題タイプ、ワークフロー、カスタム フィールド、スキームなどの共有構成エンティティを更新または削除するときに注意してください

Jira Cloud Migration Assistant を使用する

もう 1 つの方法は、不要なデータをクラウドに残すことです。Jira Cloud Migration Assistant を使用して、次の移行前の技術を実行できます。

  • プロジェクト選択ページで「最終更新日」でプロジェクトをソートします。これにより、他のプロジェクトよりも先に移行するプロジェクトに集中しやすくなります。

  • アーカイブされたプロジェクトを移行前または移行後に移行することで、現在のユーザーにとって重要なアクティブ プロジェクトのリスクと移行ダウンタイムが増えません。

  • Jira Cloud Migration Assistant は Jira Server インスタンスのすべての構成をクラウドに移行するわけではありません。選択したプロジェクトに必要な情報を分析し、これらのプロジェクトがクラウドで引き続き機能するために必要なデータのみを移行します。つまり、選択したプロジェクトで使用されていないワークフロー スキーム、権限スキーム、カスタム フィールドなどの、マッピングされていない設定や未使用の設定はクラウドに移行されません。

  • 移行前のレポートを生成して、データを確認します。 

移行の前に、Jira 移行前のチェックリストで必ずすべてを確認してください。

Confluence インスタンスをクリーン アップする

Confluence データをレビューする

  • 未使用のアプリまたはトライアル データを確認および削除します。

  • しばらく使用されていないすべてのデータを削除するか移行しないことをご検討ください。これには、特定のページ、スペース全体、添付ファイル、マクロ、またはアプリが含まれます。Confluence から使用状況の統計を収集する方法の詳細をご確認ください。 

  • Confluence Data Center または大規模なサーバー インスタンスから移行する場合、多数のコメントや添付ファイルを持つ大きなスペースのいくつかで移行をテストすることをおすすめします。  

Confluence データのカスタマイズを最小限に抑える

  • 時間枠の間にユーザーが作成したページの数を検索します。 

    クエリの例
    ユーザーごとにコンテンツ作成の統計結果を返すクエリ:
    select content.creator, cwd_user.display_name, count(content.contentid) as total_content_created 
    from content 
    inner join user_mapping on content.creator = user_mapping.user_key 
    inner join cwd_user on user_mapping.username = cwd_user.user_name 
    inner join spaces on content.spaceid = spaces.spaceid 
    where contenttype = 'PAGE' and content.creator is not null and content_status = 'current' 
    and prevver is null and content.creationdate between '2018-07-01' and '2019-01-01' group by content.creator, cwd_user.display_nameorder by total_content_created DESC
  • 特定の時刻における各スペースの最終更新日を検索し、未使用のスペースを探す

    クエリの例
    特定の時刻における各スペースの最終更新日を一覧表示します
    SELECT spaces.spacename, spaces.spacekey
    FROM content, spaces
    WHERE content.spaceid = spaces.spaceid
    GROUP BY spaces.spacename, spaces.spacekey
    HAVING MAX(content.lastmoddate) < '2006-10-10';

    詳細 

移行の前に、Confluence 移行前のチェックリストで必ずすべてを確認してください。

詳細情報とサポート

移行をサポートする多数のチャネルをご用意しています。

最終更新日 2020 年 11 月 4 日

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

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.