This document discusses distributed file systems and some of their key design considerations. It covers issues like naming and transparency in distributed file systems, different approaches to naming like absolute vs relative names, caching strategies like write-back vs write-through, and consistency models. It also provides examples of different distributed file systems like NFS, AFS, and Sprite and discusses some of their approaches.
BNI 10 Minute Presentation from Supply My SchoolDavid du Plessis
A quick overview of the services we provide, the clients we are looking for and the products we have on offer. Supply My School offers a service for an A-Z product offering to the education sector.
O Melhor do Direito:Material de Assimilação - Lei 4.717omelhordodireito
O Melhor do Direito disponibiliza a Lei 4.717. Esse material está disponível para impressão e tem a finalidade de auxiliar nos estudos para concurso, podendo ser utilizado em sala de aula, estudo individual, em grupo, ou em qualquer situação escolhida pelo aluno.
Não esqueça de compartilhar com seus amigos e colegas. Visite também nossa página no Facebook e canal no Youtube:
www.facebook.com/omelhordodireito
www.youtube.com/omelhordodireito
Esperamos que esse material seja útil. Aproveite e bom estudo.
Slides I used for my "Energy Efficiency First" presentation on 1/11/12 at the DuPage Environmental Summit which featured Small Scale Renewable Energy Systems.
Coerced Cache Eviction: Dealing with Misbehaving Disks through Discreet-Mode ...vchidambaram
"Coerced Cache Eviction: Dealing with Misbehaving Disks through Discreet-Mode Journaling", presented at DSN 2011. For more details check out http://pages.cs.wisc.edu/~vijayc/cce.htm
Wes Leonardo - Putting AIR into your Application360|Conferences
The session will cover the unique aspects of taking your applications to the next level with AIR. The session will cover using the SQL Lite database, detecting online/offine, customize the skin of the application and working with the local file system. If you are just getting started and want a great primer to AIR, this is the session for you.
BNI 10 Minute Presentation from Supply My SchoolDavid du Plessis
A quick overview of the services we provide, the clients we are looking for and the products we have on offer. Supply My School offers a service for an A-Z product offering to the education sector.
O Melhor do Direito:Material de Assimilação - Lei 4.717omelhordodireito
O Melhor do Direito disponibiliza a Lei 4.717. Esse material está disponível para impressão e tem a finalidade de auxiliar nos estudos para concurso, podendo ser utilizado em sala de aula, estudo individual, em grupo, ou em qualquer situação escolhida pelo aluno.
Não esqueça de compartilhar com seus amigos e colegas. Visite também nossa página no Facebook e canal no Youtube:
www.facebook.com/omelhordodireito
www.youtube.com/omelhordodireito
Esperamos que esse material seja útil. Aproveite e bom estudo.
Slides I used for my "Energy Efficiency First" presentation on 1/11/12 at the DuPage Environmental Summit which featured Small Scale Renewable Energy Systems.
Coerced Cache Eviction: Dealing with Misbehaving Disks through Discreet-Mode ...vchidambaram
"Coerced Cache Eviction: Dealing with Misbehaving Disks through Discreet-Mode Journaling", presented at DSN 2011. For more details check out http://pages.cs.wisc.edu/~vijayc/cce.htm
Wes Leonardo - Putting AIR into your Application360|Conferences
The session will cover the unique aspects of taking your applications to the next level with AIR. The session will cover using the SQL Lite database, detecting online/offine, customize the skin of the application and working with the local file system. If you are just getting started and want a great primer to AIR, this is the session for you.
The Layer Cloning File System (LCFS) has been created to encourage increased innovation in a fundamental technology that boots all containers, improving the speed of downloading, booting, tearing-down, and building containers.
Slides that accompanied a three-hour crash training course on sysadmin survival skills useful for sysadmins of Evergreen open source library software. Session led by Don McMorris, Equinox Software.
Lowest Storage Cost per Desktop with NetApp without any TradeoffsNetApp
Are you looking for a complete storage solution to meet the data needs of virtual desktop OS, Apps, Profiles and User Data? This session will provide an overview of how the NetApp solution can help you achieve lowest storage cost per desktop without any performance impact. Key storage considerations around virtual desktop OS, Apps, Profiles, and User data will also be discussed.
Manas Tungare, Pardha S. Pyla, Miten Sampat, Manuel Pérez-Quiñones; Syncables: A Framework to Support Seamless Data Migration Across Multiple Platforms; Proceedings of the IEEE International Conference on Portable Information Devices (IEEE Portable) 2007.
EMC World 2016 - code.15 Better Together: Scale-Out Databases on Scale-Out St...{code}
The introduction of scale-out persistent applications, such as databases, have changed the requirements on infrastructure. A common design pattern is to focus on local direct attached storage to satisfy storage needs. There is opportunity to transform and build a complimentary strategy for your scale-out applications with storage. Learn how to run these applications in new ways and see the possibilities that emerge.
Integrating Apple Macs Using Novell TechnologiesNovell
Apple Macs continue to increase in popularity and make up an increasingly large percentage of enterprise desktops. In this session, we'll explore the various Novell products and technologies that can be used to integrate Macs into your environment. You'll leave with a clear understanding of the issues involved and the options available to support the Mac user community in a Novell environment. You'll also have a chance to discuss suggestions for improving on this support.
Similar to Operating Systems - Advanced File Systems (20)
Doppio: Breaking the Browser Language BarrierEmery Berger
Web browsers have become a de facto universal operating system, and JavaScript its instruction set. Unfortunately, running other languages in the browser is not generally possible. Translation to JavaScript is not enough because browsers are a hostile environment for other languages. Previous approaches are either non-portable or require extensive modifications for programs to work in a browser.
This talk presents Doppio, a JavaScript-based runtime system that makes it possible to run unaltered applications written in general- purpose languages directly inside the browser. Doppio provides a wide range of runtime services, including a file system that enables local and external (cloud-based) storage, an unmanaged heap, sockets, blocking I/O, and multiple threads. We demonstrate Doppio's usefulness with two case studies: we extend Emscripten with Doppio, letting it run an unmodified C++ application in the browser with full functionality, and present DoppioJVM, an interpreter that runs unmodified JVM programs directly in the browser. While substantially slower than a native JVM, DoppioJVM makes it feasible to directly reuse existing, non compute-intensive code.
Dthreads is an efficient deterministic multithreading system for unmodified C/C++ applications that replaces the pthreads library. Dthreads enforces determinism in the face of data races and deadlocks. It is easy to use: just link your program with -ldthread instead of -lpthread.
Dthreads can be downloaded from its source code repo on GitHub (https://github.com/plasma-umass/dthreads). A technical paper describing Dthreads appeared at SOSP 2012 (https://github.com/plasma-umass/dthreads/blob/master/doc/dthreads-sosp11.pdf?raw=true).
Multithreaded programming is notoriously difficult to get right. A key problem is non-determinism, which complicates debugging, testing, and reproducing errors. One way to simplify multithreaded programming is to enforce deterministic execution, but current deterministic systems for C/C++ are incomplete or impractical. These systems require program modification, do not ensure determinism in the presence of data races, do not work with general-purpose multithreaded programs, or run up to 8.4× slower than pthreads.
This talk presents Dthreads, an efficient deterministic multithreading system for unmodified C/C++ applications that replaces the pthreads library. Dthreads enforces determinism in the face of data races and deadlocks. Dthreads works by exploding multithreaded applications into multiple processes, with private, copy-on-write mappings to shared memory. It uses standard virtual memory protection to track writes, and deterministically orders updates by each thread. By separating updates from different threads, Dthreads has the additional benefit of eliminating false sharing. Experimental results show that Dthreads substantially outperforms a state-of-the-art deterministic runtime system, and for a majority of the benchmarks we evaluated, matches and occasionally exceeds the performance of pthreads.
Humans can perform many tasks with ease that remain difficult or impossible for computers. Crowdsourcing platforms like Amazon's Mechanical Turk make it possible to harness human-based computational power on an unprecedented scale. However, their utility as a general-purpose computational platform remains limited. The lack of complete automation makes it difficult to orchestrate complex or interrelated tasks. Scheduling human workers to reduce latency costs real money, and jobs must be monitored and rescheduled when workers fail to complete their tasks. Furthermore, it is often difficult to predict the length of time and payment that should be budgeted for a given task. Finally, the results of human-based computations are not necessarily reliable, both because human skills and accuracy vary widely, and because workers have a financial incentive to minimize their effort.
This talk presents AutoMan, the first fully automatic crowdprogramming system. AutoMan integrates human-based computations into a standard programming language as ordinary function calls, which can be intermixed freely with traditional functions. This abstraction allows AutoMan programmers to focus on their programming logic. An AutoMan program specifies a confidence level for the overall computation and a budget. The AutoMan runtime system then transparently manages all details necessary for scheduling, pricing, and quality control. AutoMan automatically schedules human tasks for each computation until it achieves the desired confidence level; monitors, reprices, and restarts human tasks as necessary; and maximizes parallelism across human workers while staying under budget.
AutoMan is available for download at www.automan-lang.org.
Heap-based attacks depend on a combination of memory management errors and an exploitable memory allocator. Many allocators include ad hoc countermeasures against particular exploits, but their effectiveness against future exploits has been uncertain.
This paper presents the first formal treatment of the impact of allocator design on security. It analyzes a range of widely-deployed memory allocators, including those used by Windows, Linux, FreeBSD, and OpenBSD, and shows that they remain vulnerable to attack. It then presents DieHarder, a new allocator whose design was guided by this analysis. DieHarder provides the highest degree of security from heap-based attacks of any practical allocator of which we are aware, while imposing modest performance overhead. In particular, the Firefox web browser runs as fast with DieHarder as with the Linux allocator.
Quantifying the Performance of Garbage Collection vs. Explicit Memory ManagementEmery Berger
This talk answers an age-old question: is garbage collection faster/slower/the same speed as malloc/free? We introduce oracular memory management, an approach that lets us measure unaltered Java programs as if they used malloc and free. The result: a good GC can match the performance of a good allocator, but it takes 5X more space. If physical memory is tight, however, conventional garbage collectors suffer an order-of-magnitude performance penalty.
Introduces bookmarking collection, a GC algorithm that works with the virtual memory manager to eliminate paging. Just before memory is paged out, the collector "bookmarks" the targets of pointers from the pages. Using these bookmarks, BC can perform full garbage collections without loading the pages back from disk. By performing in-memory garbage collections, BC can speed up Java programs by orders of magnitude (up to 41X).
DieHard: Probabilistic Memory Safety for Unsafe LanguagesEmery Berger
DieHard uses randomization and replication to transparently make C and C++ programs tolerate a wide range of errors, including buffer overflows and dangling pointers. Instead of crashing or running amok, DieHard lets programs continue to run correctly in the face of memory errors with high probability. Using DieHard also makes programs highly resistant to heap-based hacker attacks. Downloadable at www.diehard-software.org.
Exterminator: Automatically Correcting Memory Errors with High ProbabilityEmery Berger
Exterminator automatically corrects heap-based memory errors without programmer intervention. It exploits randomization and replication (or multiple users) to pinpoint errors with high precision. From this information, Exterminator derives runtime patches that fix these errors in current and subsequent executions.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Let's dive deeper into the world of ODC! Ricardo Alves (OutSystems) will join us to tell all about the new Data Fabric. After that, Sezen de Bruijn (OutSystems) will get into the details on how to best design a sturdy architecture within ODC.
1. Operating Systems
CMPSCI 377
Distributed File Systems
Emery Berger
University of Massachusetts Amherst
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science
2. Distributed File Systems
Numerous drawbacks of local file systems:
Inconvenient
Administrative overhead
Single point-of-failure
Solution: distributed file systems
FS appears to be local, but data is remote
Two major implementations:
Windows
NFS (Sun’s Network File System)
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 2
3. Complications
Distributed file systems add complexity
& many design tradeoffs
Naming – absolute vs. relative (to server)
Remote access vs. caching
Stateless or stateful server
Single image or replication
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 3
4. Naming & Transparency
Issues
How are files named?
Do filenames reveal location?
Do filenames change if file moves?
Do filenames change if user moves?
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 4
5. Location naming
Location transparency:
filename does not reveal
physical storage location
Normal in Unix
Compare to Windows - C:foobar
Provides location independence:
no change if file’s storage location changes
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 5
6. Windows: Absolute Names
lokihomeemery
machine nameremote pathname
Advantages: Disadvantages:
Easy to find fully User must know
specified filename complete name –
local & remote
Easy to add & delete
different
new names
Location dependent
No global state
(cannot move file)
Scales easily
Makes sharing harder
Not fault-tolerant
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 6
7. NFS: Relative Names
/nfs/sting/users1/emery
Advantages: Disadvantages:
Location Admin
transparent overhead
Remote name
can change
across reboots
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 7
8. NFS: Relative Names
/courses/cs300/cs377
Implemented via mount points
one level of indirection!
Each host: local names ! remote locations
Mount table (/etc/fstab)
<remote pathname @ machine, local pathname>
% cat /etc/fstab
elsrv4:/courses /courses nfs intr,hard,rw 0 0
elsrv4:/courses/cs100_200 /courses/cs100_200 nfs intr,hard,rw 0 0
elsrv4:/courses/cs300 /courses/cs300 nfs intr,hard,rw 0 0
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 8
9. NFS Example
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 9
10. URLs Viewed as File System
Uniform Resource Locator names
increasingly standard way to access data
protocol://machine/path/to/file
Good? Bad?
Looks like Windows… same?
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 10
11. Distributed File Systems: Issues
Naming & transparency
Remote file access & caching
Server with state or without
Replication
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 11
12. Remote File Access & Caching
Can access files two ways
Remotely: returns results using RPC
Locally: transfer part of file = caching
Caching issues:
Performance: Where & when to cache file
blocks?
Correctness:
When to propagate updates back to remote file?
What happens when multiple clients cache same file?
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 12
13. Remote File Caching
Local disk:
Reduces access time (compared to remote)
Safe if node fails
Difficult to keep copy consistent with remote file
–
Requires client to have disk (…)
–
Local memory:
Quick
Works without disks
Difficult to keep copy consistent with remote file
–
Smaller cache size
–
Not fault-tolerant
–
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 13
14. Cache Update Policies
Write-through: always write to remote disk
Reliable
Low-performance = remote service for all writes
–
Write-back: write only to cache
Write to disk on evictions, periodic sync
Quick
Reduces network traffic (n writes to same block)
User machine crashes ) data loss
–
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 14
15. Cache Consistency
Client-initiated consistency:
client contacts server and checks consistency
every access
at given intervals
only upon opening a file
Server-initiated consistency:
server detects potential conflicts,
invalidates caches
Server needs to know:
which clients have cached which parts of which files, plus
which clients are readers & which are writers
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 15
16. Case Study: Network File System
NFS: standard for distributed UNIX file access
Designed to run on LANs
Nodes: both servers & clients
Servers have no state = no info about clients
Uses mount protocol to make global name local
/etc/exports
local names server willing to export
/etc/fstab
global names that local nodes import
global name must be in /etc/exports on server
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 16
17. NFS Implementation
Set of RPC operations for remote file access:
Directory search, reading directory entries
Manipulating links & directories
Accessing file attributes
Reading/writing files
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 17
18. NFS Implementation
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 18
19. The End
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 19
20. Global Name Space
Single name space:
Examples:
AFS (CMU’s Andrew File System)
Sprite (Berkeley)
No matter which node you are on,
filenames remain the same
Client: gets filename structure from server(s)
When users access files, server sends copies
to workstation, where they are cached
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 20
21. Global Name Space: Pros & Cons
Advantages:
Naming – consistent
Ensures all files are same regardless of where you
login
Late binding of names ) moving them is easier
Disadvantages:
Difficult for OS to keep files consistent (caching)
Global name space may limit flexibility
Performance issues
UNIVERSITY OF MASSACHUSETTS AMHERST • Department of Computer Science 21