Notionへのデータ移行体験談とTIPS

4.9K Views

November 08, 23

スライド概要

2023/11/08 Notion Meetupにて発表したスライド
Confluence/JiraからNotionへの移行作業についての話

profile-image

blog: https://14code.com slideshare: https://www.slideshare.net/TakayukiIshikawa

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Notionへの データ移行体験談とTIPS Notion Meetup 2023/11/08 ニフティ株式会社 石川 貴之

2.

自己紹介 ニフティ株式会社 会員システムグループ N1! テックリード 石川 貴之 (Ishikawa Takayuki) 担当業務 ● ● ● AWS/GCP組織管理 技術寄りSaaS管理(Atlassian, Notion, GitHubなど) 自社WEBサービスのクラウドアーキテクト、バックエンド 2

3.

本日お話しする項目 データへのアプローチ 人へのアプローチ 会社へのアプローチ ● 移行先調査・選定 ● 移行・導入説明 ● 予算管理 ● 掃除 ● Notion講習 ● 稟議 ● 分類分け ● 普及促進 ● セキュリティ・監査 ● 配置決め ● サポート ● 普及・移行状況報告 ● 移行作業 ←本日はここ

4.

Atlassian製品からの移行 2015年から利用しているJira/Confluence Serverを2022年にNotionへ移行 開発プロジェクト管理として利用していたJiraはGitHub Issuesへ移行 参考:Spring Framework's Migration from Jira to GitHub Issues

5.

目次 ● Confluenceからの移行 ○ 付録 ● Jiraからの移行 ● まとめ

6.

Confluenceから の移行

7.

NotionのConfluence Importerを利用 Confluence Importer 2.0 - API Importerが追加 Zip-file ImporterがServer版をサポート 2022年時点では2.0になる前。 Server版非対応のままどう移行したのか、もう 使えないノウハウもありますが供養として紹介 します。 https://www.notion.so/help/import-from-confluence

8.

移行できるもの・できないもの 移行できる ページ ブログ スペース - 最新版のページ 最新版のブログ(ページへの変換が必要) 最新版の添付ファイル ページ階層 同一スペース内のページリンク(自動変換) Confluenceマクロ(HTMLのみで再現可能なもの) なし 移行できない - 移行用ユーザーに権限がない制限ページ ページ履歴 ページコメント ページ制限 ラベル 添付ファイル履歴 作成日/者、最終更新日 /者情報 Confluenceマクロ(HTMLのみで再現されないもの) ページ内にリンクされてない添付ファイル 別スペースにあるページへのリンク(変換されない) ユーザーへのメンション(テキストになる) - サイドバーの情報 スペース権限 ゴミ箱、下書き スペーステンプレート

9.

Confluence Notion

10.

Confluenceへの移行手順(2.0以前) ※Schedule jobにあるClean Temporary Directoryで消されないよう注意

11.

Server版のhtmlに手を加える 当時Server版はサポート外だったのでCloud版のエクスポートhtmlっぽく編集。 htmlの構造さえCloud版に近くなっていれば元がなんであれ綺麗にインポートされる。 Confluence Importer 2.0なら不要 - 文字色を移行される近い色に変更 内部ページリンクの aタグにdata-linked-resource-typeを追加 添付ファイルの pタグにclassを追加 テーブルにclassを追加、セル内に pタグ追加 いまでも必要 - jsに依存している部分を htmlのみの表現に変更( Google Drive/Docs for Confluenceなど) デフォルトの変換では落とされている情報をページ内に移動

12.

ConfluenceからNotionへの移行アドバイス ★ Confuence Importerに任せておけばページ内はほぼ大丈夫 ○ ★ いまなら移行後にすぐ Wiki化するのが使いやすそう Confluenceのエクスポート時に落とされた情報もhtmlに手を入れれば移行できる ○ 作成日/者・最終更新日 /者をhtml書き換えて移行対象にすればよかった ■ ○ ★ 自身が管理していないページだと移行後に情報の新旧が判別しにくい コメントも重要な役割を持っていた場合は html書き換えて持っていくと良い インポートを行うユーザーはBotユーザーにしよう ○ 監査ログには移行したページ分 Page created が記録されるので分けた方が集計しやすい ○ 後々ページ作成者だと間違われるのを防止

13.

付録 Confluence to Notion

14.

主な変換挙動詳細(2.0対応) - id=”main-content”が移行対象(作成者・最終更新日から上、いいねボタンから下は移行対象外) h4は太字・下線、 h5は下線になる ページ内でリンクされていないファイルは移行されない (Drow.ioのsvgファイルも移行されない) テーブルのセル結合はなくなる テーブルのセルの色付けはなくなる、セル内はテキストになる テーブルのセル内に画像や添付ファイルがあるとデータベースに変換される Statusマクロは背景色グレーのテキストになる ユーザーメンションはテキストになる iframeで埋め込んだものは移行される Codeマクロのhighlightは引き継がれる、アドオンで追加した言語だと Plain Textになる NoformatマクロはCallout > Codeになる Confluence上でHTMLやテーブルが壊れている(セル欠損)と そのページ全体が移行されない エクスポートファイルのみ( htmlのみ)で稼働するならアドオンによる表現も移行される

15.

よくあるインポートエラー ● ● ● インポート処理が終わらない ○ Notionの内部API(v3のやつ)が返す移行ステータスが永遠と変わらない現象 ○ 移行されたページを見て終わったかどうか判断する ○ 終わってなかったらログアウト・ログインしてから再度インポートしてみる Validating file… で止まっている ○ zipファイルを作成した環境の問題か検証中から進まない現象 ○ 別環境で解凍して再度 zipにすると通った(謎) Import failed. アラートが起きた ○ エラー落ちしてインポート済みページ群が勝手にゴミ箱に入れられる現象 ○ スペース内で一番親のページ名で検索してゴミ箱からサルベージ可能 ○ インポートログは残っているため原因となるページが特定できる場合もある

16.

よくある変換漏れ・移動エラー ● 空ページになる、ページ抜けがある ○ HTMLが壊れている(タグの不一致、不正な入れ子) ○ 変換できない HTMLが書かれている(アドオンのマクロや html直書きで起きやすい) ○ エクスポートしたユーザーに権限がない制限ページになっている ■ ● ● confluence-administrators だとしても権限がないとエクスポートできないので注意 スペース内のページリンクが変換されていない ○ マクロとしてのページリンクではなく文字列としてのリンクになっている ○ インポート単位では自動変換されるが複数に区切っていると変換されない インポート後にページを移動できない ○ 大量のページを持つ親ページを移動させる際はサイドバー上の D&DではなくMove toを使う

17.

Jiraからの移行

18.

専用Importerがないので自力 JiraはServer版もCloud版もImporterはありません。 今回はJiraのエクスポート機能(一覧表示の情報のみ)とAPI(Issue自体の情報)を2つ 組み合わせて移行を行いました。

19.

Jira Notion

20.

Jiraの移行手順

21.

Jiraの移行はアーカイブが目的 移行したデータベースはアーカイブとして保存し、 新規にデータベースを作成して運用するのがよいと思います。 継続して移行したデータに追加・編集し続けるのではなくアーカイブ目的とすることで、 以下を考慮して移行する必要がなくなります。 ● フィールドマッピング、ユーザーマッピング ○ 移行時の大量通知問題 ○ 過去データと新規データでプロパティ分けたい問題 ● ユニークIDとIssue IDの番号揃え ● Wiki記法の変換

22.

JiraからNotionへの移行アドバイス ★ ★ Jiraはフロー情報であることのほうが多いのでそこまで移行を頑張らない ○ 重要度次第だが Jiraは移行せずエクスポートして Google Driveに突っ込むだけでもいいと思う ○ Jiraのデータを移行したデータベースを使うより、新規でデータベース作った方が綺麗 Notionでどのレベルのタスク管理まで担わせるか事前に決める ○ ★ リポジトリと密に繋がる開発プロジェクト管理はJira継続か他のツールへ移行しよう ○ ★ 完全な代替とはならないので、移行するにしても向き不向きは利用者に伝えておく Notionでそこまでやるのは現状かなり厳しい インポートを行うユーザーはBotユーザーにしよう ○ Confluenceのときと一緒

23.

まとめ

24.

移行アドバイスまとめ 移行方針 ★ Jiraの移行はアーカイブ目的と割り切った方が楽 ★ Importerの仕様は変わることがあり移行期間は短い方がいい(1年は長すぎた) 移行作業 ★ ★ Confluence Serverのエクスポートhtmlの手直しは手間かかるがやる価値はある ○ アドオンも移行要素に含めたいならやろう ○ ページの作成日 /者と最終更新日 /者も移行要素に入れた方がいい(やればよかった) 専用のBotユーザーを使ってインポートしよう

25.

参考 Notion全社導入に伴う移行とデータ整理のノ ウハウ | ドクセル Notionで社内情報をスムーズに検索! 移行前の大掃除と再配置で効率アップ NIFTY engineering

26.

宣伝 Notionへの移行が終わって 1年経ったから話せる導入時や運用後のうまくいった・よくなかった話を 11月18日にする予定です。気になる方は NIFTY Tech Day 2023 - connpass へご登録お願いします!

27.

Copyright © NIFTY Corporation All Rights Reserved.