Dataverse:Handle

De BrapciWiki
Ir para navegação Ir para pesquisar

Introdução

Identificadores persistentes são tanto requerimentos quanto uma parte integral da plataforma Dataverse.
Por padrão e por conveniências de teste, o instalador configura um namespace de teste temporário no Doi através do EZID. Através deste é possível criar e publicar Dataverses e Datasets não sendo, entretanto, possível cita-los ou garantir sua preservação.

Para configurar propriamente um identificador para uma instalação de produção, devem ser adquiridos uma conta e um namespace através de um dos seguintes provedores de DOI ou HDL mediante a cobrança de taxação:
EZID (http://ezid.cdlib.org), DataCite (https://www.datacite.org), Handle.Net (https://www.handle.net).

Uma vez tendo a conta cadastrada e um namespace DOI ou Handle funcionando, as seguintes opções da JVM e da database devem ser configuradas:

Para doi:

JVM:

  • doi.baseurlstring
  • doi.username
  • doi.password

Database:

  • :DoiProvider
  • :Protocol
  • :Authority
  • :Shoulder
  • :IdentifierGenerationStyle (optional)
  • :DataFilePIDFormat (optional)


Para Handle:

JVM

  • dataverse.handlenet.admcredfile (chave privada de administração)
  • dataverse.handlenet.admprivphrase (senha utilizada na encriptação da chave)
  • dataverse.handlenet.index (index do handle, valor padrão é 300)

Database

  • :Protocol
  • :Authority
  • :IdentifierGenerationStyle (optional)
  • :DataFilePIDFormat (optional)

Configurando a Database

As opções da Database são configuradas através de requisições http através da linha de comando.
Para listar as configurações atuais, execute:

curl localhost:8080/api/admin/settings

Para editar alguma configuração, execute:

curl -X PUT -d (novo valor) localhost:8080/api/admin/settings/:(configuração)

Primeiro é necessario informar o Dataverse que será utilizado handle em vez do doi que vem por padrão. Para isso, edita-se o valor de :Protocol para hdl

curl -X PUT -d 'hdl' localhost:8080/api/admin/settings/:Protocol

Em seguida, é necessario informar o Dataverse o prefixo handle através da configuração :Authority

curl -X PUT -d '20.500.11959' localhost:8080/api/admin/settings/:Authority

Em seguida se faz necessario configurar o estilo de geração do identficardor, uma vez que o handle funciona com numeros e o dataverse vem configurado de modo a gerar uma string de caracteres aleatorios para o doi.
Primeiro, deve-se mudar a opção :IdentifierGenerationStyle com o comando:

curl -X PUT -d 'sequentialNumber' localhost:8080/api/admin/settings/:IdentifierGenerationStyle

Após, baixe o arquivo createsequence.sql no link http://guides.dataverse.org/en/latest/_downloads/createsequence.sql e através do usuario postgres execute-o na tabela dvndb, para gerar o contador da sequencia na database

sudo -u postgres -i
wget http://guides.dataverse.org/en/latest/_downloads/createsequence.sql
psql dvndb
\i createsequence.sql

Alterando o prefixo do Handle no Dataverse

curl -X PUT -d "dt/" http://localhost:8080/api/admin/settings/:Shoulder

Configurando a JVM

Há dois modos de configurar as opções da JVM: via linha de comando através ou editando o arquivo domain.xml. A maior diferença entre um e outro é que editar o arquivo requer que o servidor seja reiniciado para que as alterações façam efeito. Por tanto, é preferivel configurar via linha de comando. Caso seja necessario, o arquivo domain.xml fica no seguinte caminho:

$PAYARA/glassfish/domains/domain1/config/domain.xml

Para acessar o aplicativo e configurar via linha de comando, é necessario estar no diretorio /bin do servidor.

cd /usr/local/glassfish4/glassfish/bin

Dentro do diretorio, é só executar o app asadmin passando os comandos como parametros.
Para listas ar configurações atuais execute:

$PAYARA/bin/asadmin list-jvm-options

Caso o sistema peça por senha, ela se encontra no arquivo local-password dentro da pasta glassfish/domains/domain1/config

Para alterar configurações ja definidas, se faz necessario deletar a versão atual e depois cria-la novamente atraves dos comandos delete-jvm-options e create-jvm-options.
Como o dataverse vem configurado para doi, inicialmente não há a necessidade de substituir(deletar e criar novamente) sendo possivel, somente criar as configurações do handle

$PAYARA/bin/asadmin create-jvm-options '-Ddataverse.handlenet.admcredfile=/hs/svr_1/admpriv.bin'
$PAYARA/bin/asadmin create-jvm-options '-Ddataverse.handlenet.admprivphrase=SENHA DO ADMPRIV AQUI'
$PAYARA/bin/asadmin create-jvm-options '-Ddataverse.handlenet.index=300'

O dataverse só consegue decriptar o arquivo admpriv.bin caso ele esteja usando a encriptação da versão 6 do handle. Para resolver erros devido a isso, basta re-encriptar o arquivo usando o app hdl-keyutil localizado na pasta bin/ do handle.net --- Documentação 2 --- Verificar as configurações curl localhost:8080/api/admin/settings Ativando o Handle curl -X PUT -d 'hdl' localhost:8080/api/admin/settings/:Protocol curl -X PUT -d '20.500.11959' localhost:8080/api/admin/settings/:Authority curl -X PUT -d 'sequentialNumber' localhost:8080/api/admin/settings/:IdentifierGenerationStyle Criando tabela no PGSQL sudo -u postgres -i wget http://guides.dataverse.org/en/latest/_downloads/createsequence.sql psql dvndb \i createsequence.sql Configurando o Glassfish cd /usr/local/glassfish4/glassfish/bin ./asadmin create-jvm-options '-Ddataverse.handlenet.admcredfile=/hs/svr_1/admpriv.bin' ./asadmin create-jvm-options '-Ddataverse.handlenet.admprivphrase=SENHA DO ADMPRIV AQUI' ./asadmin create-jvm-options '-Ddataverse.handlenet.index=300' Ver os paramentos setados ./asadmin list-jvm-options curl localhost:8080/api/admin/settings Alterando o prefixo do HAndle curl -X PUT -d "dt/" http://localhost:8080/api/admin/settings/:Shoulder

Alterando o prexifo FK2

defina um novo prefixo para os dados

curl -X PUT -d "CedapDados/" http://localhost:8080/api/admin/settings/:Shoulder

Documento 2

dspace.cfg

local.cfg

# Name of the site
dspace.name = DSpace at RDP-CEDAP