#author("2023-01-11T09:08:10+09:00","default:irrp","irrp") →データ処理関連 →データ移行 #contents *サブトピック [#hbf3594c] -データベース用語 -データベース設計 -[[SQL一般]] -Oracleに関するメモ -MySQL関連 -SQL Server関連 -SQL Server 2005 -MSDEメモ -O/Rマッピング -ADO.NET関連 *DB一般 [#yecf30d3] -[[historical trend of the popularity ranking of database management systems>https://db-engines.com/en/ranking_trend]] 2022.9 --Oracle, MySQL, SQL-Server の順 -[[主要RDBMS製品のアーキテクチャ比較 | コーソルDatabaseエンジニアのBlog>https://cosol.jp/techdb/2022/09/rdbms_architecture_comparison/]] 2022.9 -[[自作RDBMSやろうぜ!(出張版) - Qiita>https://qiita.com/ryo_grid/items/f23bb5846558698ec4cc]] 2022.5 -[[メルペイDataPlatformのCDC DataPipeline | メルカリエンジニアリング>https://engineering.mercari.com/blog/entry/20220420-5d89f9d9c7/]] 2022.4 -[[無料のフルマネージドなグラフデータベース「Neo4j AuraDB Free」発表。5万ノード、17万5000リレーションシップまで利用可能 − Publickey>https://www.publickey1.jp/blog/21/neo4j_auradb_free5175000.html]] 2021.11 -[[DBMSをGoで実装してみた>https://buildersbox.corp-sansan.com/entry/2019/10/24/110000]] 2019.10 -[[データベースアプリケーション開発を炎上させる負のスパイラル>http://nippondanji.blogspot.jp/2013/11/blog-post.html]] 2013.11.21 -[[リレーショナル・データベースの世界>http://www.geocities.jp/mickindex/database/idx_database.html]] -[[衝撃的なデータベース理論・関手的データモデル 入門>http://d.hatena.ne.jp/m-hiyama/20130211/1360577040]] 2013.2.12 -[[DBの世界に起こる変革>http://aufdai.blog69.fc2.com/blog-entry-325.html]] 2012.1.7 --今後はオンメモリDBベースのアーキテクチャの製品が主役になる可能性もある。 -[[Welcome back to the TRANSACTION!>http://d.hatena.ne.jp/okachimachiorz/20120916/1347799619]] 2012.9.16 -[[第1回 駆け足で見るGoogle Cloud SQLでできること>http://www.atmarkit.co.jp/fdb/rensai/googlecloudsql/01/01.html]] 2012.2.27 -[[現場で使えるデータベース設計>http://www.edifist.co.jp/books/dbdesign/index.html]] -[[データベースエンジニアへの道>http://www.atmarkit.co.jp/fdb/index/subindex/db_enginer_subindex.html]] --[[素早く正規形を見抜く実践テクニック>http://www.atmarkit.co.jp/fdb/rensai/db_enginer03/db_enginer03_1.html]] -[[データベーススペシャリスト試験過去問題>http://blog.livedoor.jp/megafriday/]] -[[DWHアプライアンスでOLTPを動かしてはいけない>http://itpro.nikkeibp.co.jp/article/COLUMN/20100713/350215/]] 2010.7.27 -[[テーブルの商演算について>http://kominato.exblog.jp/2098676/]] -[[どうも世間では、思ったよりDBエンジニアが不足しているようだ>http://mubou.seesaa.net/article/112885900.html]] 2009.1.20 -[[世界でもっとも簡単なデータベースBlist>http://journal.mycom.co.jp/news/2008/02/01/032/index.html]] -[[なぜ彼はLAMPを捨てXML DBに走ったか>http://www.atmarkit.co.jp/fdb/rensai/viper01/viper01_1.html]] --要件の曖昧なケース、仕様変更に強い -[[データベースにまつわる怖い話>http://itpro.nikkeibp.co.jp/article/COLUMN/20070320/265660/?ST=develop&P=1]] -[[Visual Studio 2005によるWindowsデータベース・プログラミング>http://www.atmarkit.co.jp/fdotnet/vblab/vsdbprog_01/vsdbprog_01_01.html]] -[[読み物:リレーショナルデータベースの世界:http://www.geocities.jp/mickindex/database/idx_database.html]] --なぜNOT NULL制約をつけないとダメか?など *Notion [#sc631118] -[[操作権限を制限してNotionのデータベースを安全に使う | DevelopersIO>https://dev.classmethod.jp/articles/restrict-operations-on-notion-databases/]] 2023.1 -[[Notionで目次をサイドに設置するための小技 - CUEBiC TEC BLOG>https://cuebic.hatenablog.com/entry/notion-hack01]] 2023.1 -[[「「プロジェクトマネジメントに役立つNotion機能まとめ」 について連ツイします。 仕事するうえで欠かせないNotionですが、次に来るアップデートがプロダクト開発にも欠かせない超便利な機能でした🤩 これで本当にもうNotionで全部仕事が完結しそう! Notion公式アンバサダーとして解説します👇」 / Twitter>https://twitter.com/shin_sasaki19/status/1592767560227094529]] 2022.11 -[[EXCELやスプレッドシートの情報はコピペでそのままNotionシンプルテーブルに流し込める #notion | DevelopersIO>https://dev.classmethod.jp/articles/copy-and-paste-contents-between-excel-spreadsheet-and-notion/]] 2022.10 -[[Notionであすけんlibrary(社内読書管理ツール)をつくってみた - asken テックブログ>https://tech.asken.inc/entry/2022/09/30/171500]] 2022.9 -[[Notionでフロー情報をためるだけの箱を一つ用意したら全社でドキュメンテーションが捗った>https://zenn.dev/leaner_dev/articles/20220922-notion-leaner-flow]] 2022.9 -[[なぜNotionを使うのか2022 / Why use notion as our workspace in 2022 - Speaker Deck>https://speakerdeck.com/linyows/why-use-notion-as-our-workspace-in-2022]] 2022 -[[NotionをDBaaSにして「ロリポップ!」「ヘテムル」のサイトをもっと安全にしよう - Pepabo Tech Portal>https://tech.pepabo.com/2022/09/21/build-sites-on-lolipop-more-secure-with-dbaas-notion/]] 2022.9 -[[Notionでページ上にアップロードされた画像ファイル群をまとめて閲覧出来るようになりました #notion | DevelopersIO>https://dev.classmethod.jp/articles/notion-new-image-experience-in-page/]] 2022.9 -[[Noitonのコンテンツ整理に「罫線」を活用する #noiton | DevelopersIO>https://dev.classmethod.jp/articles/notion-border-tips/]] 2022.8 -[[Notionでの「テーブルに対する一括操作」が色々便利になっています #notion | DevelopersIO>https://dev.classmethod.jp/articles/notion-burk-operation-to-database-table/]] 2022.8 -[[Notionの関数を使って「期限が過ぎたデータを抽出して表示」させる #notion | DevelopersIO>https://dev.classmethod.jp/articles/notion-function-expiration-date-alert/]] 2022.8 -[[【入門】Notionで自分用ニュースクリップページを作ってみよう>https://wywy.jp/blogs/notion-guide-web-clipper]] 2022.8 -[[【連載】Notionがあなたのチームを強くする | TECH+(テックプラス)>https://news.mynavi.jp/techplus/series/howtonotion/]] 2022.8 -[[Notionで自社Webサイト運用できる最高のサービス、Wraptas紹介>https://wywy.jp/blogs/intro-notion-wraptas]] 2022.8 -[[Notionの使い方徹底解説!データベース管理の基本を分かりやすく紹介します【中編】 - YouTube>https://www.youtube.com/watch?v=1BBZxB1BAHA]] 2022.7 -[[Notionのアカウントとワークスペースの関係と参加退出時の選択肢による影響について図解にしてみた | DevelopersIO>https://dev.classmethod.jp/articles/about-notion-status-on-account-and-workspaces/]] 2022.6 -[[NotionAPI( curl )でNotionデータベースをいじる! - SO Technologies 開発者ブログ>https://developer.so-tech.co.jp/entry/2022/06/27/174441]] 2022.6 *NoSQL [#rb478e65] -[[オープンソースのクラスタリング / Infinispanとは>https://www.ossnews.jp/oss_info/Infinispan]] 2022 -[[[ElasticCache] RedisとMemcachedの違いとは。 - Qiita>https://qiita.com/kmmz/items/e4b496b42207783515a0]] 2022.1 --Redis バックアップを始め、様々な機能が欲しい場合はこちら --Memcached マルチスレッドが必要な場合はこちら -[[【入門】Redis - Qiita>https://qiita.com/wind-up-bird/items/f2d41d08e86789322c71]] 2020 -[[RDBの限界とNoSQLの登場>https://qiita.com/1amageek/items/3dbbc3112493a73880d0]] 2019.11 --トランザクションに最適化されて設計されたDBでは性能劣化が始まり、システムはデータベースに対しスケール性能を必要とし始める。 --1998年Carlo StrozziによってSQLのない軽量なDBを推進する運動として"NOSQL"という言葉が使われる。 --2009年にサンフランシスコで開かれたミートアップで「NoSQL」がハッシュタグとして使われ、次々生まれることになるRDBでないデータベースは「NoSQL」と呼ばれることになる。 --Facebookは2008年7月にCassandraをオープンソースソフトウェアとして公開し、2009年3月からApache Incubatorプロジェクトとなる。DynamoDBのような高い可用性とスケーラビリティを保持している。 --DBのボトルネックは二つ ---一貫性を担保するためストレージを共有する構成を取る必要があること ---SQLが強力で柔軟なため複雑な処理を実行できてしまうこと --NoSQLではQueryに頼らない設計をせざるを得ない。NoSQLではClient Side Joinを推奨しておりJOINをClient側で行う。これによりデータベースの負荷を分散している。 --RDBは構造化データを表現しにくい --Googleは2011年スケーラビリティと一貫性を両立した分散データストアMegastoreを発表。 --Google Cloud Platform(GCP)では、Cloud Datastoreというデータストアを利用することができ、Cloud Datastoreは、内部的にMegastoreを用いて実装されている。 *Tool [#vd29f4cb] -[[「A5:SQL Mk-2」という変態(←褒め言葉)なソフトがあった>https://blogs.itmedia.co.jp/noubiz/2013/08/a5sql_mk-2.html]] 2013 -https://dbeaver.io/ --Free multi-platform database tool for developers, SQL programmers, database administrators and analysts. Supports all popular databases: MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access, Teradata, Firebird, Derby, etc. -[[データベースもアジャイル開発に対応したい>http://www.atmarkit.co.jp/fdb/single/08s_jiemamy/jiemamy1.html]] 2008.9.4 --http://www.jiemamy.org/ --Eclipseのプラグインとして動作するDBリファクタリングツール -[[ 汎用コネクションプーリングサーバ「SQLrelay」 - 導入編>http://journal.mycom.co.jp/column/yetanother/023/]] --http://sqlrelay.sourceforge.net/ -[[Hypertable>http://www.hypertable.org/]] GoogleのようなハイパフォーマンスDBのクローンとのこと -[[Object Browserオンラインマニュアル:http://www.sint.co.jp/siob/manual.asp]] *トランザクションの分離レベル [#l91209d3] -[[DBのロックについてあまり意識したことがない人に向けた実は覚えておきたいロックについての知識 - CARTA TECH BLOG>https://techblog.cartaholdings.co.jp/entry/2022/12/14/113000]] 2022.12 -[[排他制御のためだけに渋々 Redis 使ってませんか? - Speaker Deck>https://speakerdeck.com/mpyw/pai-ta-zhi-yu-notamedakenishibui-redis-shi-tutemasenka]] 2022.11 --ロックするものがない場合に、Redisのアトミック機能よりもDBMSのアドバイザリーロック機能を使った方がよいという話 -[[ダーティリード、ノンリピータブルリード、ファントムリードを起こして挙動を確認してみた|SHIFT Group 技術ブログ|note>https://note.com/shift_tech/n/nb6fa93598ced]] 2022.8 -[[トランザクションの隔離とは>http://www.interdb.jp/techinfo/postgresql/p-2-07.html]] -[[同時実行@宇宙仮面のC#プログラミング>http://uchukamen.com/SQL2005/Lock/Lock.htm]] -[[トランザクション分離レベル 読み取り一貫性のサポートとロックエスカレーション>http://www.microsoft.com/japan/sql/facts/compare/03.mspx]] **ANSI標準の4つの分離レベル [#d822f138] -READ UNCOMMITED --もっとも安全度低い --他プロセスがトランザクション中にUPDATEしたデータをCOMMITする前にSELECT(ダーティリード)可能 -READ COMMITED --デフォルトの分離レベル。引数なしでBeginTrans()するとこれになる(SQL Server 2005) --ダーティリード不可 --自分のトランザクション中に、自分がSELECTしただけのレコードは他プロセスがUPDATE-COMMITできる(=反復不可能読み取りが可) --つまり、自分のトランザクション中のSELECT結果の一貫性が保証されない --READ_COMMITED_SNAPSHOTオプションの状態によって動作が異なる ---OFFのとき、トランザクションにひっかかったクエリは待たされる ---ONのとき、トランザクションにひっかかったクエリは、トランザクション開始前の状態を取得し、ロック待ちをしない -REPEATABLE READ --ダーティリード不可 --自分のトランザクション中に、自分がSELECTしただけのレコードも他プロセスがUPDATE-COMMITできない(=反復不可能読み取りが不可) --自分のトランザクション中に、自分がSELECTした条件にマッチするレコードをINSERT可能(=ファントム発生可) --つまり、自分のトランザクション中のSELECT結果は、その時点で存在していたレコードについては同じであることが保証されるが、存在していなかったレコードが追加されている可能性はある -SERIALIZABLE --ダーティリード、反復不可能読み取り、ファントム発生すべてが不可 --トランザクションのSELECT結果は外部からの影響を一切受けないことが保証される *DBプログラミング一般 [#f6a74c98] -[[SQL挿入処理の高速化:http://codezine.jp/a/article.aspx?aid=390]] *SQL Server [#z4739722] -SQL Server関連 --T-SQL関連メモ --MSDEメモ *Oracle [#c0ef73e5] -Oracleに関するメモ --SQL関連メモ(Oracle) --SQL*Plus関連 --Oracleバックアップ関連まとめ *PostgreSQL [#i941c6fb] -[[あまり知られていないPostgreSQLの機能 | POSTD>https://postd.cc/postgresql-unknown-features/]] 2022.4 -[[オープンソースデータベース標準教科書 -PostgreSQL- (Ver1.0.0)>http://www.oss-db.jp/ossdbtext/text.shtml]] 2011.10.6 -[[PostgreSQL基礎知識ほか>http://www.interdb.jp/techinfo/postgresql/index.html]] -[[全文検索エンジンLudia:http://sourceforge.jp/projects/ludia/]] -[[PostgreSQL入門:http://www.stackasterisk.jp/tech/dataBase/postgresql02_01.jsp#1]] *SQLite [#ba171e57] -http://ja.wikipedia.org/wiki/SQLite -http://www.sqlite.org/ *Jet/MDAC/DAO [#t92c7d06] -[[DAOによるDBの最適化>http://www.moug.net/tech/acvba/0070005.htm]] --DBEngine.CompactDatabase()を使う -Order byをつけなくても順序が保証されることを期待してはいけない。 --DAOを使ってMDBのSelectを行う場合、対象のテーブルにテーブルレイアウト上でキー項目が設定してあったとしても、レコードをキー順に取ってくることは保証されない模様(ORDER BYで指定すれば当然保証される)。特にVistaの場合。キー順になることが保証されると思っている人が多いので注意されたし。 -[[MDAC2.8 download>http://www.microsoft.com/downloads/details.aspx?familyid=6C050FE3-C795-4B7D-B037-185D0506396C&displaylang=ja]] -[[Jet4.0データベースの動作環境を最適に保つ方法>http://support.microsoft.com/kb/303528/ja]] -[[MDAC 2.6 以降には Jet または Desktop ODBC Driver が含まれない>http://support.microsoft.com/kb/271908/ja?spid=1596&sid=global]] -[[MDAC のバージョンを確認する方法>http://support.microsoft.com/kb/301202/ja?spid=1596&sid=global]] --1.ComponentCheckerというツールを使う --2.以下のレジストリを確認する HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess\FullInstallVer -[[Microsoft Jet 4.0 データベース エンジン用の最新の Service Pack の入手方法>http://support.microsoft.com/kb/239114/]] →Office関連メモ *HSQLDB [#i7fc63d7] -[[H2 database>http://www.h2database.com/html/frame.html]] --[[紹介記事>http://journal.mycom.co.jp/special/2006/jpa/002.html]] -http://hsqldb.sourceforge.net/ -[[HSQLDBの使い方>http://www.wakhok.ac.jp/~tomoharu/tokuron2003/hsqldb/]] -[[EclipseとHSQLDB>http://www.ibm.com/developerworks/jp/opensource/library/os-echsql/]] -[[HSQLDBのセットアップ>http://www.thinkit.co.jp/free/tech/3/7/1.html]] *DB2 [#p5146ec9] -[[Db2のREORGの基本 REORGってなんで必要なの? - Qiita>https://qiita.com/chirotaro/items/184ea88cd0604887e5d1]] 2022.10 -[[Investigating SQL performance by using EXPLAIN>https://www.ibm.com/support/knowledgecenter/en/SSEPEK_11.0.0/perf/src/tpc/db2z_useexplain2capturesqlinfo.html]] --[[PLAN TABLEの各カラムの意味>https://www.ibm.com/support/knowledgecenter/SSEPEK_11.0.0/usrtab/src/tpc/db2z_plantable.html]] -[[Db2 Express-C 10.5 for Windows クイックインストール>https://developer.ibm.com/jp/technologies/databases/articles/installwin-v105/]] 2020.10 --Db2 Express-Cは有償のDb2 Expressとほぼ同じ機能を持っていながら、無料で使用することができるエディション -[[DB2の環境構築手順をコマンド単位で丁寧に書いてみる>https://qiita.com/bython/items/5d1a73c718ae08edb797]] 2019 -[[ローカルに存在するDBをカタログする>http://db2.jugem.cc/?eid=181]] 2004 -[[DB2のシステムカタログ>http://javawock.blog.shinobi.jp/db-%20db2/db2%E3%81%AE%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%82%AB%E3%82%BF%E3%83%AD%E3%82%B0]] 2009 -[[アプリエンジニアが現場でよく使うDB2コマンド>https://qiita.com/sooogle/items/95d88facaf31f010ea05]] 2020.10 -[[DB2 knowledge center>https://www.ibm.com/support/knowledgecenter/ja/SSEPGG]] *その他 [#b8000306] -[[ゲームチェンジャーと噂のCloudFlare D1を性能検証してみた | DevelopersIO>https://dev.classmethod.jp/articles/cloudflare-d1-performance-survey/]] 2022.12 -[[PlanetScaleというサーバレスDBが凄く勢いのあるサービスらしいのでQuick Startやってみた - Qiita>https://qiita.com/tak001/items/cfbaa9dcb542929ff235]] 2022.2 -H2 --http://www.h2database.com/html/main.html --軽量のインメモリDB,Java前提 -[[使ってみようH2 Database Engine>http://news.mynavi.jp/articles/2006/10/12/h2/]] 2006.10 -[[How To Use IndexedDB – Simple(st) Example>http://greenido.wordpress.com/2012/10/05/how-to-use-indexeddb-simplest-example/]] 2012.10.5 -HiRDB --http://www.hitachi.co.jp/Prod/comp/soft1/hirdb/