OpenRefine

OpenRefine（旧称：Google Refine、さらに以前はFreebase Gridworks）は、スタンドアローンのオープンソースのデスクトップアプリケーションで、データのクリーンナップ、他の形式への変換、データラングリングと呼ばれる処理を行うことができる。見た目はスプレッドシートアプリケーションに似ているが（スプレッドシートファイル形式も処理できる）、よりデータベースに近い動作をする。
"各列（カラム）"の下にセルを持つデータの"各行"に対して様々な操作を行う。これは、リレーショナルデータベースのテーブルに非常によく似ている。1つのOpenRefineプロジェクトは1つのテーブルからなる。ユーザーは、"ファセット（facet）"と呼ばれるフィルタリング条件（例えば、指定した列が空でない行のみを表示するなど）の定義を使用して、表示する行をフィルタすることができる。スプレッドシートとは違い、OpenRefineのほとんどの操作は、表示された行全体に対して実行される。たとえば、1つのカラムの下にある全ての行のすべてのセルに対して変換処理が適用されたり、すでにあるカラムを元にして新しいカラムが作成されるといった処理となる。すべての操作はプロジェクト内に保存された1つのデータセットに対して実行され、別のデータセットに対して同じ操作を繰り返し適用することができる。
スプレッドシートとは異なり、セルの中には数式は保存されず、数式はデータの変換に使われ、また、データの変換は1回のみ実行される。データを変換する処理式はGeneral Refine Expression Language (GREL)と呼ばれるDSLの他、Jython（つまりPython）やClojureで記述することも可能である。
プログラムにはウェブユーザーインターフェイスが組み込まれているが、ウェブサービス（SAAS）としてホストされるわけではなく、ダウンロード後にローカルマシンで動作するためのものである。OpenRefineを実行すると、ローカルでウェブサーバが起動し、このウェブサーバ上で動作するウェブUIがブラウザで自動的に開かれる。
インポートとエクスポートの対応フォーマット.
インポートは以下のフォーマットに対応している。
入力データが標準化されていないテキストフォーマットだった場合、行全体をカラムに分割せずにインポートすることができ、その後、OpenRefineのツールを使ってカラムが抽出できる。アーカイブと圧縮ファイルもサポートされ（.zip, .tar.gz, .tgz, .tar.bz2, .gz, or .bz2）、URLから入力ファイルを直接インポートすることもできる。ウェブページをインプットとして使用するときは、URLのインポートリストを指定して、URL取得機能を呼び出せる。
エクスポートは以下のフォーマットに対応している。
独自フォーマットのOpenRefineのプロジェクト全体は、.tar.gzアーカイブ形式で出力できる。
歴史.
OpenRefineは、MetawebによってFreebase Gridworksとして開発が始まり、2010年1月にオープンソース化された。2010年7月16日、GoogleはFreebaseの作者であるMetawebを買収し、2010年11月10日にFreebase Gridworksと呼ばれていたソフトウェアをGoogle Refineと改名し、バージョン2.0をリリースした。2012年10月2日、元の作者のDavid HuynhはGoogleではGoogle Refineのサポートを終了すると発表した。以降、コードベースがオープンソースプロジェクトに移行し、OpenRefineと改名された。