0

I have a series of surveys on ODK Aggregate and want to access the resultant information as tables in a database hosted via MySQL Server. Of course, I can just download the data off of ODK Aggregate and manually add it to a database on MySQL. My question is how to link ODK Aggregate to MySQL so that every time a new entry is added to the spreadsheets in ODK Aggregate it shows up in a MySQL database. (I have installed ODK Aggregate via Google’s App Engine)

ODK Aggregate gives a number of options for "publishing" data, all of which offer the ability to "stream new submissions," which is what I'm looking for. What I can't figure out is how to get from the publishing options they give into MySQL.

The options they give are 1. Google FushionTables 2. Google Spreadsheet 3. Z-ALPHA Google Maps Engine 4. Z-ALPHA REDCap Server 5. Z-ALPHA JSON Server 6. Z-ALPHA Ohmage JSON Server

Can one of these be set up to send data into MySQL?

If not, is there another way to create surveys whose results are automatically sent to a database on MySQL Server?

A thousand thanks.

4

3 に答える 3

0

公式の ODK コミュニティでサポートされていない別のオプションは、Sean Herman が Aggregate ソース コードから作成した AggregateのDocker イメージを使用することです。このガイドに従って Docker をインストールしたら、Dockerイメージを取得して MySQL コンテナーと ODK 集約コンテナーの両方を起動する 2 つのコマンドを実行するだけです。2 つのコマンドの例を次に示します (必要に応じて環境変数を変更する必要があることに注意してください)。

$ docker run -d --name <your mysql container name> -p 3306:3306 -e MYSQL_ROOT_PASSWORD=<your password> -e MYSQL_DATABASE=<your schema name> -e MYSQL_USER=<your MySQL user name> -e MYSQL_PASSWORD=<your MySQL user password>  mysql:5.7  

ポート マッピング (-p) オプションは次のように引数を受け入れることに注意してください: ($HOSTPORT:$CONTAINERPORT)

次のコマンドで ODKAggregate イメージを実行します。

$ docker run -d --name <your aggregate container name> --link <your      mysql container name> -p 8080:8080 -e DB_CONTAINER_NAME=<your mysql container name> -e MYSQL_DATABASE=<your schema name> -e MYSQL_USER=<your MySQL user name> -e MYSQL_PASSWORD=<your MySQL user password> -e ODK_HOSTNAME=<wherever you are hosting your container... this must be the same as the url> -e ODK_ADMIN_USERNAME=<your admin user name> kharatsa/odkaggregate:latest

これにより、Tomcat を使用して ODK をセットアップする時間を大幅に節約できました。

于 2016-03-07T16:11:04.033 に答える
0

問題を解決する最も簡単な方法は、MySQL をサポートする Tomcat インストールに ODK Aggregate をインストールすることです。http://opendatakit.org/use/aggregate/tomcat-install/に説明があります。

于 2014-09-15T02:12:56.317 に答える