FilemakerとAccessにおけるデータベース性能比較12項目 開発者視点
FilemakerとAccess両方で開発などをしていると「どっちが結局良いの?」と本当に何度も聞かれるので開発者として感じている双方のメリット・デメリットを簡潔に書いていく
前書:筆者の技能レベル
Access VBA及びFilemaker開発経験複数ありで、両プラットフォームにておおよそ同じものを問題なく構築できる程度の実力。システム開発よりもSQLデータベース構築や統計分析関係寄り
1、データベース限界容量
Filemaker 大きい。8TB
Access 小さくて本当に困る。2GB
2、クエリ性能
Filemaker 弱い。executeSQLが使用可能だが、外部DBと接続した場合に限られる
Access 比較的強力。SQL同様且つGUIで簡単にリレーショナルデータベースを構築可能。難解なSQL処理は不可能となっている。
3、単体DBの堅牢性
Filemaker かなり破損しづらい。serverを用いた場合は殆ど壊れない。素晴らしい
Access 2−3人使用でも破損する。1人でも処理量次第では平気で破損するので注意
4、外部データベース接続性能
Filemaker 問題なし。ODBCにて殆ど全て可能
Access 問題なし。ODBCにて殆ど全て可能
5、外部ソフトウェア連携性能
Filemaker AWSにて専属サーバーあり。appleとamazonに推されているイメージ
Access office製品には明らかに軍配が上がる。しかし共有システム指向のソフトウェアには一生ならない方向性。単体使用が利用用途。
6、価格
Filemaker 高い。5ライセンス年間10万円弱。しかし、ライセンス利用は真摯協定。オフラインPCへの導入も考慮されている為、変更は今後も当分ないと推測する
Access 安い。officeパックで年間2万円弱。お得の一言
7、開発効率
Filemaker 高い。あらかじめ中高度の検索機能が備わっていることが大きい。プログラムはないが、スクリプトが多数存在する為、事実上プログラムと同様の処理が十分可能。痒いところに手が届か無いことがたまに傷
Access 普通。フレームワーク自体はFilemakerと遜色なし。しかし、フレームワークを動作させる為、データベースを操作するために全てVBAの記述が必要であるため、ここでかなり作業効率にFilemakerと差がついてしまう
8、プログラム保守性能
Filemaker 快適。スクリプトを修正することとなるが、GUI且つ理路整然としており、保守性能は高い。何よりゴミコードの対応が存在し無いことは輝かしい功績
Access 不快。デバック機能は存在するが、ADO-DAO等データベース接続方法が混在すること、又、Access自体がゴミコード製造工場となっている場合が経験上多く、見たくない
9、共同利用システム利用人数の限界
Filemaker 限界があまり見え無い。公式曰く理論値2000同時アクセス可能。無問題。
Access 一人。バックエンドを外部DBにしたところでフォームが壊れることが頻発。ちなみにDBも何故か頻繁に破損するようになる
10、UIデザインの美麗性
FileMaker キレイ。UIとして正しいかどうかは別として現代的にキレイなUIが自然とできる
Access 古めかしい。基本通りに作ると昔の堅苦しいUIとなる。努力次第でFilemaker並みのUIも当然可能だが、とてつもない苦労が伴う
11、検索機能実装
Filemaker 手間が掛からない。元々の機能に備わっているが慣れが必要。何も組まなくてもワイルドカードから何から全て出来上がっている。検索方法に慣れてしまえば問題全くなし
Access 手間が掛かる。検索方法の検討からVBAの実装までが必要
12、リレーショナルデータベース構築の容易性
Filemaker 慣れるまでが少し大変で、少し物足りない。テーブルオカレンスとかいうリレーショナルデータベースを組むが、SQLを使えないため、開発者視点としてはいただけない。
Access 処理制限は厳しいが機能は揃っている。SQLからGUIによるリレーショナルデータベースの構築と時短手段且つ開発者に親しみのあるDB構築が比較的可能。数千万レコード程度で音を上げることに注意。
13、プラットフォームとしての将来性
Filemaker 将来性がある。DBとしての進化が目覚ましい。AWSとも連携している等、本格的なシステムにも耐えうる将来性が見込める。頑なにSQLを実装することはなさそうではある
Access 現状維持か。簡易SQLプラットホームとしてのポジションは揺るぎないものであり続けると思う。一方でMicrosoft自体がAccessを共有システム開発プラットホームとしたい意思は全くといって感じられない為、あくまで個人用の域を出ないと考えられる
■総評
システム開発であれば断然Filemaker。開発時短化並びに保守性能UP、UIデザインのキレイさによる自己満足度のUP。使ったらVBAには戻れないくらいの良さがある
一方で数百万レコード程度までのリレーショナルDB構築ならば、Accessの圧勝。というよりもFilemakerで分析するものではない気がするレベル
結論として、Filemaker、Access共に長所短所がある為、使い分けることが有用な気がする