npm: the package manager for node.js
npm & OmniSci
npm uses the OmniSci platform for exploring request log (log file) data. Request logs are a record of every request that the npm server has processed.
The same log file data that provides trends are also used for diagnostic purposes.
This may range from looking at all requests in a given data center to find a faulty node, filtering requests from a specific user agent or IP that for anomalous or failing requests. npm also looks for changes to regular usage patterns in the log files such as when a remote IP suddenly spikes, possibly indicating a problem, or simply a large new customer.
“Our requirements demanded exceptional performance and scalability to power through large, complex queries and we found the answer in OmniSci.”
- Laurie Voss, CTO of npm
npm considered alternative log file analysis technology but found the price/performance attributes to be lacking. In OmniSci, npm found lightning fast response times without any requirement to index the data. Further, after experimenting with various open source data fabrics, npm found competing solutions couldn’t scale or demanded more operational effort and hardware than npm’s small but talented team could spare.
OmniSci delivered millisecond lag on multi-billion row datasets with a single server. As a result, npm is able to deliver against their varied objectives: superior performance, less administration, and minimal server and infrastructure cost.