Git Product home page Git Product logo

parliament's People

Contributors

ianemmons avatar peytondwilliams avatar sadakatsu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

parliament's Issues

Docker-ize Parliament

Add to the build infrastructure of Parliament a facility that creates a Parliament docker container.

Parliament Daemon Shutdown

Understand and document how to make a Parliament daemon on Unix/Linux shut down properly when the machine shuts down (or the daemon controller shuts it down). Ideally, this understanding should also be turned into scripts for each supported Unix and Linux distro.

Parallel workers

I want to perform queries by upto 128 number of parallel/concurrent workers. Can you recommend some specific configuration please? I want to measure the QpS (queries per second) value of many triple stores for parallelism (querying by more than one user at a time).

Fix Spatial Tests

There are a few tests in the spatial index that do not run correctly. These issues need to be diagnosed and fixed. (At present, I am not sure whether the issues are in the spatial index software or in the tests themselves.)

query processor memory

Hi,
I want to evaluate different triplestores for throughput, based on queries-per-second. As I have to test Parliament for different sizes of real and synthetic benchmarks, but I am interested to know the relationship of 'query processor memory' and throughput. I mean that, what parameters should I change in order to try Parliament with different resource (memory, processing) combinations. I will be waiting for your suggestions.

Index Rebuild Capability

Implement a new capability to rebuild the resource b-tree (Berkeley DB) and/or the temporal and geospatial indexes. This would allow Parliament to fully and reliably recover from situations where those indexes become corrupted.

Master graph corrupts on ungraceful shutdown

On the dev environment for the Presto project, the following behavior has been observed:

  • Some collection of changes is made, which may involve creation of new graphs.
  • A lengthy period of either inactivity or read-only activity occurs, during which Parliament's internal flush-to-disk thread does its thing.
  • An external stimulus causes Parliament to be shut down ungracefully. This is usually the Linux VM being killed by the admins.
  • At this point the master graph is often (or perhaps always) corrupted.

Infer that every class is a subclass of itself

Parliament does not infer that each class is a subclass of itself, as the RDFS and OWL specifications say it should. This causes a significant deviation between Parliament's behavior and, say, the behavior of Jena's InfModel.

JVM Crash When Importing DEFT Sample Data

When importing the DEFT sample data load, Parliament crashes. Specifically, If we create a JenaGraph and import the sample data, the JVM exits abruptly without producing a JVM core dump. This crash does not happen when importing the same data into an in-memory Jena model, or into a native Parliament graph.

Release binaries for a couple of systems

Hi,

It is great to see that Parliament has been updated (I thought it was dead !)

Could you please release binaries as there used to be for various systems (ubuntu, centos, mac os and windows used to be available).

Best regards

Replace Joseki with new REST API implementation

Parliament's current REST API implementation is based on a heavily customized version of Jena's Joseki project. This code has been obsoleted by Fuseki, but migrating Parliament to Fuseki turns out to be more costly than it is worth. Re-customizing it would take a great deal of time, and then land us in the same difficult situation when we need to migrate to a newer version. Instead, the better approach is to write our own REST API implementation, because this is not particularly difficult.

Additional tasks that would go nicely with this effort:

  • Conversion of the JSP pages to something more modern, like Angular
  • Switch from Jetty to Spring Boot
  • Incorporate the Map view for geospatial data from the DOMEX demo effort
  • Incorporate the graph view (a la Analyst's Notebook) from the DOMEX demo effort
  • Realize the primary benefit of ditching Joseki, i.e., update to the latest version of Jena ARQ/Core

jsvc fails to receive SIGTERM

When running Parliament as a daemon on Linux or UNIX, the jsvc executable from Apache commons-daemon fails to receive the SIGTERM signal. This prevents Parliament from properly exiting in some cases.

Make bdbCacheSize global across all graphs

Currently, the bdbCacheSize configuration parameter in ParliamentKbConfig.txt controls the size of a cache that is dedicated to a single graph. This should instead configure one cache that is used across all graphs.

Implementation: Create a static BDB environment object into which every graph's b-tree is enlisted when it is initialized. Then move the cache configuration to the environment object.

Finish the migration to GitHub

Parliament is largely migrated to GitHub, but the migration is not quite finished. The following tasks (and perhaps others) remain:

  • Finish implementing the "missing" tests in the temporal index
  • Post the binary dependencies that cannot be retrieved from Nexus
  • Update the documentation
  • Update env vars required on each platform (e.g., LINUX_DISTRO)
  • Do a new release from GitHub

Fix unbounded growth of Parliament's memory usage

It has been observed in the Presto project deployments that Parliament's memory usage grows over time to excessive levels. There has been some evidence that this is related to Parliament's backup facility, though this has not been verified.

jsvc log file duplicates main Parliament log

The log file produced by Apache Commons Daemon (jsvc-log.txt) duplicates the main Parliament log (parliament.log). Because it does not rotate, it therefore grows too big. The reason for this is that log4j is configured with both a console and file appender, and jsc captures the process console output in the jsvc-log.txt file.

Ideally, the fix should implement rotation for jsvc-log.txt, but it should also arrange for the console appender to be shut down when Parliament is running as a daemon, since in that mode the console output adds no value.

CSV query results not escaped

When Parliament answers a select query in CSV format, the results are not properly escaped. For example, if the results contain a string literal whose value contains a comma or carriage return, those characters are not escaped in the CSV output.

data loader

I want to upload a file of about 15GB. Can you point out command prompt utility for it. As I checked in the bin folder but I could not found it. I am using free version.

Help Requested: Query not yielding appropriate target

@IanEmmons I'm hoping you can help me complete my mission. I need accurate answers to the following query. I've been using parliament, but I cannot seem to get the required answer, no matter what datasets I find and load. The query seems simple enough:

SELECT DISTINCT ?target, ?restingPlace WHERE {
	?target a foaf:Person ;
    	business:hasAddress ?restingPlace .
    ?buffer a spatial:Buffer ;
        spatial:distance "0.002"^^xsd:double;
        spatial:extent landmarks:ClintsOffice .
    ?restingPlace a bbn:Office ;
        georss:where ?point ;"
        georss:where [
            rcc:part ?buffer
        ] .

Do you have any ideas? I feel like such a fool.

Blank result

I have uploaded 1 Billion triples of WatDiv benchmark but when I apply SELECT query then it returns empty results. However when I apply general SELECT query i.e. Select * where {?s ?p ?o} limit 10 then it returns all 10 triples. But result of select * where {<any_specific_subject> ?p ?o} is empty. If you please tell me the reason.

Fix Temporal Index Tests

The tests associated with the temporal index are currently disabled. (See the runTests target in the top-level ant script.) This is because until recently a number of these tests (particularly TemporalIndexTest) relied on old JUnit behavior that has not been in effect for quite some time. I fixed these tests so that they can now run. The net effect of my changes is that some tests that have not been running for several years (again, TemporalIndexTest) are now running and, of course, they fail. The temporal index software needs to be fixed so that these tests run correctly again.

Benchmark results

I have performed some results for my academic purpose. I want to approve it form you. How can I share with you. Regards,

Create top level parliment directory for dist

The distribution zip doesn't have a top level directory. While not required on one likes to download a release and unzip it only to have it puke all over your home directory :)

It's nice to see parliament get a new home and some love. Let me know if there's anything I can do to help out.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.